Blogs Infinispan 15.0.0.Dev02

Infinispan 15.0.0.Dev02

Infinispan 15.0.0.Dev02 marks the beginning of a new development cycle, and there are a number of notable changes that we are making that deserve a detailed post.

Bye bye, Java EE, Hello Jakarta EE

We’ve made the decision to drop Java EE support completely and focus solely on Jakarta EE. For 14.0 we provided artifacts for both, but we believe the time has come to move on. All of the leading application servers (like WildFly and OpenLiberty) as well as the most important stacks (like Quarkus and Spring) have adopted Jakarta EE, so we’ve decided it was time for us to make the move too.

JCache changes

The choice to drop Java EE directly impacts our JCache provider implementation. The JCache API (aka JSR 107) is essentially in maintenance mode: it was never adopted by Java EE and there are a number of obstacles (mostly legal) that prevent it from moving to Jakarta EE. We understand the need to have an implementation agnostic caching API, so we are going to continue supporting our JCache provider, but we will drop those parts which require Java EE, most notably the javax.cache.annotation package. Hopefully a modern caching API will emerge as part of Jakarta EE.

Dropping Spring 5 / Spring Boot 2 support

Dropping Java EE also means having to drop Spring 5 and Spring Boot 2 support.

Quarkus

We’ve merged our Quarkus components (embedded, CLI and server) into the main repository and have upgraded them to Quarkus 3.0. Our client extension continues to be part of the Quarkus ecosystem.

Security Manager

The Java Security Manager has been deprecated for removal. It was designed mostly for sandboxing Java applets, but it was somehow (wrongly) co-opted as a way to implement similar functionality for normal Java applications. It was slow and cumbersome, and we’re glad to see it go. Luckily, the removal of SecurityManager support from Infinispan does not affect its authentication and authorization capabilities.

Java 17 and 21

Starting with Infinispan 15, we will baseline on JDK 17 and also offer support for JDK 21, including virtual threads.

But what if I rely on JavaEE, Spring 5, Spring Boot 2 and JCache annotations ?

Don’t worry, we have you covered for quite some time, as we will continue to support Infinispan 14.0 for quite a while, with security patches, bug fixes and improvements that we can backport.

Other features and tentative release date

What you can expect to see in Infinispan 15:

  • many improvements to our Redis-compatible RESP endpoint, including many more commands

  • a completely overhauled Memcached endpoint with support for authentication and the binary protocol

  • improved performance across the board, with particular focus on the remote endpoints and clustering

  • CDC integration, courtesy of our friends over at Debezium

  • Much more!

We hope to have the final release of Infinispan 15 ready for consumption by the end of the year and we will be making regular development releases.

Get them from our download page.]

Get it, Use it, Ask us!

We’re hard at work on new features, improvements and fixes, so watch this space for more announcements!

Please, download and test the latest release.

The source code is hosted on GitHub. If you need to report a bug or request a new feature, look for a similar one on our JIRA issues tracker. If you don’t find any, create a new issue.

If you have questions, are experiencing a bug or want advice on using Infinispan, you can use StackOverflow. We will do our best to answer you as soon as we can.

The Infinispan community uses Zulip for real-time communications. Join us using either a web-browser or a dedicated application on the Infinispan chat.

Tristan Tarrant

Tristan has been leading the Infinispan Engineering Team at Red Hat for the past five years as well as being Principal Architect for Red Hat Data Grid. He’s been a passionate open-source advocate and contributor for nearly three decades.