frostfs-node/pkg/local_object_storage/shard
Evgenii Stratonikov b5bcf90fa1 [#1186] engine: Read object directly from blobstor in case of conflicts
Metabase is expected to contain actual information about objects stored
in shard. If the object is present in metabase but is missing from
blobstor, peform an additional attempt to fetch it directly without
consulting metabase. Such a situation is unexpected, so error counter
is increased for the shard which has the object in the metabase. We
don't increase error counter for the shard which has the object in
blobstor, because some garbage can be expected there. In this
implementation there is no overhead for objects which are really
missing, i.e. are not present in any metabase.

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>

(cherry picked from commit 69e1e6ca20)
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-03-28 13:48:44 +03:00
..
container.go *: replace neofs-api-go with neofs-sdk-go 2021-11-12 17:29:09 +03:00
control.go [#1085] shard: Close components in reverse order 2022-01-26 15:28:13 +03:00
control_test.go *: replace neofs-api-go with neofs-sdk-go 2021-11-12 17:29:09 +03:00
delete.go [#1059] shard: Add shard mode to shard Info 2021-12-30 14:14:48 +03:00
delete_test.go [#979] Upgrade SDK NeoFS Go dependency 2021-12-01 17:31:04 +03:00
dump.go [#1085] shard: rename Evacuate to Dump 2022-01-26 15:28:13 +03:00
dump_test.go [#1085] shard: rename Evacuate to Dump 2022-01-26 15:28:13 +03:00
exists.go *: replace neofs-api-go with neofs-sdk-go 2021-11-12 17:29:09 +03:00
gc.go [#1094] shard: unify collection of expired objects 2022-01-31 12:36:40 +03:00
get.go [#1186] engine: Read object directly from blobstor in case of conflicts 2022-03-28 13:48:44 +03:00
get_test.go [#979] Upgrade SDK NeoFS Go dependency 2021-12-01 17:31:04 +03:00
head.go *: replace neofs-api-go with neofs-sdk-go 2021-11-12 17:29:09 +03:00
head_test.go [#1085] shard: dump data from write-cache 2022-01-26 15:28:13 +03:00
id.go [#189] shard: Implement DumpInfo method 2020-12-11 17:19:37 +03:00
info.go [#1059] shard: Add shard mode to shard Info 2021-12-30 14:14:48 +03:00
inhume.go [#1059] shard: Add shard mode to shard Info 2021-12-30 14:14:48 +03:00
inhume_test.go [#979] Upgrade SDK NeoFS Go dependency 2021-12-01 17:31:04 +03:00
list.go [#948] engine: Define EndOfListing error in component packages 2021-11-19 16:57:19 +03:00
list_test.go [#979] Upgrade SDK NeoFS Go dependency 2021-12-01 17:31:04 +03:00
mode.go [#1094] shard: remove TODO for shard mode description 2022-01-31 12:36:40 +03:00
move.go [#1059] shard: Add shard mode to shard Info 2021-12-30 14:14:48 +03:00
put.go [#1059] shard: Add shard mode to shard Info 2021-12-30 14:14:48 +03:00
range.go [#1186] engine: Read object directly from blobstor in case of conflicts 2022-03-28 13:48:44 +03:00
restore.go [#1085] shard: rename Evacuate to Dump 2022-01-26 15:28:13 +03:00
select.go *: replace neofs-api-go with neofs-sdk-go 2021-11-12 17:29:09 +03:00
shard.go [#1059] shard: Add shard mode to shard Info 2021-12-30 14:14:48 +03:00
shard_test.go [#1085] shard: allow to ignore errors in Evacuate 2022-01-26 15:28:13 +03:00
shutdown_test.go [#1085] shard: allow to ignore errors in Evacuate 2022-01-26 15:28:13 +03:00
weight.go [#189] shard: Extend Info with WeightValues 2020-12-11 17:19:37 +03:00