Change8

1.0.17

Breaking Changes
📦 chroma
1 breaking12 features🐛 5 fixes🔧 4 symbols

Summary

Version 1.0.17 focuses on enhancing observability with new metrics and tracing capabilities, alongside performance improvements like reduced peak memory usage in the compactor. A key change involves removing the 'id' field from the GetCollectionByResourceNameRequest structure.

⚠️ Breaking Changes

  • The structure of the request for getting a collection by resource name has changed: the 'id' field has been removed from 'GetCollectionByResourceNameRequest'. If you were manually constructing this request, ensure you remove the 'id' field.

Migration Steps

  1. If you were using the 'GetCollectionByResourceNameRequest' API, ensure you remove any 'id' field you were previously sending in that request structure.

✨ New Features

  • Added metrics for span and metric exporters (though this was later reverted, see bug fixes/reverts).
  • Added a metric for the number of aborted tasks in the dispatcher.
  • The 'take_result_channel()' method now returns an Option type.
  • Implemented tracing for errors when collections are soft-deleted.
  • Created the 'update_tenant' API.
  • Added support for scorecarding fork collections by collection or tenant.
  • Added an index on collections using 'created_at' as the sort key.
  • Added a flag to the Dockerfile to enable the use of AVX512 instructions.
  • Added support for WordPress (AI Engine Pro) integration.
  • Made the number of concurrent block flushes configurable.
  • Implemented span uploading.
  • Added documentation for collection forking.

🐛 Bug Fixes

  • Removed the 'id' field from 'GetCollectionByResourceNameRequest' to fix an issue.
  • Reverted the addition of metrics for span & metric exporters (PR #5236).
  • Removed two spans identified as spammy from RLS (Row-Level Security).
  • Ensured errors are not traced if 'should_trace_error' is false.
  • Reduced the recall threshold in 'test_add' to 95 for stability.

🔧 Affected Symbols

GetCollectionByResourceNameRequesttake_result_channel()update_tenant APItest_add