Repository navigation
Release Date: October 07, 2026
New Features
- Support HyperLogLog (HLL) bins and operations. [CLIENT-4724]
- Support GeoJSON. [CLIENT-4726]
- Support path expressions and set indexes. [CLIENT-4813]
- Support server-side AEL. [CLIENT-4734]
- Support AEL for modify operations. [CLIENT-4816]
- Enable server-side AEL for server versions 8.2.0 and later. [CLIENT-5162]
- Replace client-side AEL parsing with server-side parsing. [CLIENT-5163]
- Support query ops projection. [CLIENT-4005]
- Support string operations and expressions, including write flags on regexReplace() and the new toStringExp(). [CLIENT-4828]
- Support string append/prepend operations and expressions. Exp.regexCompare() is replaced by StringExp.regexCompare(). [CLIENT-4951]
- Expose CREATE_ONLY and UPDATE_ONLY string write flags. [CLIENT-5363]
- Add string operation wrappers to the CDT builders. stringConcat() is renamed to concat(). [CLIENT-5444]
- Add StringOperation and StringExp modify methods that take a StringWriteOptions argument. [CLIENT-5504]
- Add the 1-argument snip(start) overload on the operate and expression paths. [CLIENT-5443]
- Expose string_list_join as ListOperation.join() and ListExp.join(). [CLIENT-5336]
- Support object mapping. [CLIENT-4861] [CLIENT-4653]
- Add a fluent bit-operation API for BLOB bins. [CLIENT-5037]
- Support base64 encode in bit operations. [CLIENT-5345]
- Implement missing CDT methods. [CLIENT-5401]
- Support server-side index selection. [CLIENT-4800]
- Support server enhanced error messages, including extended error detail in batch commands. [CLIENT-4789]
- Support detailed errors in secondary index queries. [CLIENT-5254]
- Add a Session createIndex() overload that takes an AEL string to create an expression-based index. [CLIENT-5220]
- Extend the ability to block scans to behaviors as well as hints. [CLIENT-5206]
- Implement the last part of the enhanced expression API of server 8.1.2. [CLIENT-5563]
- Support attaching an index Filter to a query. [CLIENT-5571]
- Support explicit index filters on background tasks. [CLIENT-5578]
- Support client metrics. [CLIENT-5035]
Bug Fixes
- Reset the transaction before retrying it. [CLIENT-4773]
- Fix dynamic config to allow overrides. [CLIENT-4991]
- Reject negative selectByPath() / modifyByPath() flags instead of masking them into a valid operation. [CLIENT-5197]
- Do not include the subCode in the server-returned message, since AerospikeException.getMessage() already includes it. [CLIENT-5328]
- Stop drain() from recovering a connection on authentication failure. [CLIENT-5370]
- Fix error handling with multiple chunks in dataset queries. [CLIENT-5352]
- Report a failed query instead of ending its stream. [CLIENT-5406]
- Fix a startup race where connect() returned before the partition map was populated. [CLIENT-5373]
- Handle abort after a failed commit. Add TxnState.COMMIT_FAILED and merge CommitStatus and AbortStatus into TxnStatus. [CLIENT-5480]
- Retain the HLL type when a nested HLL in a list is read from or written to the server, instead of converting it to a byte array. [CLIENT-5496]
- Fix processing in onMapRankRange(). [CLIENT-5516]
- Fix MapIndexRange with a count of 0. [CLIENT-5525]
- Fix getFirst() throwing when records are filtered out and includeMissingKeys is true. [CLIENT-5487]
- Fix explainWhereFlags() to check for non-existent query hints. [CLIENT-5483]
- Fix the docs for conversion operations and expressions to specify the correct error codes when a conversion fails. [CLIENT-5417]
Improvements
- AerospikeMap changes: create maps by MapOrder instead of map Type, default to TreeMap for ordered maps, and preserve order on put() and putAll(). [CLIENT-4769]
- For builder methods that take a Consumer, add an overload that takes X directly. [CLIENT-4837]
- Replace the old Log with an slf4j implementation. [CLIENT-5006]
- Change AEL query parameters from $1, $2, ... to ?0, ?1, .... [CLIENT-5048]
- Use a passive CompletableFuture drain for async record streams. [CLIENT-5010]
- Add debug logs for query plan output. [CLIENT-5066]
- Support a multibyte flag prefix in index selection. [CLIENT-5165]
- Update the string CTX wire shape for SERVER-1483. [CLIENT-5311]
- Log a warning when an indexed query runs inside a transaction. [CLIENT-5404]
- Surface commit status to the user. [CLIENT-5412]
- Add toString() methods to customer-facing container types. [CLIENT-5374]
- Add convenience methods for mapping functions. [CLIENT-5396]
- Remove BinsValueBuilder from the API. [CLIENT-5389]
- Change the server version reference from 8.1.3 to 8.2.0. [CLIENT-5451]
- Make DefaultRecordMappingFactory mutable and thread-safe. [CLIENT-5500]
- Rename the dynamic config environment variable to AEROSPIKE_SDK_CONFIG_URL. [CLIENT-5531]
- Allow transactions that have no database reads or writes. [CLIENT-5526]
- Default abandonCallAfter (totalTimeout) to zero for index queries. [CLIENT-5522]
- IndexQueryBuilderImpl.executeAsync() now runs the query planner asynchronously. [CLIENT-5523]
- Consistent error handling. [CLIENT-5521]
- Improve transaction retry logic. [CLIENT-5588]
- Restore getAsMap() and getAsOrderedMap(), which now return an AerospikeMap instance. [CLIENT-5517]
- Add an example code execution model. [CLIENT-5050]
- Add SDK examples for UDFs, transactions, exceptions and indexes. [CLIENT-5278]
- Update the documentation to match the latest code. [CLIENT-5279]
- Upgrade bcprov-jdk18on to 1.85.
Full Changelog: v0.9.0-alpha.2...v1.0.0