frostfs-node/pkg/local_object_storage
Aleksey Savchuk d4ff44ef83
[#1585] metabase: Add missing expiration epoch for object stored with EC
Suppose there's a complex object stored with EC. It's divided into
parts, and these parts are further divided into chunks, except for
the linking object. The chunks and linking object are stored in the
metabase.

An expiration epoch of the original object should be stored in the
expired objects index. In the described scenario, there's no way to
determine the expiration epoch of the object from its chunks because
a chunk's parent is a part of the original object, not the original
object itself. However, the epoch can be determined from the linking
object.

Previously, whether the epoch was stored or not depended on the order
in which the chunks and linking object were written. Now it's fixed.

The absense of the expiration epoch prevented the GC from deleting
this object upon its expiration.

Signed-off-by: Aleksey Savchuk <a.savchuk@yadro.com>
2024-12-27 15:31:01 +03:00
..
blobovnicza [#1568] storage: Remove "could not/can't/failed to" from error messages 2024-12-18 15:52:26 +00:00
blobstor [#1568] storage: Remove "could not/can't/failed to" from error messages 2024-12-18 15:52:26 +00:00
engine [#1568] storage: Remove "could not/can't/failed to" from error messages 2024-12-18 15:52:26 +00:00
internal [#1437] node: Fix contextcheck linter 2024-11-13 10:36:10 +03:00
metabase [#1585] metabase: Add missing expiration epoch for object stored with EC 2024-12-27 15:31:01 +03:00
metrics [#1367] fstree: Add IterateInfo method 2024-09-12 15:06:33 +03:00
pilorama [#1568] pilorama: Replace "containerID" with "container ID" in the error message 2024-12-18 15:52:26 +00:00
shard [#1568] storage: Remove "could not/can't/failed to" from error messages 2024-12-18 15:52:26 +00:00
util [#1103] node: Implement Get\Head requests for EC object 2024-04-24 18:15:53 +03:00
writecache [#1568] storage: Remove "could not/can't/failed to" from error messages 2024-12-18 15:52:26 +00:00