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

Aperta
#3,165 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
bug
Lingua principale
C++
Stelle
9.2k
Fork
722
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

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

Guida per i contributori

Apri la guida per i contributori

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.