[JBoss JIRA] (HRJS-80) Connection to not-configured cache fails without closing it
by Galder Zamarreño (Jira)
[ https://issues.jboss.org/browse/HRJS-80?page=com.atlassian.jira.plugin.sy... ]
Galder Zamarreño updated HRJS-80:
---------------------------------
Status: Resolved (was: Pull Request Sent)
Resolution: Done
> Connection to not-configured cache fails without closing it
> -----------------------------------------------------------
>
> Key: HRJS-80
> URL: https://issues.jboss.org/browse/HRJS-80
> Project: Infinispan Javascript client
> Issue Type: Bug
> Reporter: Anna Manukyan
> Assignee: Anna Manukyan
> Priority: Major
> Fix For: 0.7.0
>
>
> The test given below passes, but because of unclosed connection it hangs. For this scenario, it is not possible to close connection manually as because of the thrown exception the connection object is not returned.
> {code}
> it('fails when non-configured cache is accessed', function(done) {
> t.client(t.local, {cacheName: 'unknownCache'})
> .then(function() {
> done(new Error('Exception should be thrown while accessing not-configured cache.'));
> }, function(reason) {
> expect(reason.message).toBe("org.infinispan.server.hotrod.CacheNotFoundException: Cache with name 'unknownCache' not found amongst the configured caches");
> t.failed(done);
> }).finally(done);
> });
> {code}
> The log for this test is given below:
> {code}
> [2018-09-27T22:47:49.426] [DEBUG] io_75_conn_76 - Connecting to 127.0.0.1:11222
> [2018-09-27T22:47:49.427] [DEBUG] io_75_conn_76 - Connected to 127.0.0.1:11222
> [2018-09-27T22:47:49.427] [DEBUG] io_75 - New router installed: FixedRouter(conn=127.0.0.1:11222@conn_76)
> [2018-09-27T22:47:49.427] [DEBUG] client - Invoke ping(msgId=77)
> [2018-09-27T22:47:49.427] [TRACE] encoder - Encode operation with topology id 0
> [2018-09-27T22:47:49.427] [TRACE] io_75 - Write buffer(msgId=77) to 127.0.0.1:11222@conn_76: A04D1D170C756E6B6E6F776E4361636865000300010D00010D00
> [2018-09-27T22:47:49.428] [TRACE] decoder - Read header(msgId=77): opCode=80, status=132, hasNewTopology=0
> [2018-09-27T22:47:49.429] [ERROR] decoder - Error decoding body of request(msgId=77): org.infinispan.server.hotrod.CacheNotFoundException: Cache with name 'unknownCache' not found amongst the configured caches
> [2018-09-27T22:47:49.429] [TRACE] io_75_conn_76 - Complete failure for request(msgId=77) with org.infinispan.server.hotrod.CacheNotFoundException: Cache with name 'unknownCache' not found amongst the configured caches
> [2018-09-27T22:47:49.429] [TRACE] io_75_conn_76 - After decoding request(msgId=77), buffer size is 129, and offset 129
> {code}
> As you can see, the connect operation is passed. The error appears while performing the ping operation. Also in the log there is nowhere visible the "Disconnected from..." for this particular connection.
> I have compared the logs for this test and for the ones testing the wrong configured ssl certificates. In case of ssl ones the error appears directly during connecting to the server. In this case the transport is connected, so the ping fails.
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
5 years, 7 months
[JBoss JIRA] (HRJS-80) Connection to not-configured cache fails without closing it
by Galder Zamarreño (Jira)
[ https://issues.jboss.org/browse/HRJS-80?page=com.atlassian.jira.plugin.sy... ]
Galder Zamarreño updated HRJS-80:
---------------------------------
Fix Version/s: 0.7.0
> Connection to not-configured cache fails without closing it
> -----------------------------------------------------------
>
> Key: HRJS-80
> URL: https://issues.jboss.org/browse/HRJS-80
> Project: Infinispan Javascript client
> Issue Type: Bug
> Reporter: Anna Manukyan
> Assignee: Anna Manukyan
> Priority: Major
> Fix For: 0.7.0
>
>
> The test given below passes, but because of unclosed connection it hangs. For this scenario, it is not possible to close connection manually as because of the thrown exception the connection object is not returned.
> {code}
> it('fails when non-configured cache is accessed', function(done) {
> t.client(t.local, {cacheName: 'unknownCache'})
> .then(function() {
> done(new Error('Exception should be thrown while accessing not-configured cache.'));
> }, function(reason) {
> expect(reason.message).toBe("org.infinispan.server.hotrod.CacheNotFoundException: Cache with name 'unknownCache' not found amongst the configured caches");
> t.failed(done);
> }).finally(done);
> });
> {code}
> The log for this test is given below:
> {code}
> [2018-09-27T22:47:49.426] [DEBUG] io_75_conn_76 - Connecting to 127.0.0.1:11222
> [2018-09-27T22:47:49.427] [DEBUG] io_75_conn_76 - Connected to 127.0.0.1:11222
> [2018-09-27T22:47:49.427] [DEBUG] io_75 - New router installed: FixedRouter(conn=127.0.0.1:11222@conn_76)
> [2018-09-27T22:47:49.427] [DEBUG] client - Invoke ping(msgId=77)
> [2018-09-27T22:47:49.427] [TRACE] encoder - Encode operation with topology id 0
> [2018-09-27T22:47:49.427] [TRACE] io_75 - Write buffer(msgId=77) to 127.0.0.1:11222@conn_76: A04D1D170C756E6B6E6F776E4361636865000300010D00010D00
> [2018-09-27T22:47:49.428] [TRACE] decoder - Read header(msgId=77): opCode=80, status=132, hasNewTopology=0
> [2018-09-27T22:47:49.429] [ERROR] decoder - Error decoding body of request(msgId=77): org.infinispan.server.hotrod.CacheNotFoundException: Cache with name 'unknownCache' not found amongst the configured caches
> [2018-09-27T22:47:49.429] [TRACE] io_75_conn_76 - Complete failure for request(msgId=77) with org.infinispan.server.hotrod.CacheNotFoundException: Cache with name 'unknownCache' not found amongst the configured caches
> [2018-09-27T22:47:49.429] [TRACE] io_75_conn_76 - After decoding request(msgId=77), buffer size is 129, and offset 129
> {code}
> As you can see, the connect operation is passed. The error appears while performing the ping operation. Also in the log there is nowhere visible the "Disconnected from..." for this particular connection.
> I have compared the logs for this test and for the ones testing the wrong configured ssl certificates. In case of ssl ones the error appears directly during connecting to the server. In this case the transport is connected, so the ping fails.
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
5 years, 7 months
[JBoss JIRA] (ISPN-9722) Perform all CacheStore operations on a separate thread
by Will Burns (Jira)
[ https://issues.jboss.org/browse/ISPN-9722?page=com.atlassian.jira.plugin.... ]
Will Burns commented on ISPN-9722:
----------------------------------
{quote}
Will Burns personally I'm a bit skeptical about using a separate thread pool: with the default CallerRunsPolicy we're always going to run some tasks in the caller thread, so it adds a lot of edge cases.
{quote}
We shouldn't ever be hitting the CallerRunsPolicy. The thread pool should have a large amount of threads and a large queue. We don't ever want to run this on the soon to be very precious CPU threads.
{quote}
And I wonder if we should make an exception when the store is asynchronous: blocking to wait for space in the write-behind queue is the same as blocking to wait for a free worker thread (or space in the thread pool queue).
{quote}
Adding support for actual asynchronous stores is a different PR after this. All of ours are currently sync with the given SPI, this needs to be rectified later with a new SPI to enable it. Then the running on a different thread can be decided by the store instead, however we aren't there yet. We shouldn't be blocking to wait for space in the queue, if we are that is a big problem as that would mean we are blocking the CPU thread when we shouldn't be.
> Perform all CacheStore operations on a separate thread
> ------------------------------------------------------
>
> Key: ISPN-9722
> URL: https://issues.jboss.org/browse/ISPN-9722
> Project: Infinispan
> Issue Type: Enhancement
> Components: Loaders and Stores
> Reporter: Will Burns
> Assignee: Will Burns
> Priority: Major
> Fix For: 10.0.0.Final
>
>
> Persistence is one of the few remaining systems that are not non blocking. This needs to be remedied. We will eventually need to add an SPI that does this, but for now we need to offload the persistence operations to a different thread pool.
> This should only require changes in the PersistenceManager to return non blocking methods (ie. return CompletionStage). We should then update references to use non blocking when possible.
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
5 years, 7 months
[JBoss JIRA] (ISPN-10230) Remove org.infinispan.atomic implementations and MergeOnStore
by Tristan Tarrant (Jira)
[ https://issues.jboss.org/browse/ISPN-10230?page=com.atlassian.jira.plugin... ]
Tristan Tarrant updated ISPN-10230:
-----------------------------------
Status: Resolved (was: Pull Request Sent)
Resolution: Done
> Remove org.infinispan.atomic implementations and MergeOnStore
> -------------------------------------------------------------
>
> Key: ISPN-10230
> URL: https://issues.jboss.org/browse/ISPN-10230
> Project: Infinispan
> Issue Type: Enhancement
> Components: Core
> Affects Versions: 10.0.0.Beta3
> Reporter: Ryan Emerson
> Assignee: Ryan Emerson
> Priority: Major
> Fix For: 10.0.0.Beta4
>
>
> We should remove AtomicMap and FineGrainedAtomicMap as their implementation requires several workarounds that make parts of the codebase very fragile. As AtomicMaps and AtomicMapLookup are not documented in the user guide, the fallout from this should be minimal.
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
5 years, 7 months
[JBoss JIRA] (ISPN-10229) NullPointerException when enabling cache statistics in Hibernate Cache
by Tristan Tarrant (Jira)
[ https://issues.jboss.org/browse/ISPN-10229?page=com.atlassian.jira.plugin... ]
Tristan Tarrant updated ISPN-10229:
-----------------------------------
Status: Resolved (was: Pull Request Sent)
Resolution: Done
> NullPointerException when enabling cache statistics in Hibernate Cache
> ----------------------------------------------------------------------
>
> Key: ISPN-10229
> URL: https://issues.jboss.org/browse/ISPN-10229
> Project: Infinispan
> Issue Type: Bug
> Components: Hibernate Cache
> Affects Versions: 10.0.0.Beta3, 9.4.13.Final
> Reporter: Galder Zamarreño
> Assignee: Galder Zamarreño
> Priority: Major
> Fix For: 10.0.0.Beta4, 10.0.0.Final, 9.4.15.Final
>
>
> Seems it'd only happen when clustered:
> e.g.
> {code}
> ERROR [org.infinispan.interceptors.impl.InvocationContextInterceptor] (httpWorkerThreads task-1) ISPN000136: Error executing command ReadWriteKeyCommand, writing keys [com.dematic.wms.appdemo.caching.entity.CachedEntity#5]: java.lang.NullPointerException
> at org.infinispan@9.4.12.Final//org.infinispan.interceptors.impl.CacheMgmtInterceptor.lambda$updateStatisticsReadWrite$11(CacheMgmtInterceptor.java:331)
> at org.infinispan@9.4.12.Final//org.infinispan.interceptors.BaseAsyncInterceptor.invokeNextThenApply(BaseAsyncInterceptor.java:81)
> at org.infinispan@9.4.12.Final//org.infinispan.interceptors.impl.CacheMgmtInterceptor.updateStatisticsReadWrite(CacheMgmtInterceptor.java:327)
> at org.infinispan@9.4.12.Final//org.infinispan.interceptors.impl.CacheMgmtInterceptor.visitReadWriteKeyCommand(CacheMgmtInterceptor.java:351)
> at org.infinispan@9.4.12.Final//org.infinispan.commands.functional.ReadWriteKeyCommand.acceptVisitor(ReadWriteKeyCommand.java:113)
> at org.infinispan@9.4.12.Final//org.infinispan.interceptors.BaseAsyncInterceptor.invokeNext(BaseAsyncInterceptor.java:54)
> at org.infinispan@9.4.12.Final//org.infinispan.interceptors.DDAsyncInterceptor.handleDefault(DDAsyncInterceptor.java:54)
> at org.infinispan@9.4.12.Final//org.infinispan.interceptors.DDAsyncInterceptor.visitReadWriteKeyCommand(DDAsyncInterceptor.java:207)
> at org.infinispan@9.4.12.Final//org.infinispan.commands.functional.ReadWriteKeyCommand.acceptVisitor(ReadWriteKeyCommand.java:113)
> at org.infinispan@9.4.12.Final//org.infinispan.interceptors.BaseAsyncInterceptor.invokeNextAndExceptionally(BaseAsyncInterceptor.java:123)
> at org.infinispan@9.4.12.Final//org.infinispan.interceptors.impl.InvocationContextInterceptor.visitCommand(InvocationContextInterceptor.java:90)
> at org.infinispan@9.4.12.Final//org.infinispan.interceptors.BaseAsyncInterceptor.invokeNext(BaseAsyncInterceptor.java:56)
> at org.infinispan@9.4.12.Final//org.infinispan.interceptors.DDAsyncInterceptor.handleDefault(DDAsyncInterceptor.java:54)
> at org.infinispan@9.4.12.Final//org.infinispan.interceptors.DDAsyncInterceptor.visitReadWriteKeyCommand(DDAsyncInterceptor.java:207)
> at org.infinispan@9.4.12.Final//org.infinispan.commands.functional.ReadWriteKeyCommand.acceptVisitor(ReadWriteKeyCommand.java:113)
> at org.infinispan@9.4.12.Final//org.infinispan.interceptors.DDAsyncInterceptor.visitCommand(DDAsyncInterceptor.java:50)
> at org.infinispan@9.4.12.Final//org.infinispan.interceptors.impl.AsyncInterceptorChainImpl.invokeAsync(AsyncInterceptorChainImpl.java:234)
> at org.infinispan@9.4.12.Final//org.infinispan.functional.impl.AbstractFunctionalMap.invokeAsync(AbstractFunctionalMap.java:127)
> at org.infinispan@9.4.12.Final//org.infinispan.functional.impl.ReadWriteMapImpl.eval(ReadWriteMapImpl.java:56)
> at org.infinispan.hibernate-cache@9.4.12.Final//org.infinispan.hibernate.cache.commons.access.TombstoneAccessDelegate.putFromLoad(TombstoneAccessDelegate.java:102)
> at org.infinispan.hibernate-cache@9.4.12.Final//org.infinispan.hibernate.cache.v53.impl.ReadOnlyEntityDataAccess.putFromLoad(ReadOnlyEntityDataAccess.java:30)
> at org.hibernate//org.hibernate.engine.internal.TwoPhaseLoad.doInitializeEntity(TwoPhaseLoad.java:226)
> at org.hibernate//org.hibernate.engine.internal.TwoPhaseLoad.initializeEntity(TwoPhaseLoad.java:129)
> at org.hibernate//org.hibernate.loader.plan.exec.process.internal.AbstractRowReader.performTwoPhaseLoad(AbstractRowReader.java:241)
> at org.hibernate//org.hibernate.loader.plan.exec.process.internal.AbstractRowReader.finishUp(AbstractRowReader.java:209)
> at org.hibernate//org.hibernate.loader.plan.exec.process.internal.ResultSetProcessorImpl.extractResults(ResultSetProcessorImpl.java:133)
> at org.hibernate//org.hibernate.loader.plan.exec.internal.AbstractLoadPlanBasedLoader.executeLoad(AbstractLoadPlanBasedLoader.java:122)
> at org.hibernate//org.hibernate.loader.plan.exec.internal.AbstractLoadPlanBasedLoader.executeLoad(AbstractLoadPlanBasedLoader.java:86)
> at org.hibernate//org.hibernate.loader.entity.plan.AbstractLoadPlanBasedEntityLoader.load(AbstractLoadPlanBasedEntityLoader.java:197)
> at org.hibernate//org.hibernate.persister.entity.AbstractEntityPersister.load(AbstractEntityPersister.java:4272)
> at org.hibernate//org.hibernate.event.internal.DefaultLoadEventListener.loadFromDatasource(DefaultLoadEventListener.java:482)
> at org.hibernate//org.hibernate.event.internal.DefaultLoadEventListener.doLoad(DefaultLoadEventListener.java:452)
> at org.hibernate//org.hibernate.event.internal.DefaultLoadEventListener.load(DefaultLoadEventListener.java:203)
> at org.hibernate//org.hibernate.event.internal.DefaultLoadEventListener.proxyOrLoad(DefaultLoadEventListener.java:262)
> at org.hibernate//org.hibernate.event.internal.DefaultLoadEventListener.doOnLoad(DefaultLoadEventListener.java:105)
> at org.hibernate//org.hibernate.event.internal.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:73)
> at org.hibernate//org.hibernate.internal.SessionImpl.fireLoad(SessionImpl.java:1287)
> at org.hibernate//org.hibernate.internal.SessionImpl.access$2000(SessionImpl.java:211)
> at org.hibernate//org.hibernate.internal.SessionImpl$IdentifierLoadAccessImpl.doLoad(SessionImpl.java:2923)
> at org.hibernate//org.hibernate.internal.SessionImpl$IdentifierLoadAccessImpl.lambda$load$1(SessionImpl.java:2904)
> at org.hibernate//org.hibernate.internal.SessionImpl$IdentifierLoadAccessImpl.perform(SessionImpl.java:2860)
> at org.hibernate//org.hibernate.internal.SessionImpl$IdentifierLoadAccessImpl.load(SessionImpl.java:2904)
> at org.hibernate//org.hibernate.internal.SessionImpl.find(SessionImpl.java:3545)
> at org.hibernate//org.hibernate.internal.SessionImpl.find(SessionImpl.java:3512)
> at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.base/java.lang.reflect.Method.invoke(Method.java:566)
> {code}
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
5 years, 7 months
[JBoss JIRA] (IPROTO-93) AutoProtoSchemaBuilder.schemaFilePath() is not handled correctly
by Nistor Adrian (Jira)
[ https://issues.jboss.org/browse/IPROTO-93?page=com.atlassian.jira.plugin.... ]
Nistor Adrian updated IPROTO-93:
--------------------------------
Status: Resolved (was: Pull Request Sent)
Resolution: Done
Integrated in 4.3.0.Alpha6
> AutoProtoSchemaBuilder.schemaFilePath() is not handled correctly
> ----------------------------------------------------------------
>
> Key: IPROTO-93
> URL: https://issues.jboss.org/browse/IPROTO-93
> Project: Infinispan ProtoStream
> Issue Type: Bug
> Affects Versions: 4.3.0.Alpha4
> Reporter: Nistor Adrian
> Assignee: Nistor Adrian
> Priority: Major
> Fix For: 4.3.0.Alpha6
>
>
> Current implementation is wrong in these aspects:
> * the (optional) schemaFilePath together with schemaFileName should only be used for constructing the classloader resource path
> * when computing the final resource path from schemaFilePath + schemaFileName should take into account eventual leading or trailing '/' and handle it gracefully
> * the file path used for SerializationContext registration should be only based on schemaFileName, and should not be relative to schemaFilePath
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
5 years, 7 months