Slow blockchain download

Do you know zcashd hangs? After more than a day it was able to download only 59% of blocks. I had to restart it few times already because after some time it just stops doing anything (except working timer) without providing me with any explanation. With ZecWallet situation is even worse because it forces user to deal with embedded zcashd restarting it with parameters as if it can not handle this itself.
This is the first time I use official wallet to which you spend tons of efforts and time. And I’m shocked. I thought that ZCash has no adequate Windows and Mobile wallets because you want to focus efforts on one but super-duper stable and reliable wallet for linux. But now I see that this zcashd and ZecWallet is just some trash. At least it looks this way.
I can record video of how it looks when zcashd hangs next time but I’m sure you can imagine this. Animation in console and timer works, but except for this nothing happens. It shows 8 connections but just doing nothing. Had to restart it to continue downloading blocks.

Don’t take it as an offence. But I’m really shocked. Just now I’ve noticed another ridiculous thing!!! Look at the processor consumption!! Your zcashd wallet slows my system a lot!
It’s very high processor consumption for just some shitty console wallet which is now doing nothing but downloading! I’m not mining you know! I just wanted to install wallet to use it, but it is not usable at all. How should normal user react to this? After few years of development you still hadn’t provide us with handy reliable wallet even for one platform! Do you guys have no shame at all?
The only way for me now is to use some online thing like cryptonator. But I want to keep keys from my accounts myself!

This is off topic

Downloading the chain is computationally intensive you need more 6GB RAM or better for speed, 4GB RAM is gonna take a week

1 Like

Split out this into a new thread so the original post could stay on topic.

3 Likes

From what i see (the video he posted in the other topic) he uses the following:

  • 8 GB RAM out of 64 GB his system has
  • 4 threads out of 12 the I7-8700k CPU has

I use the exact same configuration, I7-8700k with 64GB RAM and it’s a strong CPU and even he uses only 8GB RAM for this task it should be enough in my opinion, not?

1 Like

Question: How many zaddrs are there in your wallet?

Each address requires a blockchain scan when you load the wallet, 10 addresses = 10 scans.

You only need one zaddr.

I’m not sure I understand your question. It’s a fresh install of latest version of ZecWallet. Out of the box ubuntu on VM. BTW disk is also fast SSD. But in Ubuntu I have enabled encryption of FS. But I think it should not affect to much because other apps work fine.
2019-05-08%2016_32_44-personal%20%5BRunning%5D%20-%20Oracle%20VM%20VirtualBox

So fast reaction. That I’m now ashamed of badmouthing devs. I’m ready to provide any additional info or files. I hope next versions would be better because from my POV this is not a small matter.

I know your pain, slow blockchain download is inherited flaw from Bitcoin. I know you are suppose to open more ports or something like that for faster download, or else you only download from 8 peers.

It’s not just slow. It does not work.
I’ve used BTC wallet before and even ZEC wallet (for windows), so I know what I’m stating - it does not work at all. Yesterday I installed ZecWallet and it started downloading blocks. Process was slow but steady. But later I’ve seen a message saying I need to restart zcashd manually with some cmd line argument to reindex of smth like that. I did it and as a result wallet downloaded over 60% of blocks. But zcashd hanged few times while doing it - just like it did on my video - just “working” but doing nothing.
So problem is not speed and even not a CPU consumption, but this strange behaviour when wallet does nothing without any explanation to user.

1 Like

I will download the full wallet now on windows and test it, to see if it works.

Can you check /var/log/syslog , just to make sure your system is healthy? Errors relating to memory or disk.

Edit: Noticed on your screenshot it stuck at block 320629, pretty sure this is where the very large blocks appear.

One point to note is that currently, signatures of old (before the last checkpoint) transactions are skipped, but proof verification is not. So when syncing a new full node (which ZecWallet uses internally) from scratch, all past proofs are verified, which is the likely cause of that high CPU usage. Once the node is fully-synced, the CPU usage would be significantly less.

2 Likes

LOGS and video of how zcashd connects to some peers but does not download blocks.
In archive syslog before running ZecWallet and after it stopped + debug log from wallet.
Hope this will be helpful.


ZecWallet developer here. Thanks for posting your logs. I’m looking through your debug.log, and there are some issues.

2019-05-08 10:11:50 ERROR: CScriptCheck(): 7ad23a074f7abf0c1460b6eae4725cffd7ed7d811672d45a41fec3f0a6508d7c:235 VerifySignature failed: Script failed an OP_EQUALVERIFY operation
2019-05-08 10:11:50 Misbehaving: 104.236.180.231:8233 (0 -> 100) BAN THRESHOLD EXCEEDED
2019-05-08 10:11:50 InvalidChainFound: invalid block=000000000053b9652ff9a2ed49836048751c8394efb8d7d08116bd10db0c3966  height=329094  log2_work=53.381626  date=2018-05-24 23:15:07
2019-05-08 10:11:50 InvalidChainFound:  current best=000000000bfff5c393b7609db121a636d835c9daa639ab0c2e7d47eb7f3c5b51  height=329093  log2_work=53.381619  date=2018-05-24 23:13:16
2019-05-08 10:11:50 ERROR: ConnectTip(): ConnectBlock 000000000053b9652ff9a2ed49836048751c8394efb8d7d08116bd10db0c3966 failed

This is where your node is getting stuck, and it looks like it’s not accepting block 329094, because a script check is failing.

More specifically, this Tx is failing to validate:

https://explorer.zcha.in/transactions/7ad23a074f7abf0c1460b6eae4725cffd7ed7d811672d45a41fec3f0a6508d7c

Since the block explorers show this Tx fine, this is most likely a corruption on your computer, either on the stored disk or on memory. Are you sure your memory and/or disk is working correctly?

If you’re confident your system is stable, you might try deleting the entire ~/.zcash folder (backup your wallet first if you have ZEC in it) and then syncing again.

BTW, the best way to debug these is to follow the debug.log on your system
tail -f ~/.zcash/debug.log

4 Likes

Just out of curiousity, if this is indeed the problem, shouldn’t this be solved with a re-scan or re-index automaticly? Or could it be done if it’s currently not possible.

I see such problems as a huge problem for the average joe user that might even not possible to find the debug or log files.

1 Like

Sounds to me like a dying hard drive, re-indexing/re-scanning wont fix a corrupted block.

If the drive is dying I’d save the wallet.dat while you still can, fix the hardware and start again.

1 Like

wouldn’t be getprivkey command better than just saving the wallet.dat file? Or at least additionally have the results from getprivatekey backupd just in case the wallet.dat file is corroputed/damaged as well?

Your hard drive may be dying and you’re upset, I get it.

Insulting those who are trying to help you is not a good plan. Good luck & I hope you figure out how to fix it.

Hard drive is new and shiny. But I can check it if you think it’s damaged.