ordinals / ord

👁‍🗨 Rare and exotic sats
https://ordinals.com
Creative Commons Zero v1.0 Universal
3.83k stars 1.36k forks source link

Indexing stuck when laptop goes to sleep #3073

Open torkelrogstad opened 8 months ago

torkelrogstad commented 8 months ago

I'm having issues with indexing, which I believe is due to closing down my laptop while the process is still going. I'm on a M2 chip MacBook Pro.

I'm not able to interrupt the index process either, except through forcefully killing ord. This corrupts the index file, which means I have to start again...

Attaching some logs where the log level is set to trace. Right before the start of the line there's an enormous hex blob being printed, as the result of getblock. This happens at 2024-02-01T16:13:32Z, a full 90 minutes before the next line (the first line in the log below). I don't know the internals of ord, but it looks like we end up in a stuck state where we don't manage to pick up processing. As you can see I interrupt the processing with <CTRL-C>, but that does nothing. ord keeps printing idle interval checking for expired indefinitely, until I send another interrupt signal (corrupting the DB)

ord.log

so7ow commented 8 months ago

Try waiting longer after that first ctrl-c. I haven't watched the logs but I've seen it take upwards of 30-60 minutes or more to shutdown gracefully on a similar system.

raphjaph commented 8 months ago

Yeah, shutting down sometimes works instantly but often it takes really long. The CTRL-C logic can be found in src/lib.rs on line 227. If you can find some thing we are doing wrong or could be done better please let me know :)