Garbage Collection
Every 5 days the satellite will send a bloomfilter to the storage node. The storage node will use it to identify garbage pieces. In the storage node log you will notice a few delete messages but on disk the space will still be used for additional 7 days. The logging is currently missleading. First we move the pieces into a trash folder and 7 days later we delete it without any additional log messages. If something goes wrong and the satellite sends empty bloomfilters we can send a command to all storage nodes and they will automatically recover the content of the trash folder. It is better to have a disaster recovery plan even if it is unlikely to happen.
Trusted Satellite List
The storage node now gets the list of trusted satellites from https://tardigrade.io/trusted-satellites This allows us to add trusted satellites without having to deploy a new release.
Bugfix Order DB Lock
A few storage nodes had errors messages because the orderdb was locked by a long running query. After upgrading your storage node you might see the error messages one last time.
Graceful Exit
I am sorry we missed to implement one important restriction. In the terms we mentioned that graceful exit is only available for storage nodes that are at least 15 month old. Without that restriction it would be possible to game the system. A 15 month restriction is a bit too much for our early storage nodes. Most likely we will start with 6 month. Graceful exit is still disabled until we implemented this restriction.
Warning: Garbage collection is messing up the free space calculation. If your storage node is full and executes garbage collection it might accept more pieces than it has free space. At the end it will get disqualified. We are working on a fix. Please reduce your allocated size to make sure the storage node is not running into a crash. Bug is now fixed: Changelog v0.28.4 (storage node only)
I received the email today about updating to the new release. Nice instructions for the Docker folks. Absolutely no instructions for those of us running a host node on Windows and not using docker.
Does the node move or copy+delete the files to “trash” when doing garbage collection?
It does quite a lot of IO during that operation, so it appears to me that the files are copied and then deleted from the original location instead of moved.
Warning: Garbage collection is messing up the free space calculation. If your storage node is full and executes garbage collection it might accept more pieces than it has free space. At the end it will get disqualified. We are working on a fix. Please reduce your allocated size to make sure the storage node is not running into a crash.
This warning should have gone out as an email blast to all SNOs, since it has ability to crash the nodes. I would expect critical information like that to be communicated directly.