activeloopai / activeloopai/deeplake

[BUG] Committing a Deep Lake dataset changes an empty string stored in a Text column from "" to None in version 4.7.4

未关闭
#3,165 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
bug
主要语言
C++
星标
9.2k
派生
722
PR 合并指标
30 天内没有已合并 PR

描述

### Severity

P2 - Not urgent, nice to have

### Current Behavior

After inserting an empty string (`""`) into a `Text` column, the value is returned correctly before `commit()`, but becomes `None` after `commit()`.

before commit: ''
after commit: None

This occurs consistently across direct access, slicing, iteration, and query results.

### Steps to Reproduce

run the following code

```python
import deeplake
from deeplake import types

ds = deeplake.create("mem://empty_string_test")
ds.add_column("text", types.Text())

ds.append({"text": [""]})

assert ds["text"][0] == ""
print("before commit:", repr(ds["text"][0]))

ds.commit()

print("after commit:", repr(ds["text"][0]))
assert ds["text"][0] == ""
```

### Expected/Desired Behavior

The empty string should be committed as empty string.

### Python Version

3.10

### OS

_No response_

### IDE

_No response_

### Packages

_No response_

### Additional Context

_No response_

### Possible Solution

_No response_

### Are you willing to submit a PR?

- [ ] I'm willing to submit a PR (Thank you!)

贡献指南

打开贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。