ArcadeDB v25.11.1
This release introduces significant improvements to vector search capabilities, alongside critical fixes for SQL querying, indexing, and gRPC protocol handling.
🚀 Highlights
New JVector Integration
We have implemented a new LSMVector index using the JVector open-source engine. This provides a substantial performance boost and better state-of-the-art capabilities for vector search operations within ArcadeDB.
✨ New Features & Improvements
SQL & Indexing
- Embedded List Indexing: Added support for indexing properties contained in embedded documents (or maps) inside lists using the
BY ITEMsyntax. (#2802, #2803) - Enhanced Query Optimization: Improved index awareness for
CONTAINS,IN, andCONTAINSALLoperators. (#2786) - Delete Operations: Enhanced
DELETEfunctionality to better handle multipleORconditions. (#2760, #2695) - Progress Logging: Added progress logging to the
LSMTreeIndexbuild phase to improve visibility during large index operations. (#2772, #2763)
gRPC & API
- SQL Aliases: Fixed issue where SQL aliases were missing in gRPC
ResultSetserialization. (#2858, #2854, #2903) - Command Serialization: Improved reliability of gRPC command result serialization. (#2904)
- CLI Options: Updated and refined Command Line Interface options. (#2799)
Core & Internal
- Prometheus Plugin: Added shading to the Prometheus plugin to prevent classpath conflicts. (#2779, #2780)
- Test Refactoring: Major refactoring of test utilities and module dependencies for better maintainability. (#2885, #2881)
🐛 Bug Fixes
Query Engine
- Filtering Fix: Resolved a critical bug where filtering with
WHEREclauses returned wrong results in specific scenarios. (#2814, #2815) - Unwind/Merge: Hotfix for
UNWINDandMERGEoperations, including a fix for broken iterators. (#2856, #2861) - Binary Comparator: Fixed
ClassCastExceptioninBinaryComparatorforTYPE_BINARYcomparisons. (#2762, #1534) - Duplicate Documents: Fixed an issue where using the Greater Than (
>) operator with indexes returned duplicate documents. (#2328)
Indexing
- NOTUNIQUE Indexes: Fixed an issue where creating a
NOTUNIQUEstring index on a large dataset broke the=operator. (#2757, #2859) - LSMTree Compaction: Addressed an issue where compaction created duplicate timestamped indexes that were not cleaned up. (#2701)
- Console Creation: Fixed error when attempting to create an index that exists even when using the
IF NOT EXISTSclause. (#1819)
Studio & Tools
- Mongo Wrapper: Fixed failures when running Mongo queries inside Studio. (#2168)
- CSV Importer: Fixed the
createdDocumentscounter not incrementing during imports. (#2700) - REST API: Addressed idempotency issues where queries worked in Studio but failed via REST. (#1589)
🛠 Dependency Updates
Significant updates to core dependencies to ensure security and performance:
- Lucene: Bumped to version
10.3.2. - gRPC: Bumped to version
1.77.0. - LZ4-Java: Bumped to version
1.10.1. - Various updates to Spring, Micrometer, Testcontainers, and Studio UI dependencies.
❤️ New Contributors
- @mindreframer made their first contribution in PR #2815. Welcome to the project!
Full Changelog: 25.10.1...25.11.1