|
| 1 | +## Version 2.19.0.0 Release Notes |
| 2 | + |
| 3 | +Compatible with OpenSearch 2.19.0 |
| 4 | + |
| 5 | +### Features |
| 6 | +- Add Support for Multi Values in innerHit for Nested k-NN Fields in Lucene and FAISS [#2283](https://github.com/opensearch-project/k-NN/pull/2283) |
| 7 | +- Add binary index support for Lucene engine. [#2292](https://github.com/opensearch-project/k-NN/pull/2292) |
| 8 | +- Add expand_nested_docs Parameter support to NMSLIB engine [#2331](https://github.com/opensearch-project/k-NN/pull/2331) |
| 9 | +- Add a new build mode, `FAISS_OPT_LEVEL=avx512_spr`, which enables the use of advanced AVX-512 instructions introduced with Intel[R] Sapphire Rapids [#2404](https://github.com/opensearch-project/k-NN/pull/2404) |
| 10 | +- Add cosine similarity support for faiss engine [#2376](https://github.com/opensearch-project/k-NN/pull/2376) |
| 11 | +- Add concurrency optimizations with native memory graph loading and force eviction [#2265](https://github.com/opensearch-project/k-NN/pull/2345) |
| 12 | +- Add derived source feature for vector fields [#2449](https://github.com/opensearch-project/k-NN/pull/2449) |
| 13 | +### Enhancements |
| 14 | +- Introduced a writing layer in native engines where relies on the writing interface to process IO. [#2241](https://github.com/opensearch-project/k-NN/pull/2241) |
| 15 | +- Allow method parameter override for training based indices [#2290](https://github.com/opensearch-project/k-NN/pull/2290) |
| 16 | +- Optimizes lucene query execution to prevent unnecessary rewrites [#2305](https://github.com/opensearch-project/k-NN/pull/2305) |
| 17 | +- Added more detailed error messages for KNN model training [#2378](https://github.com/opensearch-project/k-NN/pull/2378) |
| 18 | +- Add check to directly use ANN Search when filters match all docs. [#2320](https://github.com/opensearch-project/k-NN/pull/2320) |
| 19 | +- Use one formula to calculate cosine similarity [#2357](https://github.com/opensearch-project/k-NN/pull/2357) |
| 20 | +- Make the build work for M series MacOS without manual code changes and local JAVA_HOME config [#2397](https://github.com/opensearch-project/k-NN/pull/2397) |
| 21 | +- Remove DocsWithFieldSet reference from NativeEngineFieldVectorsWriter [#2408](https://github.com/opensearch-project/k-NN/pull/2408) |
| 22 | +- Remove skip building graph check for quantization use case [#2430](https://github.com/opensearch-project/k-NN/2430) |
| 23 | +- Removing redundant type conversions for script scoring for hamming space with binary vectors [#2351](https://github.com/opensearch-project/k-NN/pull/2351) |
| 24 | +- Update default to 0 to always build graph as default behavior [#2452](https://github.com/opensearch-project/k-NN/pull/2452) |
| 25 | +- Enabled concurrent graph creation for Lucene engine with index thread qty settings[#2480](https://github.com/opensearch-project/k-NN/pull/2480) |
| 26 | +### Bug Fixes |
| 27 | +* Fixing the bug when a segment has no vector field present for disk based vector search [#2282](https://github.com/opensearch-project/k-NN/pull/2282) |
| 28 | +* Fixing the bug where search fails with "fields" parameter for an index with a knn_vector field [#2314](https://github.com/opensearch-project/k-NN/pull/2314) |
| 29 | +* Fix for NPE while merging segments after all the vector fields docs are deleted [#2365](https://github.com/opensearch-project/k-NN/pull/2365) |
| 30 | +* Allow validation for non knn index only after 2.17.0 [#2315](https://github.com/opensearch-project/k-NN/pull/2315) |
| 31 | +* Fixing the bug to prevent updating the index.knn setting after index creation[#2348](https://github.com/opensearch-project/k-NN/pull/2348) |
| 32 | +* Release query vector memory after execution [#2346](https://github.com/opensearch-project/k-NN/pull/2346) |
| 33 | +* Fix shard level rescoring disabled setting flag [#2352](https://github.com/opensearch-project/k-NN/pull/2352) |
| 34 | +* Fix filter rewrite logic which was resulting in getting inconsistent / incorrect results for cases where filter was getting rewritten for shards [#2359](https://github.com/opensearch-project/k-NN/pull/2359) |
| 35 | +* Fixing it to retrieve space_type from index setting when both method and top level don't have the value. [#2374](https://github.com/opensearch-project/k-NN/pull/2374) |
| 36 | +* Fixing the bug where setting rescore as false for on_disk knn_vector query is a no-op [#2399](https://github.com/opensearch-project/k-NN/pull/2399) |
| 37 | +* Fixing the bug to prevent index.knn setting from being modified or removed on restore snapshot [#2445](https://github.com/opensearch-project/k-NN/pull/2445) |
| 38 | +* Fix Faiss byte vector efficient filter bug [#2448](https://github.com/opensearch-project/k-NN/pull/2448) |
| 39 | +* Fixing bug where mapping accepts both dimension and model-id [#2410](https://github.com/opensearch-project/k-NN/pull/2410) |
| 40 | +* Add version check for full field name validation [#2477](https://github.com/opensearch-project/k-NN/pull/2477) |
| 41 | +### Infrastructure |
| 42 | +* Updated C++ version in JNI from c++11 to c++17 [#2259](https://github.com/opensearch-project/k-NN/pull/2259) |
| 43 | +* Upgrade bytebuddy and objenesis version to match OpenSearch core and, update github ci runner for macos [#2279](https://github.com/opensearch-project/k-NN/pull/2279) |
| 44 | +### Documentation |
| 45 | +### Maintenance |
| 46 | +* Select index settings based on cluster version[2236](https://github.com/opensearch-project/k-NN/pull/2236) |
| 47 | +* Added periodic cache maintenance for QuantizationStateCache and NativeMemoryCache [#2308](https://github.com/opensearch-project/k-NN/pull/2308) |
| 48 | +* Added null checks for fieldInfo in ExactSearcher to avoid NPE while running exact search for segments with no vector field [#2278](https://github.com/opensearch-project/k-NN/pull/2278) |
| 49 | +* Added Lucene BWC tests [#2313](https://github.com/opensearch-project/k-NN/pull/2313) |
| 50 | +* Upgrade jsonpath from 2.8.0 to 2.9.0[2325](https://github.com/opensearch-project/k-NN/pull/2325) |
| 51 | +* Bump Faiss commit from 1f42e81 to 0cbc2a8 to accelerate hamming distance calculation using _mm512_popcnt_epi64 intrinsic and also add avx512-fp16 instructions to boost performance [#2381](https://github.com/opensearch-project/k-NN/pull/2381) |
| 52 | +* Deprecate nmslib engine [#2427](https://github.com/opensearch-project/k-NN/pull/2427) |
| 53 | +* Add spotless mirror repo for fixing builds [#2453](https://github.com/opensearch-project/k-NN/pull/2453) |
0 commit comments