Change8

1.0.18

📦 chromaView on GitHub →
14 features🐛 8 fixes🔧 4 symbols

Summary

Version 1.0.18 introduces significant performance enhancements through AVX utilization and query optimizations, alongside new features like manual garbage collection and CRN collection retrieval. Several bugs related to compaction, deadlocks, and garbage collection logic were also addressed.

✨ New Features

  • Enabled AVX usage in distance calculations for performance improvement.
  • Auto-set tenant and scoped database in python CloudClient.
  • Modified get_range to return an iterator for potential performance benefits.
  • Added metric for component queue depth and changed dispatcher queue depth metric buckets.
  • Added garbage collection CLI for manual garbage collection.
  • Further optimized query on getCollections when databases pkey is fully specified (though later reverted, optimization efforts are noted).
  • Updated Rust build process to allow building with AVX when the flag is set.
  • Optimized GetCollections and removed usage of raw gorm.
  • Added configuration parameter to garbage collector to control how many collections are fetched from SysDb.
  • Implemented rejection of version files without paths.
  • Enabled getting a collection by CRN.
  • Completed NAC metrics for the write half.
  • Added sync before flushing.
  • Added support for default space in create collection configuration.

🐛 Bug Fixes

  • Mark dirty on rollback of cursor to guarantee compaction picks it up.
  • Reverted optimization in getCollections query due to an issue.
  • CompactionError did not proxy should_trace_error correctly.
  • Resolved potential deadlock in the system crate.
  • Fixed missing node in constructed version graph for garbage collection.
  • Fixed a test flake related to a previous deadlock resolution.
  • Prevented garbage collection of hnsw if it is empty.
  • Fixed CLI copy offset issue.

🔧 Affected Symbols

get_rangeCloudClientgetCollectionsCompactionError