Sameer
Sameer

Reputation: 1

Migrating from Infinispan 9.4.11 on K8S 1.11 to Infinispan 11.0.1 on K8S1.17

We were using Infinispan 9.4.11 deployed on OpenShift (v3.11, K8S version 1.11) using Infinispan Operator ver 0.0.3.

We used

  1. Default cache (one without a name)
  2. Java Serialization
  3. Hotrod protocol to access the remote cache

Things worked fine.

We are now migrating to K8S v1.17+ and our infra team tells us that Infinispan Operator v0.0.3 is incompatible with K8S v1.17+. They would like us to migrate to the latest version of Infinispan v11.0.1.

However, when we tried this, we face the below issues:

  1. The default cache is not available. We are forced to create a named cache.

2020-07-23 14:45:34,894 [HotRod-client-async-pool-1-1] WARN org.infinispan.HOTROD - ISPN004005: Error received from the server: org.infinispan.server.hotrod.CacheNotFoundException: Default cache requested but not configured

  1. Even when we create a named cache, we cannot use Java Serialization. RemoteCacheManager does not have a constructor to pass the GlobalConfigurationBuilder which is required to adjust the whitelist of classes that can be serialized.

Wanted to check if this is intentional and that we are forced to use a different serialization technique for a remote cache. Do we have to move to protobuff marshalling on v11.0.1?

Thank you.

Upvotes: 0

Views: 243

Answers (1)

pruivo
pruivo

Reputation: 1334

  1. yes, the default cache was removed and you have to set a name.
  2. you can configure JavaSerialization (see the documentation). Something like this:
ConfigurationBuilder builder =  new ConfigurationBuilder(); 
builder.addJavaSerialWhiteList("my.package.*") //you can set the class name or use regex
       .marshaller(JavaSerializationMarshaller.class);
RemoteCacheManager rcm = new RemoteCacheManager(builder.build());

Upvotes: 1

Related Questions