The ConsistencyDelayMetaFilter filter currently filters out blocks based on the ULID time, which is the time when the block has been created:
|
if ulid.Now()-id.Time() < uint64(f.consistencyDelay/time.Millisecond) && |
This means that if that actual consistency delay is the configured delay minus the upload time. If the delay is X but the block upload time is > X, the consistency delay is effectively ignored.
To correct approach would be checking the consistency delay against the "block upload completed timestamp" and, to do so, checking the meta.json creation time could be fine. However, object stores stores the "updated time" and not the "creation time", so I'm wondering how safe would be using it. Thoughts?