ArcticDB icon indicating copy to clipboard operation
ArcticDB copied to clipboard

Calling `sort_and_finalize_staged_data` with staged segment of DataFrame with 0 rows fails

Open vasil-pashov opened this issue 6 months ago • 0 comments

Describe the bug When the staging area is consisted of DataFrames without any rows calling sort_and_finalize_staged_data fails.

Steps to reproduce

import pandas as pd
import numpy as np
import arcticdb as adb

ac = adb.Arctic("lmdb://test")
lib = ac.get_library("test", create_if_missing=True)
df = pd.DataFrame({"col": []}, index=pd.DatetimeIndex([]))
lib.write("sym", df, staged=True)
lib.sort_and_finalize_staged_data("sym")

Ouput:

Traceback (most recent call last):
  File "...test.py", line 8, in <module>
    lib.write("sym", df, staged=True)
  File "...arcticdb\version_store\library.py", line 461, in write
    return self._nvs.write(
  File "...arcticdb\version_store\_store.py", line 583, in write
    self.version_store.write_parallel(symbol, item, norm_meta, udm)
arcticdb_ext.exceptions.InternalException: E_ASSERTION_FAILURE Allocate data called with zero size

Expected behavior This should succeed and be a noop.

Related issues This could be related to: #1735, #1737

OS, Python, Arctic versions

Python: 3.10.11 (tags/v3.10.11:7d4cc5a, Apr  5 2023, 00:38:17) [MSC v.1929 64 bit (AMD64)]
OS: Windows-10-10.0.22631-SP0
ArcticDB: 4.5.0rc1

vasil-pashov avatar Aug 01 '24 09:08 vasil-pashov