frostfs-node/pkg/local_object_storage/engine
Leonard Lyubich a2c2241356 [#379] storage engine: Inhume object in one shard
In previous implementation StorageEngine.Inhume operation forced Shard
.Inhume call on all internal shards. There is a need to inhume object in a
single shard. To achieve this, Inhume operation is performed in next steps:

 1. iterate over sorted shards, check object presence through Exists call;
 2. if object exists at any shard in step 1 => inhume it and return on
    success;
 3. if no shards contain the object => iterate over sorted shards again and
    try to inhume the object at first possible shard;
 4. if all Inhume calls are failed => return an error.

Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2021-02-15 18:58:18 +03:00
..
container.go [#337] engine: Add container listing for both engine and shard 2021-01-29 11:04:30 +03:00
control.go [#323] storage/engine: Fix message of the error returned by Open method 2021-01-18 18:53:39 +03:00
delete.go [#230] engine: Rename WithAddress to WithAddresses for delete operations 2020-12-11 17:19:37 +03:00
engine.go [#176] localstore: Draft storage engine structure and ops 2020-12-11 17:19:37 +03:00
exists.go [#222] Add Exists method in storage engine 2020-12-11 17:19:37 +03:00
get.go [#230] engine: Stop on first SplitInfoError in Get method 2020-12-11 17:19:37 +03:00
head.go [#235] services/object: Implement new GetRange algorithm 2020-12-11 17:19:37 +03:00
info.go [#189] localstorage: Implement DumpInfo method 2020-12-11 17:19:37 +03:00
inhume.go [#379] storage engine: Inhume object in one shard 2021-02-15 18:58:18 +03:00
put.go [#222] Add Exists method in storage engine 2020-12-11 17:19:37 +03:00
range.go [#235] engine: Return OutOfBounds error 2020-12-11 17:19:37 +03:00
select.go [#242] engine: Do not iterate over shards if cid is not set 2020-12-11 17:19:37 +03:00
shards.go [#222] Update Put method in storage engine 2020-12-11 17:19:37 +03:00