Erratic Start 9 Services

My Start 9 running Knots had been running flawlessly for several months.
I noticed that the host mini-pc fan started spinning up often…it never did that before other than the initial blockchain download.

For some reason Knots Mempool, and Electrs are continually syncing / restarting? And in the process drawing many resources I guess hence the fan coming on.

In the graphic above…each time Knots and Electrs goes into this “starting…” mode the fan really winds up on the mini-pc

Everything is updated and I have tried several reboots…same problems.

This never used to happen.

Have any ideas or suggestions?
Thanks

Can you check the logs for knots? Let me know if you see something similar to this:

Error initializing block database.
Please restart with -reindex or -reindex-chainstate to recover.
[error] Aborted block database rebuild. Exiting.
Error initializing block database.
Please restart with -reindex or -reindex-chainstate to recover.

That specific error or something similar is not present.
I do have many errors in the log that look like this:

progress=0.999697 cache=99.5MiB(718372txo) warning='Miner violated version bit protocol'
2025-05-21T18:50:21-04:00  2025-05-21T22:50:21Z LevelDB read failure: Corruption: block checksum mismatch: /root/.bitcoin/chainstate/042204.ldb
2025-05-21T18:50:21-04:00  2025-05-21T22:50:21Z Fatal LevelDB error: Corruption: block checksum mismatch: /root/.bitcoin/chainstate/042204.ldb
2025-05-21T18:50:21-04:00  2025-05-21T22:50:21Z You can use -debug=leveldb to get more complete diagnostic messages
2025-05-21T18:50:21-04:00  2025-05-21T22:50:21Z [error] Error reading from database, shutting down.
2025-05-21T18:50:21-04:00  Error: Error reading from database, shutting down.
2025-05-21T18:50:21-04:00  2025-05-21T22:50:21Z [error] Error reading from database: Fatal LevelDB error: Corruption: block checksum mismatch: /root/.bitcoin/chainstate/042204.ldb
2025-05-21T18:50:21-04:00  PROCESS TERMINATED BY SIGABRT
2025-05-21T18:50:37-04:00  Error updating blockchain info: error: timeout on transient error: Could not connect to the server 127.0.0.1:8332
2025-05-21T18:50:37-04:00  
2025-05-21T18:50:37-04:00  Make sure the bitcoind server is running and that you are connecting to the correct RPC port.
2025-05-21T18:50:37-04:00  Use "bitcoin-cli -help" for more info.
2025-05-21T18:50:37-04:00  
2025-05-21T18:50:37-04:00  Error updating network info: error: timeout on transient error: Could not connect to the server 127.0.0.1:8332
2025-05-21T18:50:37-04:00  
2025-05-21T18:50:37-04:00  Make sure the bitcoind server is running and that you are connecting to the correct RPC port.
2025-05-21T18:50:37-04:00  Use "bitcoin-cli -help" for more info.

Corrupt blockchain is a similar problem. These types of errors typically happen when there is a power outage or surge, or if you hard restart or power off while it is in the process of writing a new block.

It is also possible that there is a hardware issue with your SSD, but the other cause is way more common (you would be the fifth person who reported it to me).

In case you are worried, this is not an issue specific to Knots (two of the reports were for Core), nor is specific to Start9 (one report was for bitcoin-qt on Linux).

The cleanest way to recover is to shut down all your services that depend on Knots. Then uninstall Knots. Then go to the Community Registry and install it again. Configure and start it, and wait for it to reconstruct the blockchain.

Once Knots if fully synced, start turning back on the services. They will each fail the first startup, so stop them again, click on Config and click Save. Then they will start back up fine.

I’ll be publishing a video showing some experiments with battery backup, which is probably the best way to prevent this from happening.

Thanks Paul.

I did have a few sudden outages that shut off the mini-pc with no clean shutdown.
If I uninstall Knots, does that mean I have to download the entire blockchain again?
(I hope not )

Yes, unfortunately, re-syncing is the only way to recover from corrupt blockchain data. There is a way to copy it to another drive (before corruption happens) and then copy it back in the case of data corruption (faster than re-syncing on most systems), but other than that, it’s back to the genesis block.

I was afraid of that. Last time I synced I got a warning from my ISP claiming I had used up 90% of my download data. Isn’t there a way of getting a pruned version if I do start clean?

Also noting: Because I am running Start 9 on a 1Gb Nmve drive the drive is at 91.7% capacity.
Not sure if this is contributing to the issues.

I think you can give it a block height that you trust, which maybe you can combine with pruning to reduce the data size you have to download. You wouldn’t be able to mine though (that requires a full node)