TileDB v2.10.0 Release Notes

  • Full Changelog: https://github.com/TileDB-Inc/TileDB/compare/2.9.0...2.10.0

    Disk Format

    • Consolidation with timestamps: add includes timestamps to fragment footer. #3138

    ๐Ÿ†• New features

    • ๐Ÿ‘ OR clause support in Query Conditions (#3041 #3083 #3112 #3264)
    • ๐Ÿ†• New examples for QueryCondition usage with the C++ API (#3225) and C API (#3242)
    • TILEDB_BOOL Datatype #3164
    • ๐Ÿ‘Œ Support for group metadata consolidation and vacuuming #3175

    ๐Ÿ’ฅ Breaking behavior

    • Remove timestamp-range vacuuming (experimental) #3214

      ๐Ÿ‘Œ Improvements

    • ๐Ÿ”จ Sparse global order reader: refactor merge algorithm. #3173

    • ๐Ÿ‘ Dense reader: add better stats for attribute copy. #3199

    • Dense reader: adding ability to fully disable tile cache. #3227

    • Optimize compute_results_count_sparse_string. #3263

    ๐Ÿ—„ Deprecations

    • Deprecate sm.num_tbb_threads config option #3177

    ๐Ÿ› Bug fixes

    • Dense reader: fixing query conditions with overlapping domains. #3244
    • Consolidation w timestamps: cell slab length computations fix. #3230
    • Unordered writer: fixing segfault for empty writes. #3161
    • ๐Ÿ“œ Sparse global order reader: Check the right incomplete reason is returned in case of too small user buffer #3170
    • Global writes: check global order on write continuation. #3109
    • ๐Ÿ›  Fixing Dimension::splitting_value to prevent overflows. #3116
    • ๐Ÿ“œ Parse minor and patch version with more than one digit #3098
    • ๐Ÿ“œ Sparse unordered w/ dups reader: fix incomplete reason for cloud reads. #3104
    • ๐ŸŒฒ Rearrange context member initialization so logger is initialized prior to getting thread counts (which may log) #3128
    • adjust assert for var Range usage in legacy global order reader #3122
    • ๐Ÿ›  Fix SC-17415: segfault due to underflow in for loop #3143
    • ๐Ÿ›  Fix fragment_consolidation.cc example #3145
    • Change test_assert path used to locate try_assert #3158
    • ๐Ÿ“œ example writing_sparse_global_, change illegal write to be legal #3159
    • ๐Ÿ— avoid unit_range warning as error build failures #3171
    • ๐Ÿ”„ change to avoid warning causing build error with msvc #3162
    • ๐Ÿ“œ Sparse unordered w/ dups reader: fixing overflow on int value. #3181
    • ๐Ÿ“œ Sparse index readers: fixing queries with overlapping ranges. #3208
    • Fix bad_optional_access exceptions when running consolidation with timestamps tests #3213
    • ๐Ÿ›  Fix SC-18250: segfault due to empty default-constructed FilterPipeline #3233
    • ๐Ÿ›  Fixed regression test for SC12024, Incorrect selected type in Dimension::oob #3219
    • ๐Ÿ›  Fixed bug in documentation for cpp_api query condition examples. #3239
    • ๐Ÿ›  Fix File API failure when importing into TileDB Cloud array #3246
    • ๐Ÿ›  Fix undefined behavior in filestore whilst detecting compression #3291
    • ๐Ÿ›  Fix printing of TILEDB_BLOB attributes in Attribute::Dump #3250
    • โž• Add missing filters to switch case for Filter serialization #3256
    • ๐Ÿ›  Fix a typo in the byteshuffle constructor for capnp serialization #3284
    • โœ‚ Remove incorrect noexcept annotations from C API implementations in filestore API #3273
    • Update ensure_datatype_is_valid to fix deserialization issues #3303

    API Changes

    C++ API

    • Apply TILEDB_NO_API_DEPRECATION_WARNINGS to C++ API #3236

    ๐Ÿ‘ท Build System

    • โž• Add tiledb_regression test target #3143
    • Produce a TileDBConfigVersion.cmake file #3240
    • ๐Ÿ— Integrate build of webp into tiledb superbuild (note: build-only) #3113

    ๐Ÿ†• New Contributors