Skip to content

2.5.0

Compare
Choose a tag to compare
@Shelnutt2 Shelnutt2 released this 12 Nov 23:00
d11292d

TileDB v2.5.0 Release Notes

This release contains a major update to the sparse unordered with duplicates reader. In many cases this is a large performance increase for arrays and query layout that operate with this. The old reader is still available and can be toggled on with the config options highlighted below.

Configuration Changes

The config parameter for sm.use_refactored_readers has been split into three, sm.query.sparse_global_order.reader, sm.query.sparse_unordered_with_dups.reader and sm.query.dense.reader which take values of refactored or legacy. #2569

Breaking C API changes

  • Remove deprecated c-api tiledb_array_max_buffer_size and tiledb_array_max_buffer_size_var #2579

Breaking C++ API changes

  • Remove deprecated cpp-api Array::max_buffer_elements #2579

New features

  • Support upgrading an older version array to the latest version #2513
  • Add improved logging support to classes #2565

Improvements

  • Replace Buffer key_ with char key_[32] per shortcut story id 9561 #2502
  • Remove support for sparse writes in dense arrays. #2504
  • Initial dense refactor. #2503
  • More concise cmake output during build #2512
  • Sparse refactored readers: fixing looping behavior on large arrays. #2530
  • Use sparse global order reader for unordered without duplicates queries. #2526
  • Add CMakeUserPresets.json to .gitignore #2534
  • Sparse unordered with duplicates reader: support multiple ranges. #2537
  • Refactored sparse readers: tile overlap refactor. #2547
  • Refactored dense reader: fixing output buffer offsets with multi-ranges. #2553
  • Refactored sparse readers: serialization fixes. #2558
  • Refactored sparse readers: proper lifetime for tile bitmaps. #2563
  • REST scratch buffer is now owned by the query to allow reuse #2555
  • Remove default constructor from Dimension #2561
  • Resource pool: fixing off by one error. #2567
  • Splitting config for refactored readers. #2569
  • Sparse refactored readers: memory management unit tests. #2568
  • Removed all aspects of posix_code from Status #2571
  • Fixing pre-loading for tile offsets in various readers. #2570
  • Use the new logger in Subarray, SubarrayPartitioner and Consolidator classes. #2574
  • Add tiledb_fragment_info_get_schema_name #2581
  • Enable CMake AVX2 check #2591
  • Adding logging for sparse refactored readers. #2575
  • use ROW_MAJOR read paths for unordered reads of Hilbert layout array #2551

Bug fixes

  • Fix the memory leak in store_array_schema in the StorageManager class. #2480
  • Fix curl/REST query scratch size to reset after each query is processed. #2535
  • Sparse refactored readers: segfault with dimension only reads. #2539
  • REST array metadata writes should post with timestamps #2545
  • Fix bug in Arrow schema construction #2554
  • Replaced auto& path with auto path #2560

API additions

C API

  • Expose MBR in Fragment Info API #2222
  • Add tiledb_fragment_info_get_array_schema_name for fetching array name used by fragment #2581

C++ API

  • Expose MBR in Fragment Info API #2222
  • Add FragmentInfo::array_schema_name for fetching array name used by fragment #2581