[JBoss JIRA] (ISPN-9258) Transactions dependency should not be provided
by Galder Zamarreño (JIRA)
[ https://issues.jboss.org/browse/ISPN-9258?page=com.atlassian.jira.plugin.... ]
Galder Zamarreño commented on ISPN-9258:
----------------------------------------
[~pruivo], I've created ISPN-9262 as follow up.
> Transactions dependency should not be provided
> ----------------------------------------------
>
> Key: ISPN-9258
> URL: https://issues.jboss.org/browse/ISPN-9258
> Project: Infinispan
> Issue Type: Bug
> Components: Hot Rod, Transactions
> Affects Versions: 9.3.0.CR1
> Reporter: Galder Zamarreño
> Assignee: Galder Zamarreño
> Priority: Blocker
> Fix For: 9.3.0.Final
>
>
> When starting Java Hot Rod client, I get:
> {code}
> java.lang.NoClassDefFoundError: javax/transaction/RollbackException
> at org.infinispan.client.hotrod.RemoteCacheManager.<init>(RemoteCacheManager.java:95)
> at org.infinispan.client.hotrod.RemoteCacheManager.<init>(RemoteCacheManager.java:106)
> at annotated.pojos.PokemonQueryTest.testPokemonQuery(PokemonQueryTest.java:26)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:498)
> at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
> at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
> at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
> at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
> at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
> at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
> at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
> at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
> at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
> at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
> at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
> at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
> at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
> at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
> at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:68)
> at com.intellij.rt.execution.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:47)
> at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:242)
> at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:70)
> Caused by: java.lang.ClassNotFoundException: javax.transaction.RollbackException
> at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
> at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
> ... 25 more
> {code}
> The way the code is designed, the javax.transaction dependency is not really provided.
> I'm going to submit a JIRA to make it not provided for now.
> [~pruivo], Can you then make the code isolate this so that it's only loaded if using transactions? Then it would be provided.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years, 10 months
[JBoss JIRA] (ISPN-9262) Make javax.transaction dependency really provided
by Galder Zamarreño (JIRA)
Galder Zamarreño created ISPN-9262:
--------------------------------------
Summary: Make javax.transaction dependency really provided
Key: ISPN-9262
URL: https://issues.jboss.org/browse/ISPN-9262
Project: Infinispan
Issue Type: Enhancement
Reporter: Galder Zamarreño
Assignee: Pedro Ruivo
Follow up to ISPN-9258, javax.transaction dependency should only be needed when user is using the corresponding APIs.
Marking the dependency as provided is not enough, the code should be modularized so that the client code that deals with transactions depending on javax.transaction is only loaded when such APIs are used.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years, 10 months
[JBoss JIRA] (ISPN-8905) Segment-aware non-shared cache stores
by William Burns (JIRA)
[ https://issues.jboss.org/browse/ISPN-8905?page=com.atlassian.jira.plugin.... ]
William Burns updated ISPN-8905:
--------------------------------
Fix Version/s: 9.4.0.Final
(was: 9.3.0.Final)
> Segment-aware non-shared cache stores
> -------------------------------------
>
> Key: ISPN-8905
> URL: https://issues.jboss.org/browse/ISPN-8905
> Project: Infinispan
> Issue Type: Enhancement
> Components: Loaders and Stores
> Reporter: William Burns
> Assignee: William Burns
> Fix For: 9.4.0.Final
>
>
> Non shared stores should allow for segment based store separation. This might involve creating a store per segment. But this allows for superior iteration performance over a subset of segments.
> Distributed stores benefit the most from this due to the fact that iteration is done at the segment level to help ensure that duplicate entries are not retrieved. It also would be beneficial for state transfer and other operations that operate only upon a given set of segments.
> This could be advantageous even for REPL and LOCAL caches as there is then a very clear separation of stores to process in parallel for given operations. This would have to be verified with tests to see if this is worth it though.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years, 10 months