Zcashd 3.10 crashed - pcoinsTip fail & checksum mismatch

My zcasd 3.10 keeps crashing with fatal errors and fails to sync up. I’ve gotten all kinds of strange errors in the terminal and in the debug log. Here I’ll highlight the latest one because I recently increased the RAM and I don’t want to misattribute errors.

Previously I had some database errors and related crashes. I guess that was what prompted zcashd to reindex the database. When I launched it (without any flags), it reindexed ~20 GB of data, which suspiciously covered only the first 80,000 blocks. Then it continued from there with downloading blocks. A few minutes later it crashed with this terminal message:

- Error: Error: A fatal internal error occurred, see debug.log for details

[Press Ctrl+C to exit] [Set 'showmetrics=0' to hide]
zcashd: validationinterface.cpp:141: void ThreadNotifyWallets(CBlockIndex*): Assertion `pcoinsTip->GetSproutAnchorAt(pindex->hashSproutAnchor, oldSproutTree)' failed.
Aborted (core dumped)

The end of the debug log had only this to say:

Corruption: block checksum mismatch
*** System error while flushing: Database corrupted
ERROR: ProcessNewBlock: ActivateBestChain failed

Any ideas what should I do?

If it helps, I’ve had block checksum mismatch before increasing the RAM, but it was in the context of the following errors:

ERROR: ContextualCheckTransaction(): overwinter is not active yet
ERROR: AcceptToMemoryPool: ContextualCheckTransaction failed

Seen similar problems on a laptop with a dodgy hard drive… maybe that?

What do you mean by “dodgy”? Does a virtual machine count as dodgy? Other than that, my (physical) hard drive is pretty standard and has been working excellently even under greater duress.

And, if you understand the error messages (because I don’t), could you explain how they relate to the hard drive?

The problems I saw were on an old laptop with a hard drive that was showing signs of failure - /var/log/syslog had many bad sector errors.

I imagine (which means I don’t know for sure!) - that a failed read or otherwise corrupt data would trigger these errors.

Thanks. This hard drive is only a few years old and both my experience and diagnostic software shows that it’s in a good shape. I don’t know about the VM’s hard drive, but being software-based, I don’t think that can wear off.