EDIT: 12 core CPU, 16Gb RAM, its a reasonable spec machine.
Restarting zcashd & it resumed rescan from where it died (instead of starting from scratch)
I suspect it segfaulted when it completed scanning all previously downloaded blocks - its at the approx height of its last sync & after restart it immediately started fetching new blocks.
I have been experiencing something similar on my laptop with v5.2.0. What’s odd is that we had no issues on the ZGo server, v5.2.0 was just upgrade and restart zcashd and everything worked.
After having a bunch of Seg Faults, I decided to replicate the exact config from the server on the laptop, Now the node has been downloading the new blocks and once it got past block 1730000 (the chunky blocks), from time to time the system kills zcashd with an out-of-memory error.
It does make progress in the download and indexing with every restart, I’m hoping to catch up soon.
This sounds like it could be your issue or related:
If you have any other details such as machine config (cpu, memory, disk) that would be helpful.
Since the increase in shielded transactions the blockchain is significantly larger requiring more disk space to store as well as memory to sync / scan due to the size of blocks.
For reference I encountered this issue but was able to side step it by the following:
My old wallet.dat was unable to sync with my laptop (Latest Ubuntu, 16GB Ram). Something happens with zcashd causing it to suck all memory until it crashes. I dont have the exact message but using dmesg it was for sure zcashd. So I started a new node and it was able to sync (Empty wallet). Afterwords I imported all my private keys and it -rescan successfully. Note: I didn’t have any funds in any UA’s at the time so I could do this. If you have funds in any UA, you’ll need to wait for to coming seed phrase import tool.
It completed the ‘rescanning’ and is now catching up with the network, currently four days behind.
EDIT: Once the ‘Rescanning’ was complete I was able to get a list of all addresses & the keys with z_exportkey, so at least if it all goes to hell I can recover the funds. There were nine sapling keys, which is eight-too-many in current conditions.
Machine has 4.1Gb of memory in use, approx 23.8% of total is zcashd.
Fingers crossed.
EDIT: Memory in use is now 6.4Gb, at block 1767337
EDIT: Memory in use 8.24Gb, at block 1768319
EDIT: Memory 10.2Gb at block 1769410
EDIT: Memory 12.2Gb, block 1770902
Yep, that’s the way it is, you have to wait for the rescan to complete.
I think a tool to extract the keys from wallet.dat would be useful, there must be nodes out there with too many keys or on slow hardware that are now impossible to sync or rescan within reasonable time.
Sorry for my English. But = )) I said that Wallet crashes first time. All next launcher require rescan just for one(1 =)) block. And then it crashes. It seems like it crashes directly when rescan is finished. Thus it is impossible to finish rescan
2022-08-10T08:17:45.562280Z INFO Init: main: init message: Rescanning...
2022-08-10T08:17:45.562287Z INFO Init: main: CWallet::InitLoadWallet(): Rescanning last 1 blocks (from block 1733601)...
2022-08-10T08:17:45.562292Z INFO Init: main: CWallet::ScanForWalletTransactions(): Rewinding Orchard wallet to height 1733600; current is 1733601
2022-08-10T08:20:53.671067Z INFO Init: main: Still rescanning. At block 1733602. Progress=0.979533
What version of rust are you using? My clean node (all v5.2) is on rustc 1.25 (synced, no problems) and I’m catching one up now with a few addys on 1.62 so Ill letya know
Oh wait zcashd installs rust so that version may be different… Nevermind!