No. I guess I have to explain that part a bit more in detail.
Hashtable needs 0 bytes of memory but it writes 128 bytes of metadata per piece.
Memtable needs 18 bytes of memory but it cuts the metadata in halve so 64 bytes of metadata. You can store that metadata on HDD or SSD. This translate into 1 GiB of memory per 10 TiB of space for memtable. Always regardless of where you store the 64 bytes of metadata.
A 100% overhead? Or do you mean your used space has doubled?
real space on disk is OK, but node show used is more.
I have 8 hashstore nodes most of them 6tk OK they are smaller. 2 bigger they node HDD are 12 and 16 TB and they both show doble from real amount.
Used space scan on startup is disabled I guess? After the migration is finished you should be able to enable it again and it should take only seconds to run.
Previously you didn’t recommend to use SSD for hashtables. I also found very intensive writes to hashtables during compaction (I guess, full rewire of hashtable while compacting each log) when tried to use SSD. Is anything changing in this behavior when memtables are used?
I deleted all db-es after migration and restarted the node. It solved it.
You could just restart the node first, wait 8 days and restart again, to be sure the startup file walker ran. See if it solves it. If not, delete the db-es.
Why 8 days? Because it seems that startup FW runs only once in 7 days.
just delete used_space_per_prefix.db
So, I assume you’re not storing the piece ID in memory at all, and instead verify it on disk?
Is there a way to configure trash threshold for the file rewrite, like rewrite only if there is more than 50% of trash?
Some of the migrated nodes are spending more than half a day almost every day rewriting the files, causing the success rates to sink, to only gain insignificant amounts of free space.
Does hashstore automaticly mean that used space will be calculated by real HDD size and usage? I mean not like old way
I got an answer from the team: