]
Pedro Ruivo updated ISPN-4639:
------------------------------
Status: Resolved (was: Pull Request Sent)
Fix Version/s: 7.0.0.Beta2
Resolution: Done
IndexingConfigurationBuilder query module validation is wrong
-------------------------------------------------------------
Key: ISPN-4639
URL:
https://issues.jboss.org/browse/ISPN-4639
Project: Infinispan
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: Configuration
Affects Versions: 7.0.0.Beta1
Reporter: Paul Ferraro
Assignee: William Burns
Priority: Critical
Fix For: 7.0.0.Beta2
The query module is ultimately loaded by the ComponentRegistry, which will load its
modules via the classloader returned by GlobalConfiguration.classLoader(). However, the
logic in IndexingConfigurationBuilder.validate(...) tests that the query module classes
are accessible from the classloader that loaded the IndexingConfigurationBuilder itself.
In WildFly, to use querying, one would use the following configuration:
<cache-container module="org.infinispan.query"/>
Internally, this configures Infinispan's GlobalConfiguration with the classloader of
the "org.infinispan.query" module.
However, the IndexingConfigurationBuilder class is contained in the
"org.infinispan" - which does not depend on the "org.infinispan.query"
module. Consequently, IndexingConfigurationBuilder validation fails, even though the
module would have been successfully loaded at runtime.