Releases
2.9.0
TileDB v2.9.0 Release Notes
Disk Format
Update on-disk format because of the new available compressor for Dictionary-encoding of strings #3042
New features
RLE compression support for var-length string dimensions #2938
Add virtual filesystem ls_with_sizes function #2971
Add new CMake build option for TILEDB_EXPERIMENTAL_FEATURES
to compile time protect experimental features. #2748
Forwardport Group API #3058
Support Dictionary-encoding filter for string dimensions and attributes #3077
Use legacy sparse global order reader for 2.9 #3096
Add libmagic to build process. #3088
New file storage APIs (tiledb_filestore_...) #3121
Improvements
Convert FilterPipeline deserialize function to static factory function #2799
Convert array metadata deserialize function to factory function #2784
A new thread pool with modern C++ compatible API and exception-safe behavior. #2944
Global order writer: fixing multi writes for var size attributes. #2963
Smart pointer conversion: ArraySchema Domain #2948
VFS: adding configuration for vfs.max_batch_size. #2960
Declare all C API functions noexcept
. Put existing C API functions inside exception safety wrappers to meet the declaration change. #2961
Add support for compile-time assertion configuration #2962
Refactored tiledb::sm::serialization::attribute_from_capnp to be C41 compliant #2937
Support reading all consolidated fragment metadata files. #2973
Fixing build errors using MacOSX12.3.sdk. #2981
Fixing compute_results_count_sparse_string for multiple range threads. #2983
Global writes: fixing OOM on write continuation. #2993
Do not store offsets when RLE is used on string dimensions #2969
Dynamically infer bytesizes for run length and strings for strings RLE compression #2984
Smart pointer conversion: ArraySchema Dimension #2926
Refactored tiledb::sm::serialization::filter_pipeline_from_capnp to be C41 compliant #2943
Enable sparse global order reader by default. #2997
Add API for FragmentInfo::get_fragment_name #2977
add validity file format specification #2998
Convert Domain class deserialize function to factory function #2800
Dense reader: fix user buffer offset computation for multi-index queries. #3002
Sparse readers: using zipped coords buffers for fragment version < 5. #3016
Extra UTs on string RLEs #3024
Bump Catch2 version to 2.13.8 #3027
Split consolidator in multiple classes. #3004
HTML-render the existing format-spec Markdown docs. #3043
Add more detailed doc for schema evolution timestamp range functions. #3029
Run doc-render job on doc-only PRs, and not on non-doc PRs #3045
Support curl POSTing >2GB data to REST #3048
Dense reader: do not sort input ranges. #3036
Support consolidating non-contiguous fragments. #3037
Introduce dictionary-encoding as an enum option for filters #3042
Move Range
to new tiledb::type
namespace #3059
Convert tdb shared to shared #2965
Add StatusException
, an exception class to be thrown instead of returning Status
#3050
Global writer: fixing write continuation for fixed sized attributes. #3062
Cherry-pick #3061 #3064
Add ability to store (optional) name with group member #3068
Typo fix in group.cc #3078
All ranges tile overlap: skip computation for default dimensions. #3080
Add golang annotation to capnp spec file #3089
Rename tiledb time.h/math.h to avoid possible conflicts with standard header files. #3087
Convert ArraySchema's deserialize to a factory function #3012
varying_size_datum_at: fixing comparison error. #3127
Global writes: check global order on write continuation. #3109
Deprecations
Bug fixes
[bug] Fix SC-17415 : segfault due to underflow in for loop #3143
Unordered writer: fixing segfault for empty writes. #3161
Sparse global order reader: prevent dims from being unfiltered twice. #3150
Filter pipeline: fixing empty pipeline, multi chunk, refactored queries. #3149
compare nullptr, avoid catch2 comparison warning failure #2970
Check that array is open before getting non_empty_domain #2980
Fix assertion failure in GCS, debug build #3001
Fix missing stats on cloud queries. #3009
Sparse unordered w/ dups reader: coord tiles management fix. #3023
Incorrect validity result count in REST query #3015
use different API approach to avoid possible file sharing violation #3056
tiledb_serialize_array_metadata
should load metadata if its not loaded before serializing #3065
tiledb_serialize_group_metadata
should load group metadata if its not loaded. #3070
avoid some potentially invalid vector references #2932
Sparse Index Reader Fix: Check For Empty Buffer #3051
Sparse Global Order Reader Fix: Decrement Total Cells #3046
Reset group metadata only based on end timestamp to ensure its always reset to now #3091
Sparse unordered w/ dups reader: fix incomplete reason for cloud reads. #3104
API additions
C++ API
Add function to check if Config contains a parameter #3082
You can’t perform that action at this time.