neofs-node
neofs-node copied to clipboard
Revise write-cache role, functionality, etc
It's an epic now, let's solve it
- https://github.com/nspcc-dev/neofs-node/issues/3076
- https://github.com/nspcc-dev/neofs-node/issues/3077
- https://github.com/nspcc-dev/neofs-node/issues/1754
- https://github.com/nspcc-dev/neofs-node/issues/1501
- https://github.com/nspcc-dev/neofs-node/issues/1150
- https://github.com/nspcc-dev/neofs-node/issues/1528
- https://github.com/nspcc-dev/neofs-node/issues/1822
- https://github.com/nspcc-dev/neofs-node/issues/3099
- https://github.com/nspcc-dev/neofs-node/issues/3100
- https://github.com/nspcc-dev/neofs-node/issues/3101
Original issue
There is no strict theory (or, at least, i do not know such) that describes how it should work, what problems it should solve, etc.
At least:
- it has strange limits for the object it has (its capacity divided by the avarage object it can store);
- the only way to clean up space for WC is to exceed its object number;
- it is not "write" cache but a "read-write" cache (see the prev point), which means it is always filled with something even if there is no load at all (although e.g. it can try to flush objects to the blobstor to be prepared for the new load peak instead);
- it has some interfaces that are not used at all;
- its initialization may take incredible time because of iterating every object it stores.