2020-12-09 08:47:38 +00:00
|
|
|
syntax = "proto3";
|
|
|
|
|
2024-10-08 14:30:50 +00:00
|
|
|
package frost.fs.tombstone;
|
2020-12-09 08:47:38 +00:00
|
|
|
|
|
|
|
import "refs/types.proto";
|
|
|
|
|
2022-04-13 06:21:33 +00:00
|
|
|
// Tombstone keeps record of deleted objects for a few epochs until they are
|
2024-09-05 13:24:35 +00:00
|
|
|
// purged from the FrostFS network.
|
2020-12-09 08:47:38 +00:00
|
|
|
message Tombstone {
|
2024-09-05 13:24:35 +00:00
|
|
|
// Last FrostFS epoch number of the tombstone lifetime. It's set by the
|
|
|
|
// tombstone creator depending on the current FrostFS network settings. A
|
2024-02-28 15:53:04 +00:00
|
|
|
// tombstone object must have the same expiration epoch value in
|
2024-10-08 14:30:50 +00:00
|
|
|
// `__SYSTEM__EXPIRATION_EPOCH`
|
2022-04-13 06:21:33 +00:00
|
|
|
// attribute. Otherwise, the tombstone will be rejected by a storage node.
|
2024-02-28 15:53:04 +00:00
|
|
|
uint64 expiration_epoch = 1 [ json_name = "expirationEpoch" ];
|
2020-12-09 08:47:38 +00:00
|
|
|
|
|
|
|
// 16 byte UUID used to identify the split object hierarchy parts. Must be
|
2022-04-13 06:21:33 +00:00
|
|
|
// unique inside a container. All objects participating in the split must
|
2020-12-09 08:47:38 +00:00
|
|
|
// have the same `split_id` value.
|
2024-02-28 15:53:04 +00:00
|
|
|
bytes split_id = 2 [ json_name = "splitID" ];
|
2020-12-09 08:47:38 +00:00
|
|
|
|
|
|
|
// List of objects to be deleted.
|
2024-10-08 14:30:50 +00:00
|
|
|
repeated frost.fs.refs.ObjectID members = 3 [ json_name = "members" ];
|
2020-12-09 08:47:38 +00:00
|
|
|
}
|