github ArcadeData/arcadedb 25.12.1

4 days ago

ArcadeDB 25.12.1 Release Notes

We're excited to announce the release of ArcadeDB v25.12.1! This release includes significant bug fixes, new features, performance improvements, and dependency updates.

Highlights

Vector Search Enhancements

  • Fixed critical vector quantization bug (#3052, #3053) - INT8 and BINARY vector quantization now works correctly across all dimensions
  • New filtered vector search (#3071, #3072) - LSMVectorIndex now supports filtered searches for more precise queries
  • Better vector type support (#3090) - Added support for List<Float> in vector indexes
  • Improved compression (#2911) - Enhanced compression for LSM vector indexes
  • Fixed HNSW graph persistence (#2916) - Ensures JVector HNSW graph file is properly closed and flushed to disk

SQL and Query Improvements

  • Fixed IF statement execution (#2775) - SQL scripts with IF statements now execute correctly from console
  • Fixed index creation with IF NOT EXISTS (#1819) - Console no longer errors when creating existing indexes with IF NOT EXISTS clause
  • Custom function parameter binding (#3046, #3049) - Fixed parameter binding for SQL and JavaScript custom functions
  • SQL method consistency (#2964, #2967) - values() method now behaves consistently with keys() method
  • CONTAINSANY index fix (#3051) - Fixed index usage for lists of embedded documents with CONTAINSANY

Transaction Management

  • Revised transaction logic (#3074) - Improved transaction handling and consistency
  • Fixed edge index invalidation (#3091) - Edge indexes now remain valid in edge-case scenarios

New Features

  • Database size API (#3045) - Added new database.getSize() API method
  • Version display enhancement (#2905) - Server log version number now displayed consistently

What's Changed

Bug Fixes

  • Fix INT8 and BINARY vector quantization offset bug in LSMVectorIndex page loading by @Copilot in #3053
  • fix: revert SQL grammar changes and disable deep level JSON insert tests by @robfrank in #2961
  • #2915 fix: ensure Jvector HNSW graph file is closed and flushed to disk on database close by @robfrank in #2916
  • fix: make values method behave like keys method by @gramian in #2967
  • Fix custom function parameter binding for SQL and JavaScript functions by @Copilot in #3049
  • fix CONTAINSANY index use for lists of embedded documents by @gramian in #3051
  • fix: support List in vector index by @szekelyszabi in #3090

Features

  • Show version number same as in server log by @gramian in #2905
  • feat: added new database.getSize() api by @lvca in #3045
  • Add filtered vector search support to LSMVectorIndex by @Copilot in #3072
  • add stars chart by @robfrank in #3084

Performance Improvements

Core Improvements

  • Revised Tx Logic by @robfrank in #3074
  • chore: refactor vector index tests and improve naming conventions by @robfrank in #2906
  • test: add comprehensive tests for SQLMethodValues including document … by @robfrank in #3047

Dependency Updates

Build Tools & Infrastructure

  • chore(deps): bump com.github.eirslett:frontend-maven-plugin from 1.15.4 to 2.0.0 by @dependabot[bot] in #3067
  • chore(deps): bump io.github.ascopes:protobuf-maven-plugin from 4.0.3 to 4.1.1 by @dependabot[bot] in #2938
  • chore(deps): bump io.github.ascopes:protobuf-maven-plugin from 4.1.1 to 4.1.2 by @dependabot[bot] in #3088
  • chore: bump pre-commit hooks versions by @robfrank in #3050

Core Dependencies

  • chore(deps): bump io.netty:netty-transport from 4.2.7.Final to 4.2.8.Final by @dependabot[bot] in #2934
  • chore(deps): bump io.netty:netty-all from 4.2.7.Final to 4.2.8.Final by @dependabot[bot] in #2940
  • chore(deps): bump io.netty:netty-transport from 4.2.8.Final to 4.2.9.Final by @dependabot[bot] in #3068
  • chore(deps): bump io.netty:netty-all from 4.2.8.Final to 4.2.9.Final by @dependabot[bot] in #3064
  • chore(deps): bump ch.qos.logback:logback-classic from 1.5.21 to 1.5.22 by @dependabot[bot] in #2935
  • chore(deps): bump ch.qos.logback:logback-classic from 1.5.22 to 1.5.23 by @dependabot[bot] in #3081
  • chore(deps): bump at.yawk.lz4:lz4-java from 1.10.1 to 1.10.2 by @dependabot[bot] in #3065
  • chore(deps): bump protobuf-java.version from 4.33.1 to 4.33.2 by @dependabot[bot] in #2895
  • chore(deps): bump com.google.api.grpc:proto-google-common-protos from 2.63.1 to 2.63.2 by @dependabot[bot] in #2939
  • chore(deps): bump grpc.version from 1.77.0 to 1.78.0 by @dependabot[bot] in #3079

Monitoring & Testing

  • chore(deps): bump io.micrometer:micrometer-registry-prometheus from 1.16.0 to 1.16.1 by @dependabot[bot] in #2937
  • chore(deps-dev): bump io.micrometer:micrometer-core from 1.16.0 to 1.16.1 by @dependabot[bot] in #2932
  • chore(deps-dev): bump testcontainers from 11.9.0 to 11.10.0 in /e2e-studio by @dependabot[bot] in #2943
  • chore(deps-dev): bump testcontainers from 11.9.0 to 11.10.0 in /e2e-js by @dependabot[bot] in #2942
  • chore(deps): bump testcontainers.version from 2.0.2 to 2.0.3 by @dependabot[bot] in #3062
  • chore(deps-dev): bump testcontainers from 11.10.0 to 11.11.0 in /e2e-studio by @dependabot[bot] in #3083
  • chore(deps-dev): bump testcontainers from 11.10.0 to 11.11.0 in /e2e-js by @dependabot[bot] in #3082
  • chore(deps-dev): bump org.mockito:mockito-core from 5.20.0 to 5.21.0 by @dependabot[bot] in #2929
  • chore(deps-dev): bump org.apache.tomcat:tomcat-jdbc from 11.0.14 to 11.0.15 by @dependabot[bot] in #2941
  • chore(deps-dev): bump io.swagger.parser.v3:swagger-parser from 2.1.36 to 2.1.37 by @dependabot[bot] in #3066
  • chore(deps-dev): bump org.assertj:assertj-db from 3.0.0 to 3.0.1 by @dependabot[bot] in #3080

GitHub Actions

  • chore(deps): bump actions/cache from 4.3.0 to 5.0.1 by @dependabot[bot] in #2933
  • chore(deps): bump zgosalvez/github-actions-ensure-sha-pinned-actions from 4.0.0 to 4.0.1 by @dependabot[bot] in #2928
  • chore(deps): bump actions/download-artifact from 6.0.0 to 7.0.0 by @dependabot[bot] in #2931
  • chore(deps): bump actions/upload-artifact from 5.0.0 to 6.0.0 by @dependabot[bot] in #2930
  • chore(deps): bump github/codeql-action from 4.31.7 to 4.31.8 by @dependabot[bot] in #2936
  • chore(deps): bump github/codeql-action from 4.31.8 to 4.31.9 by @dependabot[bot] in #3063
  • chore(deps): bump dorny/test-reporter from 2.3.0 to 2.5.0 by @dependabot[bot] in #3087
  • chore(deps): bump docker/setup-buildx-action from 3.11.1 to 3.12.0 by @dependabot[bot] in #3061

Studio (Frontend) Dependencies

  • chore(studio-deps)(deps): bump sweetalert2 from 11.26.4 to 11.26.10 in /studio in the security-critical group by @dependabot[bot] in #2919
  • chore(studio-deps)(deps): bump sweetalert2 from 11.26.10 to 11.26.12 in /studio in the security-critical group by @dependabot[bot] in #3054
  • chore(studio-deps)(deps): bump the security-critical group in /studio with 5 updates by @dependabot[bot] in #3076
  • chore(studio-deps)(deps): bump swagger-ui-dist from 5.30.3 to 5.31.0 in /studio by @dependabot[bot] in #2923
  • chore(studio-deps)(deps): bump pdfmake from 0.2.20 to 0.2.21 in /studio by @dependabot[bot] in #3078
  • chore(studio-deps)(deps): bump xmldoc from 2.0.2 to 2.0.3 in /studio by @dependabot[bot] in #2926
  • chore(studio-deps-dev)(deps-dev): bump terser-webpack-plugin from 5.3.15 to 5.3.16 in /studio in the build-tools group by @dependabot[bot] in #2920
  • chore(studio-deps-dev)(deps-dev): bump enhanced-resolve from 5.18.3 to 5.18.4 in /studio by @dependabot[bot] in #2922
  • chore(studio-deps-dev)(deps-dev): bump caniuse-lite from 1.0.30001759 to 1.0.30001760 in /studio by @dependabot[bot] in #2927
  • chore(studio-deps-dev)(deps-dev): bump baseline-browser-mapping from 2.9.5 to 2.9.7 in /studio by @dependabot[bot] in #2924
  • chore(studio-deps-dev)(deps-dev): bump baseline-browser-mapping from 2.9.7 to 2.9.11 in /studio by @dependabot[bot] in #3056
  • chore(studio-deps-dev)(deps-dev): bump caniuse-lite from 1.0.30001760 to 1.0.30001761 in /studio by @dependabot[bot] in #3059
  • chore(studio-deps-dev)(deps-dev): bump caniuse-lite from 1.0.30001761 to 1.0.30001762 in /studio by @dependabot[bot] in #3086
  • chore(studio-deps-dev)(deps-dev): bump electron-to-chromium from 1.5.266 to 1.5.267 in /studio by @dependabot[bot] in #2925
  • chore(studio-deps-dev)(deps-dev): bump webpack from 5.103.0 to 5.104.1 in /studio in the build-tools group by @dependabot[bot] in #3055
  • chore(studio-deps-dev)(deps-dev): bump update-browserslist-db from 1.2.2 to 1.2.3 in /studio by @dependabot[bot] in #3057
  • chore(studio-deps-dev)(deps-dev): bump watchpack from 2.4.4 to 2.5.0 in /studio by @dependabot[bot] in #3077
  • chore(studio-deps-dev)(deps-dev): bump @types/node from 24.10.1 to 25.0.2 in /studio by @dependabot[bot] in #2921
  • chore(studio-deps-dev)(deps-dev): bump @types/node from 25.0.2 to 25.0.3 in /studio by @dependabot[bot] in #3058
  • chore(deps-dev): bump @types/node from 24.10.1 to 25.0.2 in /e2e-studio by @dependabot[bot] in #2944
  • chore(deps-dev): bump @types/node from 25.0.2 to 25.0.3 in /e2e-studio by @dependabot[bot] in #3069

Resolved Issues

This release resolves the following issues:

  • #2775 - Unable to Execute SQL Script with IF Statement from Console
  • #1819 - Console Error on Attempt to Create an Index that Exists even with IF NOT EXISTS Clause
  • #2738 - Feature Request: FULL_TEXT / CONTAINSTEXT ordering
  • #3052 - Bug: Vector Quantization (INT8/BINARY) is fundamentally broken across all dimensions
  • #2964 - SQL: 'keys' method behaves differently than 'values' method
  • #3071 - Feature Request: Add Filtered Search Support to LSMVectorIndex
  • #3046 - Bug: Custom function with arguments
  • #3091 - Edge indexes become invalid in certain scenario
  • #2915 - HNSW Vector Index not properly persisted on database close

New Contributors

Upgrade Notes

This release is a drop-in replacement for previous 25.x versions. No database migration is required.

Important: If you are using vector indexes with INT8 or BINARY quantization, please rebuild your indexes after upgrading to ensure data integrity.

Full Changelog

Full Changelog: 25.11.1...25.12.1


Thank you to all contributors who made this release possible!

Don't miss a new arcadedb release

NewReleases is sending notifications on new releases.