Uploaded image for project: 'WildFly'
  1. WildFly
  2. WFLY-13681

Infinispan cache configured with remote-store with rawValues fails

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Major Major
    • None
    • 20.0.1.Final
    • Clustering
    • None

      As mentioned in $subject, this currently fails with the exception due the fact that infinispan-jboss-marshalling is not available in Wildfly 20.0.1, however infinispan remoteStore configured with rawValues currently relies on it as can be seen on this line: https://github.com/infinispan/infinispan/blob/10.1.8.Final/persistence/remote/src/main/java/org/infinispan/persistence/remote/RemoteStore.java#L108

      The error is like this:

      Caused by: java.lang.ClassNotFoundException: org.infinispan.jboss.marshalling.commons.GenericJBossMarshaller from [Module "org.infinispan.persistence.remote" version 10.1.8.Final from local module loader @5f2108b5 (finder: local module finder @31a5c39e (roots: /tmp/wildfly-20.0.1.Final/modules,/tmp/wildfly-20.0.1.Final/modules/system/layers/base))]
      

      Steps to reproduce with more details:

      1) Start infinispan server on your laptop. Assumption is, it is started on virtual host "jdg1" on port 11222 listening to hotrod.

      2) Configure standalone-ha.xml and add socket-binding like this:

              <outbound-socket-binding name="cache-server">
                  <remote-destination host="${cache.hotrod.host}" port="${cache.hotrod.port}"/>
              </outbound-socket-binding>
      

      and the infinispan cache like this:

                      <replicated-cache name="employee-distributable-cache" statistics-enabled="true">
                          <locking isolation="REPEATABLE_READ"/>
                          <transaction mode="BATCH"/>
                          <remote-store cache="employee-distributable-cache" remote-servers="cache-server" passivation="false" preload="false" purge="false" shared="true">
                              <property name="rawValues">true</property>
                              <property name="protocolVersion">${keycloak.connectionsInfinispan.hotrodProtocolVersion:2.6}</property>
                          </remote-store>
                      </replicated-cache>
      

      3) Deploy the application from the attachement of this JIRA (it should ensure that cache is started at startup)

      4) Start the server with:

      ./standalone.sh -c standalone-ha.xml -Dcache.hotrod.host=jdg1 -Dcache.hotrod.port=11222
      

      5) See server.log attachement for the full exception stacktrace

              pferraro@redhat.com Paul Ferraro
              mposolda@redhat.com Marek Posolda
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated: