Details
-
Bug
-
Resolution: Not a Bug
-
Blocker
-
None
-
7.4.0.GA
-
None
-
False
-
False
-
Undefined
Description
When cache is backed by DB2 database, no session key can be stored:
2021-04-12 11:08:23,431 ERROR [org.infinispan.PERSISTENCE] (blocking-thread--p10-t3) ISPN008024: Error while storing string key to database; key: '08bWdRBn5Wmv8KDQIspOVNjhr4ws-ud-7ukNQmZ06J': com.ibm.db2.jcc.am.SqlDataException: DB2 SQL Error: SQLCODE=-302, SQLSTATE=22001, SQLERRMC=null, DRIVER=4.25.23 at deployment.db2-connector.jar//com.ibm.db2.jcc.am.b6.a(b6.java:802) at deployment.db2-connector.jar//com.ibm.db2.jcc.am.b6.a(b6.java:66) at deployment.db2-connector.jar//com.ibm.db2.jcc.am.b6.a(b6.java:140) at deployment.db2-connector.jar//com.ibm.db2.jcc.am.k3.b(k3.java:2471) at deployment.db2-connector.jar//com.ibm.db2.jcc.am.k3.c(k3.java:2452) at deployment.db2-connector.jar//com.ibm.db2.jcc.t4.ab.n(ab.java:914) at deployment.db2-connector.jar//com.ibm.db2.jcc.t4.ab.a(ab.java:120) at deployment.db2-connector.jar//com.ibm.db2.jcc.t4.p.a(p.java:50) at deployment.db2-connector.jar//com.ibm.db2.jcc.t4.aw.b(aw.java:220) at deployment.db2-connector.jar//com.ibm.db2.jcc.am.k4.bm(k4.java:3628) at deployment.db2-connector.jar//com.ibm.db2.jcc.am.k4.a(k4.java:4673) at deployment.db2-connector.jar//com.ibm.db2.jcc.am.k4.b(k4.java:4211) at deployment.db2-connector.jar//com.ibm.db2.jcc.am.k4.be(k4.java:829) at deployment.db2-connector.jar//com.ibm.db2.jcc.am.k4.executeUpdate(k4.java:803) at org.jboss.ironjacamar.jdbcadapters@1.4.30.Final-redhat-00001//org.jboss.jca.adapters.jdbc.CachedPreparedStatement.executeUpdate(CachedPreparedStatement.java:121) at org.jboss.ironjacamar.jdbcadapters@1.4.30.Final-redhat-00001//org.jboss.jca.adapters.jdbc.WrappedPreparedStatement.executeUpdate(WrappedPreparedStatement.java:537) at org.infinispan.persistence.jdbc@11.0.9.Final-redhat-00001//org.infinispan.persistence.jdbc.stringbased.JdbcStringBasedStore.executeUpsert(JdbcStringBasedStore.java:248) at org.infinispan.persistence.jdbc@11.0.9.Final-redhat-00001//org.infinispan.persistence.jdbc.stringbased.JdbcStringBasedStore.write(JdbcStringBasedStore.java:233) at org.infinispan.persistence.jdbc@11.0.9.Final-redhat-00001//org.infinispan.persistence.jdbc.stringbased.JdbcStringBasedStore.write(JdbcStringBasedStore.java:213) at org.infinispan.persistence.jdbc@11.0.9.Final-redhat-00001//org.infinispan.persistence.jdbc.stringbased.JdbcStringBasedStore.write(JdbcStringBasedStore.java:204) at org.infinispan@11.0.9.Final-redhat-00001//org.infinispan.persistence.support.NonBlockingStoreAdapter.lambda$write$9(NonBlockingStoreAdapter.java:218) at java.base/java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1736) at org.jboss.threads@2.4.0.Final-redhat-00001//org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35) at org.jboss.threads@2.4.0.Final-redhat-00001//org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:1990) at org.jboss.threads@2.4.0.Final-redhat-00001//org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1486) at org.jboss.threads@2.4.0.Final-redhat-00001//org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1377) at org.jboss.as.clustering.common@7.4.0.GA-redhat-20210409//org.jboss.as.clustering.context.ContextReferenceExecutor.execute(ContextReferenceExecutor.java:49) at org.jboss.as.clustering.common@7.4.0.GA-redhat-20210409//org.jboss.as.clustering.context.ContextualExecutor$1.run(ContextualExecutor.java:70) at java.base/java.lang.Thread.run(Thread.java:834)
Cache database is configured like this:
/subsystem=jgroups/channel=ee:write-attribute(name=stack,value=tcp) /subsystem=infinispan/cache-container=web/invalidation-cache=offload:add() data-source add --name=testDS --jndi-name=java:jboss/datasources/testDS --driver-name=db2-connector.jar --connection-url=jdbc:db2://[redacted] --enabled=true --jta=true --use-java-context=true --transaction-isolation=TRANSACTION_READ_COMMITTED --min-pool-size=1 --max-pool-size=5 --pool-prefill=true --user-name=[redacted] --password=[redacted] --prepared-statements-cache-size=32 --share-prepared-statements=true /subsystem=infinispan/cache-container=web/invalidation-cache=offload/store=jdbc:add(data-source=testDS,fetch-state=false,passivation=false,purge=false,shared=true,dialect=DB2){allow-resource-service-restart=true} /subsystem=infinispan/cache-container=web/invalidation-cache=offload/store=jdbc/table=string:write-attribute(name=id-column.name,value=id) /subsystem=infinispan/cache-container=web/invalidation-cache=offload/store=jdbc/table=string:write-attribute(name=data-column.name,value=datum) /subsystem=infinispan/cache-container=web/invalidation-cache=offload/store=jdbc/table=string:write-attribute(name=timestamp-column.name,value=version) /subsystem=infinispan/cache-container=web/invalidation-cache=offload/store=jdbc/table=string:write-attribute(name=id-column.type,value=VARCHAR(255)) /subsystem=infinispan/cache-container=web/invalidation-cache=offload/store=jdbc/table=string:write-attribute(name=timestamp-column.type,value=BIGINT) /subsystem=infinispan/cache-container=web/invalidation-cache=offload/store=jdbc/table=string:write-attribute(name=data-column.type,value=BLOB(3000)) /subsystem=infinispan/cache-container=web:write-attribute(name=default-cache, value=offload) /subsystem=transactions:write-attribute(name=node-identifier,value=wildfly3)