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

Ouverte
#3,165 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
bug
Langage dominant
C++
Étoiles
9.2k
Forks
722
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

### 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!)

Guide de contribution

Ouvrir le guide de contribution

Évaluation

Cette issue n'a pas encore été évaluée.

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.