https://github.com/apache/incubator-opendal/blob/2d174fc26cc2d16d17399775035261cd0d68352b/core/src/raw/adapters/kv/backend.rs#L297-L304
As in above snippet, if buffer is empty, it skips insertion of object in store. But returns success. It must create entry with empty content.
May be proper way to differentiate uninitialized buffer from empty buffer is to use Option.