[JBoss JIRA] (ISPN-4763) Create a new status for when put/putIfAbsent/replace return the previous value
by Galder Zamarreño (JIRA)
Galder Zamarreño created ISPN-4763:
--------------------------------------
Summary: Create a new status for when put/putIfAbsent/replace return the previous value
Key: ISPN-4763
URL: https://issues.jboss.org/browse/ISPN-4763
Project: Infinispan
Issue Type: Enhancement
Components: Remote Protocols
Reporter: Galder Zamarreño
Assignee: Galder Zamarreño
Fix For: 7.0.0.CR1, 7.0.0.Final
With the current protocol way of handling previous, the client needs to track the request's return previous flag value when it needs to decide whether to decode the previous value in the response or it.
Doing this ties the decoder with the request made. It would be better for the put/putIfAbsent/replace operations to provide a different status code, say 0x04 for when the operation succeeds and the previous value follows. By doing this, the decode has all it needs to decode in the actual response, rather than having to remember what the request flag was.
This can easily be fixed in Hot Rod 2.0 protocol.
--
This message was sent by Atlassian JIRA
(v6.3.1#6329)
11 years, 6 months
[JBoss JIRA] (ISPN-4762) Provide hooks in NettyTransport to verify if the masterGroup and workGroup have completely shut down
by Duncan Doyle (JIRA)
Duncan Doyle created ISPN-4762:
----------------------------------
Summary: Provide hooks in NettyTransport to verify if the masterGroup and workGroup have completely shut down
Key: ISPN-4762
URL: https://issues.jboss.org/browse/ISPN-4762
Project: Infinispan
Issue Type: Enhancement
Components: Remote Protocols
Affects Versions: 7.0.0.Beta2
Environment: Mac OS X 10.9.4, Oracle Hotspot 1.7.0_67, Infinispan 7.0.0.Beta2 in 'Hybrid-mode', JBoss EAP 6.3.0
Reporter: Duncan Doyle
Assignee: Galder Zamarreño
Priority: Minor
For various reasons, I run ISPN in, what I call, HybridMode. I basically run ISPN in lib-mode in a WAR file and bootstrap a HotRodServer from a @WebListener. This allows me to startup the system on ServletContextListener.contextInitialized and cleanly shutdown the system on ServletContextListener.contextDestroyed. The app runs on JBoss EAP 6.3.0.
The problem I face is that, when I undeploy my application, I shutdown the HotRodServer using the stop() method, the HotRodServerWorker threads are stopped asynchronously (non-blocking). However, there is no hook into the NettyTransport class to actually check whether the WorkerGroup has completely stopped. JBoss EAP starts undeploying the app, removing classloaders, etc. while the HotRodServerWorker threads are still active. This eventually results in ClassNotFoundExceptions on some Netty classes:
{quote}
09:38:10,315 ERROR [stderr] (HotRodServerWorker-3-39) java.lang.NoClassDefFoundError: io/netty/util/concurrent/DefaultPromise$3
09:38:10,316 ERROR [stderr] (HotRodServerWorker-3-39) at io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:593)
09:38:10,316 ERROR [stderr] (HotRodServerWorker-3-39) at io.netty.util.concurrent.DefaultPromise.setSuccess(DefaultPromise.java:404)
09:38:10,324 ERROR [stderr] (HotRodServerWorker-3-39) at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:155)
09:38:10,324 ERROR [stderr] (HotRodServerWorker-3-39) at java.lang.Thread.run(Thread.java:745)
{quote}
I've currently solved this problem by putting a Thread.sleep in my shutdown code to give the threads some time to cleanly stop, but that's obviously not ideal. It would be nice to be able to somehow check whether the NettyTransport 'masterGroup' and 'workerGroup' have stopped, so I can check that in my shutdown sequence.
--
This message was sent by Atlassian JIRA
(v6.3.1#6329)
11 years, 6 months
[JBoss JIRA] (ISPN-4751) Hibernate search, infinispan and Amazon S3 - IllegalArgumentException: bucketId: A96137216.bz2 (expected: integer)
by Mircea Markus (JIRA)
[ https://issues.jboss.org/browse/ISPN-4751?page=com.atlassian.jira.plugin.... ]
Mircea Markus commented on ISPN-4751:
-------------------------------------
Indeed cloud cache store is not abandonware. We redone the cachestore API in Infinispan 6.0, and simplified it considerably. Because of the large number of stores we rely on community for migrating some of the implementations, such as the cloud store. [The documentation|http://infinispan.org/docs/7.0.x/user_guide/user_guide.html...] describes the new API and points to a zero dependency implementation that exists already, but if you have any specific questions happy to help.
The IAE is caused by Infinispan code (vs JClouds) which expects the bucket id to be numberical: that seems not to be the case anymore, so the Bucket class we provide should be enhanced to allow String buckets.
> Hibernate search, infinispan and Amazon S3 - IllegalArgumentException: bucketId: A96137216.bz2 (expected: integer)
> ------------------------------------------------------------------------------------------------------------------
>
> Key: ISPN-4751
> URL: https://issues.jboss.org/browse/ISPN-4751
> Project: Infinispan
> Issue Type: Bug
> Reporter: Lance Ess
> Assignee: Mircea Markus
>
> I'm trying to use hibernate-search to host a Lucene index on Amazon S3 but I'm getting the following exception:
> {code}
> Exception in thread "LuceneIndexesData-CloudCacheStore-0" java.lang.IllegalArgumentException: bucketId: A96137216.bz2 (expected: integer)
> at org.infinispan.loaders.bucket.Bucket.setBucketId(Bucket.java:84)
> at org.infinispan.loaders.cloud.CloudCacheStore.readFromBlob(CloudCacheStore.java:450)
> at org.infinispan.loaders.cloud.CloudCacheStore.scanBlobForExpiredEntries(CloudCacheStore.java:292)
> at org.infinispan.loaders.cloud.CloudCacheStore.purge(CloudCacheStore.java:284)
> at org.infinispan.loaders.cloud.CloudCacheStore.purgeInternal(CloudCacheStore.java:336)
> at org.infinispan.loaders.AbstractCacheStore$2.run(AbstractCacheStore.java:111)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
> at java.lang.Thread.run(Unknown Source)
> {code}
> The documentation for persisting Lucene indexes on Amazon-S3 is a little sparse but I think I'm on the right track. I'm trying to start infinispan embedded within my application so I've specified a path to the infinispan XML as follows in my hibernate.cfg.xml
> {code:xml}
> <property name="hibernate.search.default.directory_provider">infinispan</property>
> <property name="hibernate.search.infinispan.configuration_resourcename">infinispan-amazons3.xml</property>
> <property name="hibernate.search.infinispan.chunk_size">300000000</property>
> {code}
> And my infinispan-amazons3.xml is:
> {code:xml}
> <infinispan>
> <default>
> <loaders>
> <cloudStore xmlns="urn:infinispan:config:cloud:5.3"
> cloudService="aws-s3"
> identity="user"
> password="password"
> bucketPrefix="bucket">
> </cloudStore>
> </loaders>
> </default>
> </infinispan>
> {code}
> I'm using the following versions (maven pom.xml)
> {code}
> <dependency>
> <groupId>org.hibernate</groupId>
> <artifactId>hibernate-search</artifactId>
> <version>4.4.4.Final</version>
> </dependency>
> <dependency>
> <groupId>org.hibernate</groupId>
> <artifactId>hibernate-search-infinispan</artifactId>
> <version>4.4.4.Final</version>
> </dependency>
> <dependency>
> <groupId>org.infinispan</groupId>
> <artifactId>infinispan-cachestore-cloud</artifactId>
> <version>5.3.0.Final</version>
> </dependency>
> <dependency>
> <groupId>org.jclouds.provider</groupId>
> <artifactId>aws-s3</artifactId>
> <version>1.4.1</version>
> </dependency>
> {code}
> I initially thought this was related to ISPN-1909 but my version is after the fix for that issue (5.1.3.CR1, 5.1.3.FINAL)
> FYI here's my maven dependency tree (grepped for infinispan)
> {code}
> $ mvn dependency:tree | grep infinispan
> [INFO] +- org.hibernate:hibernate-search-infinispan:jar:4.4.4.Final:compile
> [INFO] | \- org.infinispan:infinispan-lucene-directory:jar:5.3.0.Final:compile
> [INFO] +- org.infinispan:infinispan-cachestore-cloud:jar:5.3.0.Final:compile
> [INFO] | \- org.infinispan:infinispan-core:jar:5.3.0.Final:compile
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.1#6329)
11 years, 6 months
[JBoss JIRA] (ISPN-4745) Cluster Listener TX Batch incorrect when sending multiple events
by Pedro Ruivo (JIRA)
[ https://issues.jboss.org/browse/ISPN-4745?page=com.atlassian.jira.plugin.... ]
Pedro Ruivo updated ISPN-4745:
------------------------------
Status: Resolved (was: Pull Request Sent)
Resolution: Done
> Cluster Listener TX Batch incorrect when sending multiple events
> ----------------------------------------------------------------
>
> Key: ISPN-4745
> URL: https://issues.jboss.org/browse/ISPN-4745
> Project: Infinispan
> Issue Type: Bug
> Components: Listeners
> Affects Versions: 7.0.0.Beta2
> Reporter: William Burns
> Assignee: William Burns
> Priority: Critical
> Fix For: 7.0.0.CR1
>
>
> While glancing through the code I noticed that the RemoteListener incorrectly sends the events after each event while looping on them this causes (n * (n + 1)) / 2 as many events in the batch, which is incorrect when n > 1. We just need to move the submit outside of the for loop.
--
This message was sent by Atlassian JIRA
(v6.3.1#6329)
11 years, 6 months