Monday, 25 May 2020

Infinispan 11.0.0.CR1

Dear Infinispan community,

we’ve just released 11.0.0.CR1 which comes loaded with quite a few features and improvements.

Cross-Site Replication Improvements

The cross-site replication feature received two major improvements:

  • Support for multiple site masters

    The new algorithm is able to take advantage of multiple site masters, distributing load between them. If your environment is capable, increase the number of site masters in RELAY2 configuration:

    <relay.RELAY2 site="LON" max_site_masters="1000"/>
  • Conflict detection and resolution for Asynchronous Cross-Site Replication

    Taking advantage of vector clocks, in asynchronous mode, Infinispan is able to detect conflicts. A conflict happens when 2 or more sites update the same key at the same time. Conflicts are resolved based on the site’s names. Updates from the site lexicographically lower, take priority, in case of conflicts. As an example, if you have 3 sites, LON, NYC and SFO, conflicts between LON and NYC discards updates from NYC and keeps the updates from LON. You can choose the priority by prepending a number to the site name. For example, if you want updates from NYC to take priority, you can set the site name to “1-NYC”.

In a future update, Infinispan will allow you to set a custom conflict resolution algorithm.

Non-blocking internals

  • All thread pools collapsed into two pools: blocking and non-blocking

Persistence

  • A new non-blocking Store SPI

Clustering

  • More accurate segment rebalancing

  • Scaling without state-transfer (experimental)

Query/Indexing

  • SearchManager, CacheQuery are deprecated. Users are encouraged to migrate to Ickle String queries obtained from Search.getQueryFactory

Server Security

  • The server is now secure by default

  • New encrypted properties realm

  • Simplified authentication and authorization configuration to be as automatic as possible

Other Server changes

  • Datasources

  • Runtime logging configuration

  • Server report

CLI

  • User Tool merged into CLI

  • CLI can be compiled natively

  • Non-interactive usage

Console

  • Lots of UX improvements

Kubernetes/OpenShift operator

  • Cache CR

  • Service .Expose with Ingress and Route

Container images

  • Images based upon ubi-minimal:8.2

  • Native generation of config files in all images

  • Native server image available at infinispan/server-native (Experimental)

Documentation

  • Added procedural content for rolling upgrades, Cache CR with the Operator, server patching, misc CLI commands, using RemoteCacheConfigurationBuilder.

  • Procedural content for different upgrade and migration tasks included in Upgrade Guide.

  • Operator and Spring Boot Starter guides now provide stable and development versions from the index page.

  • Updated index.html and throughout documentation to improve high-level context and aid retrievability.

  • Getting Started content updated and streamlined.

  • Applied several modifications, additions, and removals to documentation via community feedback.

Get it, Use it, Ask us!

Please download, report bugs, chat with us, ask questions on StackOverflow.

Posted by Tristan Tarrant on 2020-05-25
Tags: release

Tuesday, 03 March 2020

Infinispan 11.0.0.Alpha2 and 10.1.3.Final

Dear Infinispan community,

we’ve just tagged a couple of releases.

First off is the second Alpha release of what will eventually become Infinispan 11. The release notes may not be exciting, but it is mostly preparatory work for the big features we are working on: vastly improved async cross-site replication, monitoring, query improvements, the console and the CLI, and more.

We also released a micro-update to 10.1 which fixes quite a few bugs, especially in the way we handle JMX and MP metrics and further improves the documentation.

New release naming scheme

Starting with the next development release of Infinispan 11, we will be adopting a new naming scheme. We will no longer be using the Alpha and Beta monikers, but we will use a progressive Dev suffix to indicate that it’s a development release. The next release will therefore be called 11.0.0.Dev03.

Get it, Use it, Ask us!

Please download, report bugs, chat with us, ask questions on StackOverflow.

Posted by Tristan Tarrant on 2020-03-03
Tags: release

Monday, 24 February 2020

Infinispan Operator 1.1.1 is out!

We’re pleased to announce version 1.1.1 of the Infinispan Operator for Kubernetes and OpenShift.

This release has focused on fixing bugs and improving robustness, mainly related to the following:

  • improving reconcile flow stability

  • reducing Operator CPU load

  • cleaning up logs

Our community documentation on https://infinispan.org/documentation has also been updated and improved. You can find some of the changes at:

Automatic Upgrades

If you installed the Infinispan Operator on Red Hat OpenShift with the Automatic Approval upgrade policy, your cluster should already be running the latest versions (Infinispan Operator 1.1.1 with Infinispan 10.1.2.Final).

We would like to hear opinions from you about the automated upgrade process, so get in touch if you have any issues or want to give any feedback.

Get it, Use it, Ask us!

Try the simple tutorial for the Operator, which has been updated for this version.

You can report bugs, chat with us, ask questions on StackOverflow.

Finally, a detailed list of issues and features for this version can be found here.

Posted by Vittorio Rigamonti on 2020-02-24
Tags: release operator

Monday, 10 February 2020

Infinispan Spring Boot Starter released with Spring Boot 2.2.4.RELEASE

Dear Infinispan and Spring Boot users,

We are pleased to announce the release of Infinispan Spring Boot  2.1.8.Final and 2.2.0.Final.

2.1.8.Final uses Infinispan 9.4.17.Final and Spring Boot 2.2.2.RELEASE

2.2.0.Final uses Infinispan 10.1.1.Final and Spring Boot 2.2.2.RELEASE 

Configuring Marshalling with Infinispan 10.x

Infinispan 10.x servers have some significant changes to marshalling that impact Spring Boot users.

The default Marshaller for Infinispan 10.x is ProtoStream, which uses Protocol Buffers to provide extensible, language and platform neutral serialization.

Unfortunately ProtoStream does not currently work with Infinispan Spring Cache and Session support. As a result, Spring users in Remote Client/Server Mode must use the Java Serialization Marshaller and add classes to a Java serialization whitelist.

Add the following configuration properties:

infinispan.remote.marshaller=org.infinispan.commons.marshall.JavaSerializationMarshaller infinispan.remote.java-serial-whitelist=org.infinispan.tutorial.simple.spring.remote.*

The infinispan.remote.java-serial-whitelist property specifies the classes, or packages, that Java serialization can marshall. Separate multiple class names with a comma (,).

Note that, in previous versions, JBoss Marshaller was the default for Infinispan. Spring users can also use JBoss Marshalling, but it is deprecated as of Infinispan 10.x.

Get it, Use it, Ask us!

You can find these releases in the maven central repository.

Please report any issues in our issue tracker and join the conversation in our Zulip Chat to shape up our next release.

Enjoy,

The Infinispan Team

Posted by Katia Aresti on 2020-02-10
Tags: release spring boot spring

Friday, 24 January 2020

Infinispan Operator 1.1.0 is out!

We’re pleased to announce version 1.1.0 of the Infinispan Operator for Kubernetes and OpenShift.

This release includes a bunch of very exciting features! Let’s dig into them:

Full Lifecycle

Infinispan Operator 1.1.0 is rated at the Full Lifecycle capacity level, which means the Operator now provides advanced cluster management capabilities and functionality to handle demanding workloads.

One of the key new features in this release is graceful shutdown, which lets you bring clusters down safely to avoid data loss.

During cluster shutdown, caches can passivate in-memory entries to persistent storage along with the internal Infinispan state that maps which nodes own which entries. When you bring Infinispan clusters back, all your data is restored to memory.

Check out the Graceful Shutdown docs for more information.

Graceful shutdown also enables the Infinispan Operator to perform reliable upgrades.

When a new version of the Infinispan Operator starts, it checks for running Infinispan clusters that were created by an older Operator version.

If the Operator detects a cluster that requires upgrade, it invokes a graceful shutdown on the cluster and then brings it back with the new Infinispan version.

You can perform upgrade manually or automatically with the Operator Lifecycle Manager on OpenShift.

Note that Operators installed via the OperatorHub on OpenShift Container Platform are managed by the Operator Lifecyle Manager.

Cache vs DataGrid

This version of the Infinispan Operator delivers Cache and DataGrid services.

By default the Operator starts Infinispan clusters as Cache services, which provides a quick way to set up in-memory caching that stores data off-heap and keeps single copies of data in the cluster.

DataGrid services, on the other hand, are suited to more advanced use cases where you control and define the configuration that you need.

Cross-Site Replication

The Infinispan Operator simplifies cross-site replication set up with DataGrid services so you can back data up between separate Kubernetes or OpenShift clusters.

All you need to do is specify which type of external Kubernetes service to expose, the list of all backup locations, access secrets, and the local site name.

Find out more at: Cross-Site Replication

Automatic TLS configuration

If you’re running on Openshift and have a service that serves certificates, the Operator automatically asks for certificates sets up TLS for your endpoint connections. Encrypted by default with zero effort!

Get it, Use it, Ask us!

Try the simple tutorial for the Operator, which has been updated for this version. The tutorial shows how to install the Operator manually, but it can also be installed via the Operator Hub on OpenShift.

You can report bugs, chat with us, ask questions on StackOverflow.

Finally, a detailed list of issues and features for this version can be found here.

Posted by Galder Zamarreño on 2020-01-24
Tags: release operator

Monday, 23 December 2019

Infinispan 10.1.0.Final

Hi there,

we finish 2019 in style with the Final release of Infinispan 10.1, codenamed "Turia".

Server console

The highlight of this release is the new server console which is now based on Patterfly 4 and React.js. We will soon have a blog post detailing the work that has been done and our future plans. In the meantime, here are a few screenshots:

Welcome Page
Console Caches
Console Cache Stats

Security

Many changes related to security have happened since 10.0:

  • Native SSL/TLS provided by WildFly OpenSSL. The server only ships with native libraries for Linux x86_64, but you can download natives for other platforms and architectures

  • Improved usability of the Hot Rod client configuration with better defaults

  • Full support for authorization for admin operations via the RESTful endpoint

  • Console authentication support

  • Kerberos authentication for both Hot Rod (GSSAPI, GS2) and HTTP/Rest (SPNEGO)

  • Improved LDAP realm configuration with connection tuning and attribute references

  • Rewritten client/server security documentation including examples on how to create certificate chains, connecting to various LDAP directories and KeyCloak, etc.

Server

  • A command-line switch to specify an alternate logging configuration file

  • Query and indexing operations/stats are now exposed over the RESTful API

  • Tasks and Scripting support

  • Support for binding the endpoints to 0.0.0.0 / ::0 (aka INADDR_ANY)

Non-blocking

More work has landed on the quest to completely remove blocking calls from our internals. The following have been made non-blocking:

  • State transfer

  • The size operation

  • Cache stream ops with primitive types

Additionally caches now have a reactive Publisher which is intended as a fully non-blocking approach to distributed operations.

Query

  • The query components have been reorganized so that they are more modular.

Monitoring

  • The introduction of histogram and timer metrics.

  • The /metrics endpoint now includes base and vendor microprofile metrics

Stores

  • The REST cache store has been updated to use the v2 RESTful API.

Removals and deprecations

  • The old RESTful API (v1) has been partially reinstated until 11.0. Bulk ops are disabled.

  • The Infinispan Lucene Directory has been deprecated.

  • The memcached protocol server has been deprecated. If you were relying on this, come and talk to us about working on a binary protocol implementation.

Bug fixes, clean-ups and documentation

Over 160 issues fixed including a lot of documentation updates. See the full list of changes and fixes

Get it, Use it, Ask us!

Please download, report bugs, chat with us, ask questions on StackOverflow.

Posted by Tristan Tarrant on 2019-12-23
Tags: release

Monday, 09 December 2019

Infinispan 10.1.0.CR1

Dear Infinispan community,

as we are closing in on 10.1, we have been working on a lot of polishing and bugfixing.

Server

  • The new console has received a lot of improvements,

  • A new welcome page

  • A command-line switch to specify an alternate logging configuration file

Query

The query components have been reorganized so that they are more modular.

Monitoring

  • The introduction of histogram and timer metrics.

Stores

  • The REST cache store has been updated to use the v2 RESTful API.

Removals and deprecations

  • The old RESTful API (v1) has been removed

  • The Infinispan Lucene Directory has been deprecated.

  • The memcached protocol server has been deprecated. If you were relying on this, come and talk to us about working on a binary protocol implementation.

Bug fixes, clean-ups and documentation

Over 40 issues fixed including a lot of documentation updates. See the full list of changes and fixes

Get it, Use it, Ask us!

Please download, report bugs, chat with us, ask questions on StackOverflow.

Infinispan 10.1.0.Final is scheduled for December the 20th.

Posted by Tristan Tarrant on 2019-12-09
Tags: release candidate release

Monday, 25 November 2019

Infinispan Operator 1.0.1

Dear Infinispan community,

we know you are happy with the new shining 10.0.0 Infinispan release, but if you are among those who are missing a new operator version for safely running your Infinispan Chupachabra in the clound, this post is for you!

Versioning and channels

This is our first blog post about 1.0.x operator series (yeah, sorry 1.0.0 we forgot about you) and as you can notice there’s no Alpha, Beta or CR label at the end of the release tag. This is because OperatorHub and Openshift Catalog only allow numerical version like Maj.Min.Mic and instead of labels we now use the channel to indicate the stability of a release. We have 2 live channels at the moment for the Infinispan operator: stable and dev-preview. Current stable is 0.3.2 which is for the 9.x Infinispan cluster and current dev-preview is 1.0.1 which works with 10.x clusters.

New features

  • New Infinispan image configuration: we cleaned up the image configuration process: instead of rely on a large set of env variables, now the operator configures the Infinispan image via a single .yaml file.

  • Container configurability: CR .yaml file lets you configure memory and CPU (and also extras Java opts) assigned to the container;

  • Encryption: TLS can be setup providing TLS certificates or using platform service as the Openshift seriving certs service (TLS will be on by default in the next release);

  • We now have some good docs: https://infinispan.org/infinispan-operator/master/operator.html;

  • Project README has been also improved: https://github.com/infinispan/infinispan-operator/blob/1.0.1/README.md;

Get it

The Infinispan Operator 1.0.1 works on Kind/Kubernetes 1.16 (CI) and Openshift 3.11, 4.x (developed on). You can install it:

And remember: it’s a dev-preview release, you can have a lot of fun with it!

Contribute

As usual source code is open at: https://github.com/infinispan/infinispan-operator. You can see what’s going on, comment the code or the new pull requests, ask for new features and also develop them!

Thanks for following us, Infinispan

Posted by Vittorio Rigamonti on 2019-11-25
Tags: dev-preview release

Monday, 18 November 2019

Infinispan 10.1.0.Beta1

Dear Infinispan community,

Quick on the heels of Infinispan 10.0 here comes the first Beta or 10.1.

Server

This release closes the gap between the legacy server and the new server we introduced in 10.0. In particular:

  • The reworked console (which will be described in detail in an upcoming series of blog posts)

  • Kerberos authentication for both Hot Rod (GSSAPI, GS2) and HTTP/Rest (SPNEGO)

  • Query and indexing operations/stats are now exposed over the RESTful API

  • Tasks and Scripting support

Non-blocking

More work has landed on the quest to completely remove blocking calls from our internals. The following have been made non-blocking:

  • the size operation

  • cache stream ops with primitive types

Additionally caches now have a reactive Publisher which is intended as a fully non-blocking approach to distributed operations.

