TileDB v2.4.0 Release Notes
-
Disk Format
- Store array schemas under
__schema
directory #2258
๐ New features
- ๐ Perform early audit for acceptable aws sdk windows path length #2260
- ๐ Support setting via config s3 BucketCannedACL and ObjectCannedACL via SetACL() methods #2383
- โก๏ธ Update spdlog dependency to 1.9.0 fixing c++17 compatibility and general improvements #1973
- โ Added Azure SAS token config support and new config option #2420
- Load all array schemas in storage manager and pass the appropriate schema pointer to each fragment #2415
- First revision of the Interval class #2417
- Add
tiledb_schema_evolution_t
and new apis for schema evolution #2426 - โ Add
ArraySchemaEvolution
to cpp_api and its unit tests are also added. #2462 - โ Add c and cpp api functions for getting the array schema of a fragment #2468
- โ Add capnp serialization and rest support for array schema evolution objects #2467
๐ Improvements
encryption_key
andencryption_type
parameters have been added to the config; internal APIs now use these parameters to set the key. #2245- ๐ Initial read refactor #2374
- Create class ByteVecValue from typedef #2368
- Encapsulate spdlog.h #2396
- ๐ Update OSX target to 10.14 for release artifacts #2401
- โ Add nullable (and unordered, nullable) support to the smoke test. #2405
- ๐ Initial sparse global order reader #2395
- Remove sm.sub_partitioner_memory_budget #2402
- โก๏ธ Update the markdown documents for our new version of array schemas #2416
- ๐ Sparse global order reader: no more result cell slab copy. #2411
- ๐ Sparse global order reader: initial memory budget improvements. #2413
- ๐ Optimization of result cell slabs generation for sparse global order reader. #2414
- โ Remove selective unfiltering. #2410
- โก๏ธ Updated Azure Storage Lite SDK to 0.3.0 #2419
- ๐ Respect memory budget for sparse global order reader. #2425
- ๐ Use newer Azure patch for all platforms to solve missing header error #2433
- increased diag output for differences reported by tiledb_unit (some of which may be reasonable) #2437
- Adjustments to schema evolution new attribute reads #2484
- ๐ Change
Quickstart
link in readthedocs/doxygenindex.rst
#2448 - ๐ Initial sparse unordered with duplicates reader. #2441
- โ Add calls to
malloc_trim
on context and query destruction linux to potentially reduce idle memory usage #2443 - โ Add logger internals for
std::string
andstd::stringstream
for developer convenience #2454 - ๐ Allow empty attribute writes. #2461
- ๐จ Refactored readers: serialization. #2458
- ๐ Allow null data pointers for writes. #2481
- โก๏ธ Update backwards compatibility arrays for 2.3.0 #2487
๐ Deprecations
๐ Bug fixes
- ๐ Fix to correctly apply capnproto create_symlink avoidance patch #2264
- The bug for calculating max_size_validity for var_size attribute caused incomplete query #2266
- Always run ASAN with matching compiler versions #2277
- ๐ Fix some loop bounds that reference non-existent elements #2282
- Treating
std::vector
like an array; accessing an element that is not present to get its address. #2276 - ๐ Fix buffer arguments in unit-curl.cc #2287
- Stop loop iterations within limits of vector being initialized. #2320
- ๐ Modify FindCurl_EP.cmake to work for WIN32 -EnableDebug builds #2319
- ๐ Fixing test failure because of an uninitialized buffer. #2386
- ๐ Change a condition that assumed MSVC was the only compiler for WIN32 #2388
- Fix defects in buffer classes: read, set_offset, advance_offset #2342
- ๐ Use CHECK_SAFE() to avoid multi-threaded conflict #2394
- ๐ Use tiledb _SAFE() items when overlapping threads may invoke code #2418
- ๐ Changes to address issues with default string dimension ranges in query #2436
- Only set cmake policy CMP0076 if cmake version in use knows about it #2463
- ๐ Fix handling curl REST request having all data in single call back #2485
- Write queries should post start/end timestamps for REST arrays #2492
API additions
- Introduce new
tiledb_experimental.h
c-api header for new feature that don't have a stabilized api yet #2453 - Introduce new
tiledb_experimental
cpp-api header for new feature that don't have a stabilized api yet #2453
C API
- ๐จ Refactoring [get/set]_buffer APIs #2315
- Add
tiledb_fragment_info_get_array_schema
functions for getting the array schema of a fragment #2468 - Add
tiledb_schema_evolution_t
and new apis for schema evolution #2426
C++ API
- Store array schemas under