lakeFS
lakeFS copied to clipboard
KV staging tomstone value
Currently tomstone value is considered to be nil
. It means when calling some of the API that goes to staging we may get an 'err' nil and 'value' nil.
This indication is helpful in cases we try to access the data itself, but it makes the API very hard to handle in the tombstone case as we need now have two cases that the value is nil - when there is an error (NotFound in particular) and when there is a tomstone.
Having tomstone represented as a Value
instance with nil as part of the data will remove this nil as tomstone check and will enable value.IsNil() (optional) that will align the APIs to return non nil on no error like other Go API.