Skip to content

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

Description

@zhuang-keju

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

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

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions