[JBoss JIRA] (ISPN-5458) Broken modules due to circular dependencies
by Gustavo Fernandes (JIRA)
Gustavo Fernandes created ISPN-5458:
---------------------------------------
Summary: Broken modules due to circular dependencies
Key: ISPN-5458
URL: https://issues.jboss.org/browse/ISPN-5458
Project: Infinispan
Issue Type: Bug
Components: Build process
Reporter: Gustavo Fernandes
There's still a circular dependency hell between hibernate search 5.2. (depends on infinispan 7.2.0.Final) and Infinispan (depends on hibernate Search 5.2.0.Final), causing failures on master:
{code}
Caused by: java.lang.Exception: {"JBAS014671: Failed services" => {"jboss.persistenceunit.\"master.war#pu-master\"" => "org.jboss.msc.service.StartException in service jboss.persistenceunit.\"master.war#pu-master\": org.jboss.modules.ModuleLoadError: org.infinispan:ispn-7.2
Caused by: org.jboss.modules.ModuleLoadError: org.infinispan:ispn-7.2"}}
{code}
There was an alias in place to mitigate that until hibernate search has infinispan dependency, but apparently it was removed on ISPN-5445
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
9 years, 8 months
[JBoss JIRA] (ISPN-5046) PartitionHandling: split during commit can leave the cache inconsistent after merge
by Pedro Ruivo (JIRA)
[ https://issues.jboss.org/browse/ISPN-5046?page=com.atlassian.jira.plugin.... ]
Pedro Ruivo updated ISPN-5046:
------------------------------
Git Pull Request: https://github.com/infinispan/infinispan/pull/3457 (was: https://github.com/infinispan/infinispan/pull/3358)
> PartitionHandling: split during commit can leave the cache inconsistent after merge
> -----------------------------------------------------------------------------------
>
> Key: ISPN-5046
> URL: https://issues.jboss.org/browse/ISPN-5046
> Project: Infinispan
> Issue Type: Bug
> Components: Core, State Transfer
> Affects Versions: 7.0.2.Final, 7.1.0.Alpha1
> Reporter: Dan Berindei
> Assignee: Pedro Ruivo
> Priority: Critical
> Fix For: 8.0.0.Final
>
>
> Say we have a cluster ABCD; a transaction T was started on A, with B as the primary owner and C the backup owner. B and C both acknowledge the prepare, and the network splits into AB and CD right before A sends the commit command. Eventually A suspects C and D, but the commit still succeeds on B before C and D are suspected. And SuspectExceptions are ignored for commit commands, so the user won't see any error.
> However, C will eventually suspect A and B. When the CD cache topology is installed, it will roll back transaction T. After the merge, both partitions are in degraded mode, so we assume that they both have the latest data and the key is never updated on C.
> From C's point of view, this is very similar to ISPN-3421. The fix should also be similar, we could delay the transaction rollback on C until we get a confirmation from B that T was not committed there. Since B is inaccessible, it will eventually get a SuspectException and the CD cache topology, at which point the cache is in degraded mode and it can wait for a merge. On merge, it should check the status of the transaction on B again, and either commit or rollback based on what B did.
> We also need to suspend the cleanup of completed transactions while the cache is in degraded mode, otherwise C might not find T on B after the merge.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
9 years, 8 months
[JBoss JIRA] (ISPN-5457) Infinispan with Wildfly 8.2 random fails using customized key2StringMapper
by Flemming Harms (JIRA)
[ https://issues.jboss.org/browse/ISPN-5457?page=com.atlassian.jira.plugin.... ]
Flemming Harms updated ISPN-5457:
---------------------------------
Git Pull Request: https://github.com/infinispan/infinispan/pull/3456
> Infinispan with Wildfly 8.2 random fails using customized key2StringMapper
> --------------------------------------------------------------------------
>
> Key: ISPN-5457
> URL: https://issues.jboss.org/browse/ISPN-5457
> Project: Infinispan
> Issue Type: Bug
> Components: Core
> Affects Versions: 6.0.2.Final
> Environment: OSX Yosemite, Wildfly 8.2
> Reporter: Flemming Harms
>
> Using JDBC string based store feature in combination with customize key2string mapper fails random with the error below. I track it down to be an issue in XmlConfigHelper when it call the “setValues” and iterate through the method names. The problem is if you have a class that overload methods, like it is with “JdbcStringBasedStoreConfigurationBuilder key2StringMapper(....)”, there is no guarantee it will choose the “key2StringMapper(String key2StringMapper)”
> *code snippets :*
> {noformat}
> for (Method m : objectClass.getMethods()) {
> if (setter.equals(m.getName()) || fluentSetter.equals(m.getName())) {
> Class<?> paramTypes[] = m.getParameterTypes();
> if (paramTypes.length != 1) {
> log.tracef("Rejecting setter %s on class %s due to incorrect number of parameters", m, objectClass);
> continue; // try another param with the same name.
> }
> Class<?> parameterType = paramTypes[0];
>
> PropertyEditor editor = PropertyEditorManager.findEditor(parameterType);
> if (editor == null) {
> throw new CacheConfigurationException("Couldn't find a property editor for parameter type " + parameterType);
> }
> editor.setAsText((String) attribs.get(propName));
> …
> }
> {noformat}
> *Suggested patch :*
> {noformat}
> diff --git a/core/src/main/java/org/infinispan/configuration/parsing/XmlConfigHelper.java b/core/src/main/java/org/infinispan/configuration/parsing/XmlConfigHelper.java
> index 5305e82..377f315 100644
> --- a/core/src/main/java/org/infinispan/configuration/parsing/XmlConfigHelper.java
> +++ b/core/src/main/java/org/infinispan/configuration/parsing/XmlConfigHelper.java
> @@ -425,6 +425,11 @@ public static void setValues(Object target, Map<?, ?> attribs, boolean isXmlAttr
> }
>
> Class<?> parameterType = paramTypes[0];
> +
> + if (parameterType.equals(Class.class)) {
> + log.tracef("Rejecting setter %s on class %s due to class parameter is type class", m, objectClass);
> + continue; // try another param with the same name.
> + }
> PropertyEditor editor = PropertyEditorManager.findEditor(parameterType);
> if (editor == null) {
> throw new CacheConfigurationException("Couldn't find a property editor for parameter type " + parameterType);
> {noformat}
> *Configuration wildfly 8.2 standanlone.xml snippets :*
> {noformat}
> <replicated-cache name="LuceneIndexesData" start="EAGER" mode="SYNC" remote-timeout="25000">
> <locking isolation="READ_COMMITTED" striping="false" acquire-timeout="330000" concurrency-level="500"/>
> <transaction mode="NONE"/>
> <eviction strategy="NONE" max-entries="-1"/>
> <expiration max-idle="-1"/>
> <state-transfer enabled="true" timeout="480000"/>
> <string-keyed-jdbc-store preload="true" passivation="false" fetch-state="true" singleton="true" datasource="java:jboss/datasources/PostgresDS" dialect="POSTGRES">
> <write-behind/>
> <property name="key2StringMapper">
> org.infinispan.lucene.LuceneKey2StringMapper
> </property>
> <string-keyed-table>
> <id-column name="ID_COLUMN" type="VARCHAR(255)"/>
> <data-column name="DATA_COLUMN" type="bytea"/>
> <timestamp-column name="TIMESTAMP_COLUMN" type="BIGINT"/>
> </string-keyed-table>
> </string-keyed-jdbc-store>
> <indexing index="NONE"/>
> </replicated-cache>
> {noformat}
> *Stacktrace :*
> {noformat}
> 18:32:55,218 ERROR [org.jboss.as.controller.management-operation] (ServerService Thread Pool -- 36) JBAS014612: Operation ("add") failed - address: ([
> ("subsystem" => "infinispan"),
> ("cache-container" => "hibernate-search"),
> ("replicated-cache" => "LuceneIndexesMetadata")
> ]): org.infinispan.commons.CacheConfigurationException: Couldn't find a property editor for parameter type class java.lang.Class
> at org.infinispan.configuration.parsing.XmlConfigHelper.setValues(XmlConfigHelper.java:430)
> at org.infinispan.configuration.cache.AbstractStoreConfigurationBuilder.withProperties(AbstractStoreConfigurationBuilder.java:91)
> at org.infinispan.configuration.cache.AbstractStoreConfigurationBuilder.withProperties(AbstractStoreConfigurationBuilder.java:9)
> at org.jboss.as.clustering.infinispan.subsystem.CacheAdd.processModelNode(CacheAdd.java:551)
> at org.jboss.as.clustering.infinispan.subsystem.ClusteredCacheAdd.processModelNode(ClusteredCacheAdd.java:69)
> at org.jboss.as.clustering.infinispan.subsystem.SharedStateCacheAdd.processModelNode(SharedStateCacheAdd.java:50)
> at org.jboss.as.clustering.infinispan.subsystem.CacheAdd.installRuntimeServices(CacheAdd.java:207)
> at org.jboss.as.clustering.infinispan.subsystem.CacheAdd.performRuntime(CacheAdd.java:181)
> at org.jboss.as.controller.AbstractAddStepHandler$1.execute(AbstractAddStepHandler.java:75)
> at org.jboss.as.controller.AbstractOperationContext.executeStep(AbstractOperationContext.java:660)
> at org.jboss.as.controller.AbstractOperationContext.doCompleteStep(AbstractOperationContext.java:501)
> at org.jboss.as.controller.AbstractOperationContext.completeStepInternal(AbstractOperationContext.java:298)
> at org.jboss.as.controller.AbstractOperationContext.executeOperation(AbstractOperationContext.java:293)
> at org.jboss.as.controller.ParallelBootOperationStepHandler$ParallelBootTask.run(ParallelBootOperationStepHandler.java:354)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [rt.jar:1.8.0_40]
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [rt.jar:1.8.0_40]
> at java.lang.Thread.run(Thread.java:745) [rt.jar:1.8.0_40]
> at org.jboss.threads.JBossThread.run(JBossThread.java:122)
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
9 years, 8 months