Can anybody help with bitcoin qt

I am having a problem with my bitcoin qt program. All of a sudden it won’t load the blocks and apparently something to do with “dep” which cannot be disabled for qt. It says I have a choice of aborting or re-building blocks - I’ve aborted twice and don’t know whether to re-build the blocks? Any clue what to do or what has happened?
Thanks

I googled for “don’t know whether to rebuild the blocks bitcoin” (without the quotation marks) and all top results seemed valid.
Delete & download the blockchain again.

I’ve no clue what “dep” is. Maybe your OS was updated and broke Bitcoin-Qt.
Maybe instead of writing essays you can post the actual error message (if you can’t find a solution on Google).

1 Like

Thanks Janitor. :smiley:

1 Like

bitcoin-qt -reindex
might be faster… I would expect that to retain and check the blocks it’s already got rather than redownloading them.

Last Friday, one of the core devs merged a way to have only 1.3GB… see https://twitter.com/pwuille/status/591527686117466113

3 Likes

Interesting but I don’t see the point of it as it is wallet-less, because there’s no point in ordinary folk trying to mine, so what purpose is this without a wallet?!

The point is simple: it can do everything else.
Many bitcoin production nodes run without wallet support built in.

Sure, for mining, but unless “everything else” includes something useful to ordinary folk, what value is a lightweight node: to whom, and for what? I don’t understand.

Perhaps the difference is that those wallets can still give confirmations…
Also many of the current user base may like what they are used to. A next step might be an optional total blockchain size stored locally; and potentially those could become random blocks but limited size overall… so useful but smaller and faster when reindexes are needed.

A user with a h/w or offline wallet should want to run a walletless instance of Bitcoin Core.

Are you sure this is what that means? All a wallet is, is a list of public and private keys.

The only reason to make this wallet-less would seem to be because it can’t handle a wallet. If it can, why remove this very useful piece of functionality?

Walletless (no wallet support) means it has no wallet functionality, i.e. it can’t interface with the wallet.dat file, but it doesn’t mean it’s useless.
For example it can broadcast signed transactions, which you can prepare offline.

1 Like

If so, why remove the wallet functionality?

I’m not contradicting you, but I don’t understand why they would remove the most widely used feature, if it can still do these things.

It’s it just that it can’t display balances then? In which case, it could “interface” with the wallet file but not show balances. Seems an odd choice to me.

Well I haven’t designed the feature but it was asked for by enough people otherwise those options such as -disablewallet wouldn’t exist.
My guesses:

  • Much faster build time
  • Occupies less space (good for small devices that run off SD card or USB stick)
  • Reduced use of RAM while running
  • Unnecessary for people who use other (including cold) wallets
  • Makes it difficult to attach wallet.dat files (if found on the system) to Bitcoin Core (if Bitcoin Core was built without the wallet option)
    There may be more…

I admire your attempts to answer, but none of those address the point I’m asking about: what are the functions this can be used for, and who will use them?

Why know it reduces the storage considerably, and for some reason it’s wallet-less. What I don’t understand is what this is useful for and by whom.

You’ve said it can handle paper wallets, hardware wallets, but not why it has had its own wallet removed. If it could handle a wallet, why remove it? - so I’m not convinced that you are not just speculating, in which case it rather you had made that clear, or just not answered.

All this back and forth seems not to have clarified anything.

I have been using BitcoinQt for some time on windows but was finding that it was taking up the majority of space on my C: drive. I repointed the appdata directory to another drive and so that has solved that problem. In the meantime, though, I was buying Maidsafe and my system was bogging down so I decided to send all the BTC in my BitcoinQtwallet to an online wallet and continue to trade them for Maid through Shapeshift.
I made a silly error, in that I transferred the wallet balance, forgetting about holding enough back for the tx fee. The transaction was never processed on the network because of a lack of fees, however the wallet recorded the transaction and reduced my balance. Sorry if this is a super noob question, but does anyone know how I can recover these BTC? I presume I will probably have to edit the wallet.dat file to delete the unconfirmed transaction somehow, but just not sure how to do it.

  • You can’t edit wallet.dat. If that was possible and mattered everyone would have 12 million BTC.
  • What your wallet recorded is irrelevant. If the transaction didn’t happen then it didn’t happen.

Backup wallet.dat, to a safe place, then start bitcoin-qt and retrieve your private key(s). Then once you have the private key(s) you can access whatever is at the addresses from your wallet, either after your Bitcoin catches up or from some other wallet by “importing” these coins via the private key(s).

2 Likes

Thank you @janitor for taking the time to try to point me in the right direction.
I have resolved the issue now and have access to the BTC that previously seemed to be unavailable.
I will detail how I recovered them just in case someone else, with an equal lack of expertise to myself, finds themselves in a similar position.
Prior to asking the question on this forum I had tried several suggestions that were offered on the net regarding the problem including:

  • replacing wallet.dat with an earlier version (before the date of the transaction that was unconfirmed) and rescanning - no luck

  • leaving only the wallet.dat file in the bitcoin appdata directory and reloading the entire blockchain - no luck

  • downloading and installing python, twisted and zope in an attempt to utilize the pywallet.py tool to accomplish the task. For someone that actually knows what they are doing, this might work, but with my level of skill, I just got bogged down in the process and abandoned it.

After the suggestion to retrieve the private keys, I did that, created a new wallet and swept all the private keys into the new wallet. This showed a small bit of success, but only a very small portion of the BTC was transferred.

At this point, trying to research the issue further, I came across the “bitcoind -zapwallettxes” command. It was not available in the version that I was running, so I did an upgrade to the latest version (v0.12.0) , ran the command and “voila”, everything was back where it was supposed to be.

This option is not available in the graphic interface, but needs to be run in bitcoind from the command line.
I am using Windows so “bitcoind -zapwallettxes” needed to be run in a command window in the C:\Program Files\Bitcoin\daemon directory. It takes quite a while to rescan the whole blockchain and the daemon does not stop automatically - you will just see a blinking cursor in the command window. When it is done you need to run “bitcoin-cli stop” in another command window to exit the task. I ran it once, before the process was finished and it didn’t cause a problem, just returned an error message “rescanning”. I think I waited about 1/2 an hour, ran it again and it exitted. I started my Bitcoin Core wallet up and was thrilled to see everything as it should be.
This tool works very slick!
I hope this is helpful to anyone who finds themselves in the same situation.

1 Like