ArcticDB icon indicating copy to clipboard operation
ArcticDB copied to clipboard

Cannot append columns with all-`None` values to anything

Open alexowens90 opened this issue 1 year ago • 0 comments

The following test:

def test_one_row_append(lmdb_version_store_v1):
    lib = lmdb_version_store_v1
    sym = "test_one_row_append"
    df = pd.DataFrame({"col": ["hello"]})
    lib.write(sym, df)
    df = pd.DataFrame({"col": [None, "hello again"]})
    lib.append(sym, df)
    df = pd.DataFrame({"col": [None]})
    lib.append(sym, df)

fails on the final append with the exception:

E                   arcticdb_ext.version_store.StreamDescriptorMismatch: The columns (names and types) in the argument are not identical to that of the existing version: APPEND 
E                   (Showing only the mismatch. Full col list saved in the `last_mismatch_msg` attribute of the lib instance.
E                   '-' marks columns missing from the argument, '+' for unexpected.)
E                   -FD<name=col, type=TD<type=UTF_DYNAMIC64, dim=0>>
E                   +FD<name=col, type=TD<type=EMPTYVAL, dim=0>>

EMPTYVAL type columns should be appendable to anything.

A similar exception is produced if the strings hello and hello again are replaced with numeric values.

alexowens90 avatar Oct 30 '23 14:10 alexowens90