date: 2025-12-03 title: 'Spice v1.10.0-rc.1 (Dec 2, 2025)' type: blog authors: [mach-kernel] tags: [release, caching, acceleration, dynamodb, cayenne, data-connector, distributed-query, performance]
Announcing the release of Spice v1.10.0-rc.1! ⚡
v1.10.0-rc1 is a release candidate for early testing of v1.10 features including an all new caching acceleration mode, tiny_lfu caching policy, a new DynamoDB Streams connector (Preview), improvements to the DynamoDB connector, faster distributed query execution, S3 connector improvements, and security hardening for v1.10.0-stable.
This release introduces a new caching acceleration mode (opens in a new tab) that implements the stale-while-revalidate (SWR) pattern using Data Accelerators such as DuckDB or Cayenne, enabling queries to return file-persisted cached results immediately while asynchronously refreshing data in the background. Combined with the new TinyLFU cache eviction policy (opens in a new tab), Spice can now maintain higher cache hit rates while keeping memory usage predictable.
Key Features:
Example Spicepod.yml configuration:
For more details, refer to the Data Acceleration Documentation (opens in a new tab) and Caching Documentation (opens in a new tab).
DynamoDB Connector now integrates with DynamoDB Streams which enables real-time streaming with support for both table bootstrapping and continuous change data capture (CDC). This connector automatically detects changes in DynamoDB tables and streams them into Spice for real-time query, search, and LLM-inference.
Key Features:
Example Spicepod.yml configuration:
For more details, refer to the DynamoDB Connector Documentation (opens in a new tab).
The Cayenne data accelerator (opens in a new tab) now supports:
Example Spicepod.yml configuration:
For more details, refer to the Cayenne Documentation (opens in a new tab).
S3 Location Predicate Pruning: The S3 data connector (opens in a new tab) now supports location-based predicate pruning, dramatically reducing data scanned by pushing down predicates to S3 listing operations. This optimization is especially effective for partitioned datasets stored in S3.
AWS S3 Tables Write Support: Full read/write capability for AWS S3 Tables (opens in a new tab), enabling fast integration with AWS's table format for S3.
For more details, refer to the S3 Tables Data Connector Documentation (opens in a new tab) and Glue Data Connection Documentation (opens in a new tab).
Distributed query (opens in a new tab) planning and execution have been significantly improved:
DistributeFileScanOptimizer improvements for faster planning with large datasetsFor more details, refer to the Distributed Query Documentation (opens in a new tab).
Search (opens in a new tab) capabilities have been improved with several performance and reliability enhancements:
list_vectors calls for better performanceIndexerExec now properly handles limit pushdown for more efficient searchesFor more details, refer to the Search Documentation (opens in a new tab).
Multiple security improvements have been implemented:
top_n_sample order_by parsing.clear history command in the REPL to fully clear persisted historyNo breaking changes.
No major cookbook updates. The Spice Cookbook (opens in a new tab) still offers 82+ recipes to help you prototype quickly.
To try v1.10.0-rc1, use one of the following methods:
CLI:
Homebrew:
Docker:
Pull the spiceai/spiceai:1.10.0-rc1 image:
For available tags, see DockerHub (opens in a new tab).
Helm:
AWS Marketplace:
🎉 Spice is available in the AWS Marketplace (opens in a new tab).
.clear history by @lukekim (opens in a new tab) in #8254 (opens in a new tab)sort_columns on insert by @lukekim (opens in a new tab) in #8091 (opens in a new tab)caching by @lukekim (opens in a new tab) in #8237 (opens in a new tab)dynamodb-streams crate by @krinart (opens in a new tab) in #8283 (opens in a new tab)list_vectors (or equivalent) when indexing into VectorIndexs by @Jeadie (opens in a new tab) in #8282 (opens in a new tab)IndexerExec to properly handle limit pushdown by @sgrebnov (opens in a new tab) in #8366 (opens in a new tab)stale-while-revalidate pattern. by @phillipleblanc (opens in a new tab) in #8365 (opens in a new tab)