Components upgrades

  • rxjava 2.2.12

  • smallrye metrics 2.3.0

  • microprofile metrics 2.2

Bug fixes, clean-ups and documentation

Over 40 bug fixes. See the full list of changes and fixes

Get it, Use it, Ask us!

Please download, report bugs, chat with us, ask questions on StackOverflow.

Infinispan 10.1.0.CR1 is scheduled for December the 7th.

Posted by Tristan Tarrant on 2019-11-18
Tags: beta release

Friday, 01 November 2019

Infinispan 10.0.1.Final

We are pleased to announce the availability of Infinispan 10.0.1.Final, which contains several bug fixes.

The release notes can be found here.

As usual you can ask questions on the forum, StackOverflow and interactively on our Zulip Chat. Please report any bugs you find on our Issue Tracker

Posted by Ryan Emerson on 2019-11-01
Tags: final release

News

Tags

JUGs alpha as7 asymmetric clusters asynchronous beta c++ cdi chat clustering community conference configuration console data grids data-as-a-service database devoxx distributed executors docker event functional grouping and aggregation hotrod infinispan java 8 jboss cache jcache jclouds jcp jdg jpa judcon kubernetes listeners meetup minor release off-heap openshift performance presentations product protostream radargun radegast recruit release release 8.2 9.0 final release candidate remote query replication queue rest query security spring streams transactions vert.x workshop 8.1.0 API DSL Hibernate-Search Ickle Infinispan Query JP-QL JSON JUGs JavaOne LGPL License NoSQL Open Source Protobuf SCM administration affinity algorithms alpha amazon annotations announcement archetype archetypes as5 as7 asl2 asynchronous atomic maps atomic objects availability aws beer benchmark benchmarks berkeleydb beta beta release blogger book breizh camp buddy replication bugfix c# c++ c3p0 cache benchmark framework cache store cache stores cachestore cassandra cdi cep certification cli cloud storage clustered cache configuration clustered counters clustered locks codemotion codename colocation command line interface community comparison compose concurrency conference conferences configuration console counter cpp-client cpu creative cross site replication csharp custom commands daas data container data entry data grids data structures data-as-a-service deadlock detection demo deployment dev-preview devnation devoxx distributed executors distributed queries distribution docker documentation domain mode dotnet-client dzone refcard ec2 ehcache embedded query equivalence event eviction example externalizers failover faq final fine grained flags flink full-text functional future garbage collection geecon getAll gigaspaces git github gke google graalvm greach conf gsoc hackergarten hadoop hbase health hibernate hibernate ogm hibernate search hot rod hotrod hql http/2 ide index indexing india infinispan infinispan 8 infoq internationalization interoperability interview introduction iteration javascript jboss as 5 jboss asylum jboss cache jbossworld jbug jcache jclouds jcp jdbc jdg jgroups jopr jpa js-client jsr 107 jsr 347 jta judcon kafka kubernetes lambda language leveldb license listeners loader local mode lock striping locking logging lucene mac management map reduce marshalling maven memcached memory migration minikube minishift minor release modules mongodb monitoring multi-tenancy nashorn native near caching netty node.js nodejs nosqlunit off-heap openshift operator oracle osgi overhead paas paid support partition handling partitioning performance persistence podcast presentations protostream public speaking push api putAll python quarkus query quick start radargun radegast react reactive red hat redis rehashing releaase release release candidate remote remote events remote query replication rest rest query roadmap rocksdb ruby s3 scattered cache scripting second level cache provider security segmented server shell site snowcamp spark split brain spring spring boot spring-session stable standards state transfer statistics store store by reference store by value streams substratevm synchronization syntax highlighting testing tomcat transactions uneven load user groups user guide vagrant versioning vert.x video videos virtual nodes vote voxxed voxxed days milano wallpaper websocket websockets wildfly workshop xsd xsite yarn zulip

back to top