Node offline due to very-slow DB repair, could use suggestions


I have a Storj node running on my unRAID system at home. Earlier this week I checked on it, and saw 0 activity for the month… looked in the logs, it said a database was corrupted.

I did find how to repair this, and I ran sqlite3 commands to export the offending database file (bandwidth.db) to a SQL script and grep commands to modify it. However on the last bit where I regenerate the DB from the modified script, it seems to be going at about 20MB per second. The copy from before modifying is over 2GB… I have run fstrim manually on the SSDs where it should be writing the file, that seems to have had no effect. I stopped it and moved the drives from my SAS card to my motherboard’s SATA, that hasn’t impacted speed. To my knowledge nothing else is copying slowly, resource usage is very low and only the SQLite command appears to be doing much, even so it’s only doing it at around 20MB per second.

So I have some questions:

  1. Is it an option that I can recreate the database on my desktop PC and move them over or will that cause issues? I had assumed it would…
  2. What can be impacting the speed of SQLite? The main array has about 20TB free, the SSD pool it’s writing to has almost 2TB free, the system has 64GB of RAM. Is SQLite just slow or could Docker be preventing it from utilizing the resources it needs?
  3. Am I correct in assuming the rebuilt database should be about the same size as the original?
  4. If this is going to really take days then I’m not sure what I can do. Will I need to contact someone to ensure I don’t get deactivated?

Thanks in advance!

  • Scott

Note that deleting databases will delete the history of the data.

Thank you, I think this may be set now. The UI isn’t showing bandwidth right now, but it shows other stats and I don’t see the database corruption message in the log. Hopefully in the morning I’ll see bandwidth numbers in the graph.

Thanks! This is running normally now