- #524: Batch ingesting docs into the KV store
- #371: Documents in failed CaS operations now get evicted correctly
- #434: Fix put/delete/CaS semantics when a transaction contains overlapping valid-time ranges for the same entity
- #545: Fix greater than range predicate bug on empty db
- #546:
crux.node/db
errors if provided a tx-time later than the latest completed tx, to preserve repeatability of queries.
- #506: Fix lifetime of EntityAsOfIdx within put/delete, was being closed too soon.
- #512: Fix race condition initialising id-hashing
These changes bump the index version to version 5 - a re-index of Crux nodes is required.
- #428: Time ranges removed from 'evict' command, see #PR438 for more details.
- #441: Fix two transactions updating the same entity in the same millisecond always returning the earlier of the two values - requires index rebuild.
- #326: Put/delete with start/end valid-time semantics made consistent
- #PR363: Allow
full-results?
and other boolean flags in a vector-style query - #372: Add support for Java collection types with submitTx
- #377: Can use 'cons' within query predicates
- #414: Developer tool for query tracing
- #430: Add LMDB configuration example to docs + tests
- #457: Allowing nil to be returned from tx-fns
- #362: Fixes 362 where hashes of small maps were dependent on order
- #365: Replace usages of 'pr-str' with 'pr-edn-str' under crux.io
- #367: Can query empty DB
- #351: Do not merge placeholders into unary results
- #368: Protect calls to modules when node is closed
- #418: Adds exception when query with order-by doesn't return variable ordered on
- #419: Fix specification for ':timeout' within queries.
- #440: Fix return type of 'documents' in the API.
- #453: Add nil check for queries in spec.
- #454: Add fix for tx-log breaking in spec after an eviction
- #482: Bringing README up to date.
- #486: Race condition initialising hash implementation
- #340: Breaking Improve node configuration API, introduce topologies
- #341: Various documentation improvements
- #352: Fix Kotlin multhreaded node-start issues
- #348: Increase range constraints var-frequency for join order
- #285: Various doc and tx spec enhancements
- #287: Caching checking of specs for queries, 30% speed up for simple queries
- PR #297: Support for PostgreSQL, MySQL, Oracle, SQLite, H2 via
crux-jdbc
(see subsequent commits on master
) - PR #319: Kafka source and sink connectors
- #176: Ingest API for some operations (without full node / indexes)
- PR #320: Experimental support for transaction functions (disabled by default)
- #314: NPE when submitting a query with empty args
- PR #300: Breaking replace all
usage of the word "system" with "node" (including APIs/docs/examples) e.g.
start-standalone-system
is now start-standalone-node
- PR #297: New
crux-jdbc
backend as an alternative to Kafka for clustered deployments
- PR #281: Breaking deprecate
juxt/crux
release, use crux-core
and new modular deps - #288: Allow
crux-kafka
client configuration via :kafka-properties-map
- #266:
event-log-dir
is mandatory for standalone mode - PR #235: Add entity cache to improve large query performance
- #268:
sync
timeout must be a duration - #272: HTTP server can use
#crux/id
reader
- #208: Breaking Remove need for specifying ID in put and cas operations
- #254: Breaking Move blocking
db
call to sync - PR #243: Refactoring: Split out api spec
- #240: Fix using maps as ID
- #241: Events checked against schema
- #198: Fix docs nav links in safari
- PR #206: Handle current max lag being unknown
- #222: Fix race with eviction and caching
- PR #174: Make
index
Reducible (thank you @mpenet) - #173: Include documents with queries results using
:full-results?
- #202: Enforced use of
Date
instead of Inst
within the transaction spec
- #183: Fixes for JDK8 compilation
- #180: Fix indexer replay of eviction transactions
- #189: Fix evictions in standalone mode
- #184: Improved testing for document eviction support
- PR #N: Breaking example
- #N: issue example
Can you improve this documentation? These fine people already did:
James Henderson, Jon Pither, Jeremy Taylor, Daniel Mason, Tom Taylor, Antonelli712, Dan Mason, Ivan Fedorov & Håkan RåbergEdit on GitHub