Infinispan 9.1 "Bastille"
Dear Infinispan users,
after 3½ months, we are proud to present to you our latest stable release, Infinispan 9.1, codenamed "https://revbrew.com/beer/archive/bastille[Bastille]".
While minor releases are traditionally evolutionary instead of revolutionary, this release still comes loaded with a number of great features:
A new clustered cache, similar to a distributed cache, but with a higher write throughput.
An overhaul to partition handling which allows much finer control about whether to allow reads and writes in split clusters and how data is reconciled when partitions are merged.
An implementation of clustered counters with both strong and weak semantics, threshold events, optional persistence and bounding. Currently these are only available in embedded mode, but they will be usable over Hot Rod in Infinispan 9.2.
Locked streams allow you to run your stream processing operations knowing that another update cannot be performed while the Consumer is executed on an entry. Note this only works in non transactional and pessimistic transactional caches (optimistic transactional caches are not supported).
The compute(), computeIfPresent() and computeIfAbsent() methods on the Cache interface are now implemented as proper distributed operations so that they run local to the entries. The DeltaAware interface for supporting granular clustered operations has been deprecated in favour of functional commands.
The CacheStore SPI now supports write batching. The JDBC, JPA, RocksDB, Remote and File stores have been modified to take advantage of this. You should see great benefits when using write-behind or when using putAll operations.
Remote query now also works with Java entities annotated with Hibernate Search annotations and JBoss Marshalling without requiring ProtoBuf.
The REST endpoint has been completely rewritten so that it now supports both HTTP/1.1 and HTTP/2 as well as ALPN (even on Java 8). The new endpoint is also 30% faster during reads and 6% faster during writes.
The Java Hot Rod client now has proper entrySet(), keySet() and values() implementations which iterate over the remote data instead of pulling it all locally. It is now also finally possible to create and remove caches directly from the client.
The console has received a number of updates for usability and consistency. It is also finally possible to configure and manage the remote endpoints.
We have also dropped the guillotine on a large number of bugs.
If all goes well, we plan to release Infinispan 9.2 at the end of October, with lots of great updates.
The Infinispan team
Tags: release final