ArcticDB icon indicating copy to clipboard operation
ArcticDB copied to clipboard

Flaky `test_filter_numeric_isnotin_signed`

Open IvoDD opened this issue 9 months ago • 1 comments

Describe the bug

The test_filter_numeric_isnotin_signed has flaked on the conde build here.

Pasting logs below:

version_store = NativeVersionStore: Library: test_filter_numeric_isnotin_si.80_2024-05-01T13_07_13_506219, Primary Storage: lmdb_storage.
symbol = 'test_filter_numeric_isnotin'
df =               a    b
0  9.007199e+15  0.0
arctic_query = <arcticdb.version_store.processing.QueryBuilder object at 0x14a4b6650>
pandas_query = 'a not in [9007199254740993]', dynamic_strings = True

    def generic_dynamic_filter_test(version_store, symbol, df, arctic_query, pandas_query, dynamic_strings=True):
        version_store.delete(symbol)
        expected, slices = make_dynamic(df)
        for df_slice in slices:
            version_store.append(symbol, df_slice, write_if_missing=True)
    
        try:
            expected = expected.query(pandas_query)
            received = version_store.read(symbol, query_builder=arctic_query).data
            expected = regularize_dataframe(expected)
            received = regularize_dataframe(received)
            if not len(expected) == 0 and len(received) == 0:
                if not np.array_equal(expected, received):
                    print("Original dataframe\n{}".format(expected))
                    print("Pandas query\n{}".format(pandas_query))
                    print("Expected\n{}".format(expected))
                    print("Received\n{}".format(received))
>                   assert False
E                   assert False
E                   Falsifying example: test_filter_numeric_isnotin_signed(
E                       lmdb_version_store_dynamic_schema=NativeVersionStore: Library: test_filter_numeric_isnotin_si.80_2024-05-01T13_07_13_506219, Primary Storage: lmdb_storage.,
E                       df=
E                                         a    b
E                           0  9.007199e+15  0.0
E                       ,
E                       vals=frozenset({int64(9007199254740993)}),
E                   )
E                   
E                   You can reproduce this example by temporarily adding @reproduce_failure('6.72.4', b'AXicY2RgYGZgYFBgQABGsAhUiJEBAAU5AEo=') as a decorator on your test case

Steps/Code to Reproduce

Rerun the test.

Expected Results

Test always succeeds.

OS, Python Version and ArcticDB Version

Conda mac OS (from CI)

Backend storage used

No response

Additional Context

No response

IvoDD avatar May 01 '24 15:05 IvoDD

Happened in pypi linux build as well:

=========================== short test summary info ============================
FAILED tests/unit/arcticdb/version_store/test_filtering_dynamic.py::test_filter_numeric_isnotin_signed[EncodingVersion.V2] - assert False
Falsifying example: test_filter_numeric_isnotin_signed(
    lmdb_version_store_dynamic_schema=NativeVersionStore: Library: test_filter_numeric_isnotin_si.876_2024-07-03T09_40_50_711623_v2, Primary Storage: lmdb_storage.,
    df=
                      a    b
        0  9.007199e+15  0.0
    ,
    vals=frozenset({int64(9007199254740993)}),
)

You can reproduce this example by temporarily adding @reproduce_failure('6.72.4', b'AXicY2RgYGZgYFBgQABGsAhUiJEBAAU5AEo=') as a decorator on your test case

phoebusm avatar Jul 03 '24 12:07 phoebusm