This is an optional release that introduces the CDB64-based historical root TX index, a new lookup source for resolving data items to their root transactions. The CDB64 format provides fast O(1) lookups from pre-generated index files, enabling efficient root TX resolution for historical data without database queries. Pre-generated CDB64 index files will be made available in the coming weeks.
Added
- CDB64-Based Historical Root TX Index: New lookup source for root transaction IDs using the compact CDB64 file format
- Enable by adding 'cdb' to
ROOT_TX_LOOKUP_ORDER(e.g.,db,cdb,gateways,graphql) - Reads from
data/cdb64-root-tx-indexdirectory (configurable viaCDB64_ROOT_TX_INDEX_DATA_PATHin Docker) - Multi-file directory support with runtime file watching (new
.cdbfiles automatically loaded without restart) - File watching can be disabled via
CDB64_ROOT_TX_INDEX_WATCH=false - CLI tools for index generation and data extraction:
- SQLite to CDB64 export (
tools/export-sqlite-to-cdb64) - CSV to CDB64 generation with RFC 4180 support (
tools/generate-cdb64-root-tx-index) - Rust-backed CDB64 generation for high-throughput (
tools/generate-cdb64-root-tx-index-rs) - CDB64 to CSV export (
tools/export-cdb64-root-tx-index)
- SQLite to CDB64 export (
- Binary compatibility with Rust cdb64-rs for cross-language interoperability
- CDB64 file format specification documentation (
docs/cdb64-format.md)
- Enable by adding 'cdb' to
Fixed
- Expose
ROOT_TX_LOOKUP_ORDERenvironment variable in docker-compose.yaml (was missing from previous releases)
Docker Images
| Image | SHA |
|---|---|
| ghcr.io/ar-io/ar-io-core | b7523578c7e1103d2e50f3a19e39e71d6e466ebd
|
| ghcr.io/ar-io/ar-io-envoy | b7523578c7e1103d2e50f3a19e39e71d6e466ebd
|
| ghcr.io/ar-io/ar-io-clickhouse-auto-import | b7523578c7e1103d2e50f3a19e39e71d6e466ebd
|
| ghcr.io/ar-io/ar-io-litestream | b7523578c7e1103d2e50f3a19e39e71d6e466ebd
|
| ghcr.io/ar-io/ar-io-observer | 0380592e095cd7bf645f6d132b97301d2dad8101
|