[JBoss JIRA] (WFLY-4561) Servlet Nonblocking I/O Suppressed InputStream Closed Error
by Mark S (JIRA)
[ https://issues.jboss.org/browse/WFLY-4561?page=com.atlassian.jira.plugin.... ]
Mark S edited comment on WFLY-4561 at 4/28/15 3:57 PM:
-------------------------------------------------------
I agree that calling close should be idempotent (i.e. Can be called multiple times with the same effect ). Yeah it was my mistake, I guess I was expecting at least a warning when an InputStream is closed with unread data.
was (Author: marks1900):
I agree that calling close should be idempotent (i.e. Can be called multiple times with the same effect ). Yeah it was my mistake, I guess I was expecting at least a warning when a InputStream is closed with unread data.
> Servlet Nonblocking I/O Suppressed InputStream Closed Error
> -----------------------------------------------------------
>
> Key: WFLY-4561
> URL: https://issues.jboss.org/browse/WFLY-4561
> Project: WildFly
> Issue Type: Feature Request
> Components: Web (Undertow)
> Affects Versions: 8.2.0.Final
> Reporter: Mark S
> Assignee: Stuart Douglas
> Attachments: AsyncIOServletTest.java
>
>
> Created a Nonblocking I/O Servlet by following JEE Tutorial example here:
> https://docs.oracle.com/javaee/7/tutorial/servlets013.htm
> Due to my Eclipse Development Environment giving me the warning "Potential resource leak: 'input' may not be closed", I made a mistake by wrapping the following line with a try-with-resources statement.
> {code}
> final ServletInputStream input = request.getInputStream();
> {code}
> Unfortunately, no exception was thrown to indicate that the connection was already closed before processing was attempted, where I believe there should have been.
> --
> I have added the relevant source code to reproduce my situation. Please see attached code.
> In the attached source, I added an AsyncListener to monitor the life cycle.
> h4. Case 1
> Client Request:
> {code}
> curl -X POST -H "Content-Type: application/x-www-form-urlencoded" --data '{"records":[{"key":"key1","value":"SGVsbG8gV29ybGQ="}]}' "http://localhost:8080/webapp/test/test"; echo
> {code}
> The handleRequestAsPerJeeTutorialWithInputStreamIssue method will give the following output:
> {code}
> 2015-04-27 10:57:20,337 (INFO ) [] AsyncIOServletTest(37): doPost(..)
> 2015-04-27 10:57:50,345 (INFO ) [] AsyncIOServletTest$1(55): onTimeout called: javax.servlet.AsyncEvent@24865a17
> 2015-04-27 10:57:50,359 (INFO ) [] AsyncIOServletTest$1(48): onComplete called: javax.servlet.AsyncEvent@54ff11f3
> {code}
> Client Response:
> {code}
> <html><head><title>Error</title></head><body>Internal Server Error</body></html>
> {code}
> h4. Case 2
> Client Request:
> {code}
> curl -X POST -H "Content-Type: application/x-www-form-urlencoded" --data '{"records":[{"key":"key1","value":"SGVsbG8gV29ybGQ="}]}' "http://localhost:8080/webapp/test/test"; echo
> {code}
> The handleRequestAsPerJeeTutorial method will give the following output:
> {code}
> 2015-04-27 10:56:32,111 (INFO ) [] AsyncIOServletTest(37): doPost(..)
> 2015-04-27 10:56:32,114 (INFO ) [] AsyncIOServletTest(84): handleRequestAsPerJeeTutorial(..)
> 2015-04-27 10:56:32,121 (INFO ) [] AsyncIOServletTest$2(97): onDataAvailable()
> 2015-04-27 10:56:32,121 (INFO ) [] AsyncIOServletTest$2(115): onAllDataRead()
> 2015-04-27 10:56:32,125 (INFO ) [] AsyncIOServletTest$1(48): onComplete called: javax.servlet.AsyncEvent@3746c9ed
> {code}
> Client Response:
> {code}
> ...the response...
> {code}
> ----
> It is my opinion that a closed InputStream should cause an exception of some sort. And in this case at minimum, I think that the AsyncListener's onError should be called.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
11 years
[JBoss JIRA] (WFLY-4561) Servlet Nonblocking I/O Suppressed InputStream Closed Error
by Mark S (JIRA)
[ https://issues.jboss.org/browse/WFLY-4561?page=com.atlassian.jira.plugin.... ]
Mark S edited comment on WFLY-4561 at 4/28/15 3:57 PM:
-------------------------------------------------------
I agree that calling close should be idempotent (i.e. Can be called multiple times with the same effect ). Yeah it was my mistake, I guess I was expecting at least a warning when a InputStream is closed with unread data.
was (Author: marks1900):
I agree that calling close should be idempotent (i.e. Can be called multiple times with the same effect ). Yeah it was my mistake, I guess I was expecting at least a warning that when a InputStream is closed with unread data.
> Servlet Nonblocking I/O Suppressed InputStream Closed Error
> -----------------------------------------------------------
>
> Key: WFLY-4561
> URL: https://issues.jboss.org/browse/WFLY-4561
> Project: WildFly
> Issue Type: Feature Request
> Components: Web (Undertow)
> Affects Versions: 8.2.0.Final
> Reporter: Mark S
> Assignee: Stuart Douglas
> Attachments: AsyncIOServletTest.java
>
>
> Created a Nonblocking I/O Servlet by following JEE Tutorial example here:
> https://docs.oracle.com/javaee/7/tutorial/servlets013.htm
> Due to my Eclipse Development Environment giving me the warning "Potential resource leak: 'input' may not be closed", I made a mistake by wrapping the following line with a try-with-resources statement.
> {code}
> final ServletInputStream input = request.getInputStream();
> {code}
> Unfortunately, no exception was thrown to indicate that the connection was already closed before processing was attempted, where I believe there should have been.
> --
> I have added the relevant source code to reproduce my situation. Please see attached code.
> In the attached source, I added an AsyncListener to monitor the life cycle.
> h4. Case 1
> Client Request:
> {code}
> curl -X POST -H "Content-Type: application/x-www-form-urlencoded" --data '{"records":[{"key":"key1","value":"SGVsbG8gV29ybGQ="}]}' "http://localhost:8080/webapp/test/test"; echo
> {code}
> The handleRequestAsPerJeeTutorialWithInputStreamIssue method will give the following output:
> {code}
> 2015-04-27 10:57:20,337 (INFO ) [] AsyncIOServletTest(37): doPost(..)
> 2015-04-27 10:57:50,345 (INFO ) [] AsyncIOServletTest$1(55): onTimeout called: javax.servlet.AsyncEvent@24865a17
> 2015-04-27 10:57:50,359 (INFO ) [] AsyncIOServletTest$1(48): onComplete called: javax.servlet.AsyncEvent@54ff11f3
> {code}
> Client Response:
> {code}
> <html><head><title>Error</title></head><body>Internal Server Error</body></html>
> {code}
> h4. Case 2
> Client Request:
> {code}
> curl -X POST -H "Content-Type: application/x-www-form-urlencoded" --data '{"records":[{"key":"key1","value":"SGVsbG8gV29ybGQ="}]}' "http://localhost:8080/webapp/test/test"; echo
> {code}
> The handleRequestAsPerJeeTutorial method will give the following output:
> {code}
> 2015-04-27 10:56:32,111 (INFO ) [] AsyncIOServletTest(37): doPost(..)
> 2015-04-27 10:56:32,114 (INFO ) [] AsyncIOServletTest(84): handleRequestAsPerJeeTutorial(..)
> 2015-04-27 10:56:32,121 (INFO ) [] AsyncIOServletTest$2(97): onDataAvailable()
> 2015-04-27 10:56:32,121 (INFO ) [] AsyncIOServletTest$2(115): onAllDataRead()
> 2015-04-27 10:56:32,125 (INFO ) [] AsyncIOServletTest$1(48): onComplete called: javax.servlet.AsyncEvent@3746c9ed
> {code}
> Client Response:
> {code}
> ...the response...
> {code}
> ----
> It is my opinion that a closed InputStream should cause an exception of some sort. And in this case at minimum, I think that the AsyncListener's onError should be called.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
11 years
[JBoss JIRA] (WFLY-4561) Servlet Nonblocking I/O Suppressed InputStream Closed Error
by Mark S (JIRA)
[ https://issues.jboss.org/browse/WFLY-4561?page=com.atlassian.jira.plugin.... ]
Mark S commented on WFLY-4561:
------------------------------
I agree that calling close should be idempotent (i.e. Can be called multiple times with the same effect ). Yeah it was my mistake, I guess I was expecting at least a warning that when a InputStream is closed with unread data.
> Servlet Nonblocking I/O Suppressed InputStream Closed Error
> -----------------------------------------------------------
>
> Key: WFLY-4561
> URL: https://issues.jboss.org/browse/WFLY-4561
> Project: WildFly
> Issue Type: Feature Request
> Components: Web (Undertow)
> Affects Versions: 8.2.0.Final
> Reporter: Mark S
> Assignee: Stuart Douglas
> Attachments: AsyncIOServletTest.java
>
>
> Created a Nonblocking I/O Servlet by following JEE Tutorial example here:
> https://docs.oracle.com/javaee/7/tutorial/servlets013.htm
> Due to my Eclipse Development Environment giving me the warning "Potential resource leak: 'input' may not be closed", I made a mistake by wrapping the following line with a try-with-resources statement.
> {code}
> final ServletInputStream input = request.getInputStream();
> {code}
> Unfortunately, no exception was thrown to indicate that the connection was already closed before processing was attempted, where I believe there should have been.
> --
> I have added the relevant source code to reproduce my situation. Please see attached code.
> In the attached source, I added an AsyncListener to monitor the life cycle.
> h4. Case 1
> Client Request:
> {code}
> curl -X POST -H "Content-Type: application/x-www-form-urlencoded" --data '{"records":[{"key":"key1","value":"SGVsbG8gV29ybGQ="}]}' "http://localhost:8080/webapp/test/test"; echo
> {code}
> The handleRequestAsPerJeeTutorialWithInputStreamIssue method will give the following output:
> {code}
> 2015-04-27 10:57:20,337 (INFO ) [] AsyncIOServletTest(37): doPost(..)
> 2015-04-27 10:57:50,345 (INFO ) [] AsyncIOServletTest$1(55): onTimeout called: javax.servlet.AsyncEvent@24865a17
> 2015-04-27 10:57:50,359 (INFO ) [] AsyncIOServletTest$1(48): onComplete called: javax.servlet.AsyncEvent@54ff11f3
> {code}
> Client Response:
> {code}
> <html><head><title>Error</title></head><body>Internal Server Error</body></html>
> {code}
> h4. Case 2
> Client Request:
> {code}
> curl -X POST -H "Content-Type: application/x-www-form-urlencoded" --data '{"records":[{"key":"key1","value":"SGVsbG8gV29ybGQ="}]}' "http://localhost:8080/webapp/test/test"; echo
> {code}
> The handleRequestAsPerJeeTutorial method will give the following output:
> {code}
> 2015-04-27 10:56:32,111 (INFO ) [] AsyncIOServletTest(37): doPost(..)
> 2015-04-27 10:56:32,114 (INFO ) [] AsyncIOServletTest(84): handleRequestAsPerJeeTutorial(..)
> 2015-04-27 10:56:32,121 (INFO ) [] AsyncIOServletTest$2(97): onDataAvailable()
> 2015-04-27 10:56:32,121 (INFO ) [] AsyncIOServletTest$2(115): onAllDataRead()
> 2015-04-27 10:56:32,125 (INFO ) [] AsyncIOServletTest$1(48): onComplete called: javax.servlet.AsyncEvent@3746c9ed
> {code}
> Client Response:
> {code}
> ...the response...
> {code}
> ----
> It is my opinion that a closed InputStream should cause an exception of some sort. And in this case at minimum, I think that the AsyncListener's onError should be called.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
11 years
[JBoss JIRA] (WFCORE-313) DefaultOperationDescriptionProvider uses incorrect call to create reply parameter description
by Tomaz Cerar (JIRA)
[ https://issues.jboss.org/browse/WFCORE-313?page=com.atlassian.jira.plugin... ]
Tomaz Cerar commented on WFCORE-313:
------------------------------------
We do have some extra info on OperationDefinition that tells us what are parameters and what are reply attributes.
And it also know how to handle deprecated attributes.
> DefaultOperationDescriptionProvider uses incorrect call to create reply parameter description
> ---------------------------------------------------------------------------------------------
>
> Key: WFCORE-313
> URL: https://issues.jboss.org/browse/WFCORE-313
> Project: WildFly Core
> Issue Type: Bug
> Components: Domain Management
> Reporter: Brian Stansberry
> Fix For: 2.0.0.Beta1
>
>
> When creating reply descriptions, DefaultOperationDescriptionProvider calls attributeDescriptionResolver.getOperationParameterDescription instead of attributeDescriptionResolver.getOperationReplyValueTypeDescription.
> A fix needs to not break compatibility for existing users of the incorrect behavior; i.e. call the correct method in a try block, catch any MissingResourceException, and if caught call the incorrect method.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
11 years
[JBoss JIRA] (DROOLS-776) Deadlock trying to synchronize 'eager' field in DefaultAgenda (between drools-worker thread and other)
by Juan Carlos Garcia (JIRA)
[ https://issues.jboss.org/browse/DROOLS-776?page=com.atlassian.jira.plugin... ]
Juan Carlos Garcia updated DROOLS-776:
--------------------------------------
Summary: Deadlock trying to synchronize 'eager' field in DefaultAgenda (between drools-worker thread and other) (was: Deadlock trying to synchronize 'eager' field in DefaultAgenda (drools-worker thread and the other thread))
> Deadlock trying to synchronize 'eager' field in DefaultAgenda (between drools-worker thread and other)
> ------------------------------------------------------------------------------------------------------
>
> Key: DROOLS-776
> URL: https://issues.jboss.org/browse/DROOLS-776
> Project: Drools
> Issue Type: Feature Request
> Affects Versions: 6.2.0.Final
> Reporter: Juan Carlos Garcia
> Assignee: Mark Proctor
>
> Migrating from drools 6.0.1.Final to 6.2.0.Final there seems to be a rare deadlock trying to synchronize the DefaultAgenda *eager* field, i have seen it only 2 or three times now as it seems very dificult to reproduce.
> In our scenario the test is calling *kSession.fireUntilHalt()* in a new thread, then in the main thread waiting for some events to happens (by calling in a loop: kSession.getObjects(new ClassObjectFilter(_clazz)))) and then doing some other assert checks.
> See the stacktrace i took with jstack:
> {code}
> Java stack information for the threads listed above:
> ===================================================
> "Thread-5":
> at org.drools.core.phreak.RuleExecutor.evaluateNetwork(RuleExecutor.java:92)
> - waiting to lock <0x00000000ff245780> (a org.drools.core.phreak.RuleExecutor)
> at org.drools.core.common.DefaultAgenda.evaluateEagerList(DefaultAgenda.java:1044)
> - locked <0x00000000ff3dab38> (a org.drools.core.util.LinkedList)
> at org.drools.core.common.DefaultAgenda.fireNextItem(DefaultAgenda.java:996)
> at org.drools.core.common.DefaultAgenda.fireUntilHalt(DefaultAgenda.java:1258)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireUntilHalt(StatefulKnowledgeSessionImpl.java:1333)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireUntilHalt(StatefulKnowledgeSessionImpl.java:1310)
> at bar.foo.AIDelayTest$1.run(AIDelayTest.java:101)
> at java.lang.Thread.run(Thread.java:745)
> "drools-worker-2":
> at org.drools.core.common.DefaultAgenda.addEagerRuleAgendaItem(DefaultAgenda.java:287)
> - waiting to lock <0x00000000ff3dab38> (a org.drools.core.util.LinkedList)
> at org.drools.core.reteoo.PathMemory.queueRuleAgendaItem(PathMemory.java:159)
> at org.drools.core.reteoo.PathMemory.doUnlinkRule(PathMemory.java:133)
> - locked <0x00000000ff2457a0> (a org.drools.core.reteoo.PathMemory)
> at org.drools.core.reteoo.PathMemory.unlinkedSegment(PathMemory.java:173)
> at org.drools.core.reteoo.SegmentMemory.unlinkNode(SegmentMemory.java:203)
> at org.drools.core.reteoo.BetaMemory.unlinkNode(BetaMemory.java:100)
> at org.drools.core.reteoo.BetaNode.doDeleteRightTuple(BetaNode.java:377)
> at org.drools.core.reteoo.JoinNode.retractRightTuple(JoinNode.java:107)
> at org.drools.core.reteoo.ObjectTypeNode.doRetractObject(ObjectTypeNode.java:345)
> at org.drools.core.reteoo.ObjectTypeNode.retractObject(ObjectTypeNode.java:337)
> at org.drools.core.reteoo.EntryPointNode.retractObject(EntryPointNode.java:381)
> at org.drools.core.common.NamedEntryPoint.delete(NamedEntryPoint.java:615)
> at org.drools.core.base.DefaultKnowledgeHelper.delete(DefaultKnowledgeHelper.java:495)
> at org.drools.core.base.DefaultKnowledgeHelper.retract(DefaultKnowledgeHelper.java:486)
> at bar.foo.Rule_basic$u46$delayExecution$u46$01246876731.defaultConsequence(Rule_basic$u46$delayExecution$u46$01246876731.java:7)
> at bar.foo.Rule_basic$u46$delayExecution$u46$01246876731DefaultConsequenceInvokerGenerated.evaluate(Unknown Source)
> at bar.foo.Rule_basic$u46$delayExecution$u46$01246876731DefaultConsequenceInvoker.evaluate(Unknown Source)
> at org.drools.core.common.DefaultAgenda.fireActivation(DefaultAgenda.java:1114)
> - locked <0x00000000ff3da978> (a org.drools.core.common.DefaultAgenda)
> at org.drools.core.phreak.RuleExecutor.fire(RuleExecutor.java:160)
> at org.drools.core.phreak.RuleExecutor.fire(RuleExecutor.java:112)
> - locked <0x00000000ff245780> (a org.drools.core.phreak.RuleExecutor)
> at org.drools.core.phreak.PhreakTimerNode$Executor.qevauateAndFireRule(PhreakTimerNode.java:485)
> at org.drools.core.phreak.PhreakTimerNode$TimerNodeJob$1.run(PhreakTimerNode.java:420)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
> at java.lang.Thread.run(Thread.java:745)
> Found 1 deadlock.
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
11 years
[JBoss JIRA] (DROOLS-776) Deadlock trying to synchronize 'eager' field in DefaultAgenda (drools-worker thread and the other thread)
by Juan Carlos Garcia (JIRA)
[ https://issues.jboss.org/browse/DROOLS-776?page=com.atlassian.jira.plugin... ]
Juan Carlos Garcia updated DROOLS-776:
--------------------------------------
Description:
Migrating from drools 6.0.1.Final to 6.2.0.Final there seems to be a rare deadlock trying to synchronize the DefaultAgenda *eager* field, i have seen it only 2 or three times now as it seems very dificult to reproduce.
In our scenario the test is calling *kSession.fireUntilHalt()* in a new thread, then in the main thread waiting for some events to happens (by calling in a loop: kSession.getObjects(new ClassObjectFilter(_clazz)))) and then doing some other assert checks.
See the stacktrace i took with jstack:
{code}
Java stack information for the threads listed above:
===================================================
"Thread-5":
at org.drools.core.phreak.RuleExecutor.evaluateNetwork(RuleExecutor.java:92)
- waiting to lock <0x00000000ff245780> (a org.drools.core.phreak.RuleExecutor)
at org.drools.core.common.DefaultAgenda.evaluateEagerList(DefaultAgenda.java:1044)
- locked <0x00000000ff3dab38> (a org.drools.core.util.LinkedList)
at org.drools.core.common.DefaultAgenda.fireNextItem(DefaultAgenda.java:996)
at org.drools.core.common.DefaultAgenda.fireUntilHalt(DefaultAgenda.java:1258)
at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireUntilHalt(StatefulKnowledgeSessionImpl.java:1333)
at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireUntilHalt(StatefulKnowledgeSessionImpl.java:1310)
at bar.foo.AIDelayTest$1.run(AIDelayTest.java:101)
at java.lang.Thread.run(Thread.java:745)
"drools-worker-2":
at org.drools.core.common.DefaultAgenda.addEagerRuleAgendaItem(DefaultAgenda.java:287)
- waiting to lock <0x00000000ff3dab38> (a org.drools.core.util.LinkedList)
at org.drools.core.reteoo.PathMemory.queueRuleAgendaItem(PathMemory.java:159)
at org.drools.core.reteoo.PathMemory.doUnlinkRule(PathMemory.java:133)
- locked <0x00000000ff2457a0> (a org.drools.core.reteoo.PathMemory)
at org.drools.core.reteoo.PathMemory.unlinkedSegment(PathMemory.java:173)
at org.drools.core.reteoo.SegmentMemory.unlinkNode(SegmentMemory.java:203)
at org.drools.core.reteoo.BetaMemory.unlinkNode(BetaMemory.java:100)
at org.drools.core.reteoo.BetaNode.doDeleteRightTuple(BetaNode.java:377)
at org.drools.core.reteoo.JoinNode.retractRightTuple(JoinNode.java:107)
at org.drools.core.reteoo.ObjectTypeNode.doRetractObject(ObjectTypeNode.java:345)
at org.drools.core.reteoo.ObjectTypeNode.retractObject(ObjectTypeNode.java:337)
at org.drools.core.reteoo.EntryPointNode.retractObject(EntryPointNode.java:381)
at org.drools.core.common.NamedEntryPoint.delete(NamedEntryPoint.java:615)
at org.drools.core.base.DefaultKnowledgeHelper.delete(DefaultKnowledgeHelper.java:495)
at org.drools.core.base.DefaultKnowledgeHelper.retract(DefaultKnowledgeHelper.java:486)
at bar.foo.Rule_basic$u46$delayExecution$u46$01246876731.defaultConsequence(Rule_basic$u46$delayExecution$u46$01246876731.java:7)
at bar.foo.Rule_basic$u46$delayExecution$u46$01246876731DefaultConsequenceInvokerGenerated.evaluate(Unknown Source)
at bar.foo.Rule_basic$u46$delayExecution$u46$01246876731DefaultConsequenceInvoker.evaluate(Unknown Source)
at org.drools.core.common.DefaultAgenda.fireActivation(DefaultAgenda.java:1114)
- locked <0x00000000ff3da978> (a org.drools.core.common.DefaultAgenda)
at org.drools.core.phreak.RuleExecutor.fire(RuleExecutor.java:160)
at org.drools.core.phreak.RuleExecutor.fire(RuleExecutor.java:112)
- locked <0x00000000ff245780> (a org.drools.core.phreak.RuleExecutor)
at org.drools.core.phreak.PhreakTimerNode$Executor.qevauateAndFireRule(PhreakTimerNode.java:485)
at org.drools.core.phreak.PhreakTimerNode$TimerNodeJob$1.run(PhreakTimerNode.java:420)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Found 1 deadlock.
{code}
was:
Migrating from drools 6.0.1.Final to 6.2.0.Final there seems to be a rare deadlock trying to syncronized the DefaultAgenda *eager* field, i have seen it only 2 or three times now as it seems very dificult to reproduce.
In our scenario the test is calling *kSession.fireUntilHalt()* in a new thread, then in the main thread waiting for some events to happens (by calling in a loop: kSession.getObjects(new ClassObjectFilter(_clazz)))) and then doing some other assert checks.
See the stacktrace below i took with jstack:
{code}
Java stack information for the threads listed above:
===================================================
"Thread-5":
at org.drools.core.phreak.RuleExecutor.evaluateNetwork(RuleExecutor.java:92)
- waiting to lock <0x00000000ff245780> (a org.drools.core.phreak.RuleExecutor)
at org.drools.core.common.DefaultAgenda.evaluateEagerList(DefaultAgenda.java:1044)
- locked <0x00000000ff3dab38> (a org.drools.core.util.LinkedList)
at org.drools.core.common.DefaultAgenda.fireNextItem(DefaultAgenda.java:996)
at org.drools.core.common.DefaultAgenda.fireUntilHalt(DefaultAgenda.java:1258)
at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireUntilHalt(StatefulKnowledgeSessionImpl.java:1333)
at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireUntilHalt(StatefulKnowledgeSessionImpl.java:1310)
at bar.foo.AIDelayTest$1.run(AIDelayTest.java:101)
at java.lang.Thread.run(Thread.java:745)
"drools-worker-2":
at org.drools.core.common.DefaultAgenda.addEagerRuleAgendaItem(DefaultAgenda.java:287)
- waiting to lock <0x00000000ff3dab38> (a org.drools.core.util.LinkedList)
at org.drools.core.reteoo.PathMemory.queueRuleAgendaItem(PathMemory.java:159)
at org.drools.core.reteoo.PathMemory.doUnlinkRule(PathMemory.java:133)
- locked <0x00000000ff2457a0> (a org.drools.core.reteoo.PathMemory)
at org.drools.core.reteoo.PathMemory.unlinkedSegment(PathMemory.java:173)
at org.drools.core.reteoo.SegmentMemory.unlinkNode(SegmentMemory.java:203)
at org.drools.core.reteoo.BetaMemory.unlinkNode(BetaMemory.java:100)
at org.drools.core.reteoo.BetaNode.doDeleteRightTuple(BetaNode.java:377)
at org.drools.core.reteoo.JoinNode.retractRightTuple(JoinNode.java:107)
at org.drools.core.reteoo.ObjectTypeNode.doRetractObject(ObjectTypeNode.java:345)
at org.drools.core.reteoo.ObjectTypeNode.retractObject(ObjectTypeNode.java:337)
at org.drools.core.reteoo.EntryPointNode.retractObject(EntryPointNode.java:381)
at org.drools.core.common.NamedEntryPoint.delete(NamedEntryPoint.java:615)
at org.drools.core.base.DefaultKnowledgeHelper.delete(DefaultKnowledgeHelper.java:495)
at org.drools.core.base.DefaultKnowledgeHelper.retract(DefaultKnowledgeHelper.java:486)
at bar.foo.Rule_basic$u46$delayExecution$u46$01246876731.defaultConsequence(Rule_basic$u46$delayExecution$u46$01246876731.java:7)
at bar.foo.Rule_basic$u46$delayExecution$u46$01246876731DefaultConsequenceInvokerGenerated.evaluate(Unknown Source)
at bar.foo.Rule_basic$u46$delayExecution$u46$01246876731DefaultConsequenceInvoker.evaluate(Unknown Source)
at org.drools.core.common.DefaultAgenda.fireActivation(DefaultAgenda.java:1114)
- locked <0x00000000ff3da978> (a org.drools.core.common.DefaultAgenda)
at org.drools.core.phreak.RuleExecutor.fire(RuleExecutor.java:160)
at org.drools.core.phreak.RuleExecutor.fire(RuleExecutor.java:112)
- locked <0x00000000ff245780> (a org.drools.core.phreak.RuleExecutor)
at org.drools.core.phreak.PhreakTimerNode$Executor.qevauateAndFireRule(PhreakTimerNode.java:485)
at org.drools.core.phreak.PhreakTimerNode$TimerNodeJob$1.run(PhreakTimerNode.java:420)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Found 1 deadlock.
{code}
> Deadlock trying to synchronize 'eager' field in DefaultAgenda (drools-worker thread and the other thread)
> ---------------------------------------------------------------------------------------------------------
>
> Key: DROOLS-776
> URL: https://issues.jboss.org/browse/DROOLS-776
> Project: Drools
> Issue Type: Feature Request
> Affects Versions: 6.2.0.Final
> Reporter: Juan Carlos Garcia
> Assignee: Mark Proctor
>
> Migrating from drools 6.0.1.Final to 6.2.0.Final there seems to be a rare deadlock trying to synchronize the DefaultAgenda *eager* field, i have seen it only 2 or three times now as it seems very dificult to reproduce.
> In our scenario the test is calling *kSession.fireUntilHalt()* in a new thread, then in the main thread waiting for some events to happens (by calling in a loop: kSession.getObjects(new ClassObjectFilter(_clazz)))) and then doing some other assert checks.
> See the stacktrace i took with jstack:
> {code}
> Java stack information for the threads listed above:
> ===================================================
> "Thread-5":
> at org.drools.core.phreak.RuleExecutor.evaluateNetwork(RuleExecutor.java:92)
> - waiting to lock <0x00000000ff245780> (a org.drools.core.phreak.RuleExecutor)
> at org.drools.core.common.DefaultAgenda.evaluateEagerList(DefaultAgenda.java:1044)
> - locked <0x00000000ff3dab38> (a org.drools.core.util.LinkedList)
> at org.drools.core.common.DefaultAgenda.fireNextItem(DefaultAgenda.java:996)
> at org.drools.core.common.DefaultAgenda.fireUntilHalt(DefaultAgenda.java:1258)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireUntilHalt(StatefulKnowledgeSessionImpl.java:1333)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireUntilHalt(StatefulKnowledgeSessionImpl.java:1310)
> at bar.foo.AIDelayTest$1.run(AIDelayTest.java:101)
> at java.lang.Thread.run(Thread.java:745)
> "drools-worker-2":
> at org.drools.core.common.DefaultAgenda.addEagerRuleAgendaItem(DefaultAgenda.java:287)
> - waiting to lock <0x00000000ff3dab38> (a org.drools.core.util.LinkedList)
> at org.drools.core.reteoo.PathMemory.queueRuleAgendaItem(PathMemory.java:159)
> at org.drools.core.reteoo.PathMemory.doUnlinkRule(PathMemory.java:133)
> - locked <0x00000000ff2457a0> (a org.drools.core.reteoo.PathMemory)
> at org.drools.core.reteoo.PathMemory.unlinkedSegment(PathMemory.java:173)
> at org.drools.core.reteoo.SegmentMemory.unlinkNode(SegmentMemory.java:203)
> at org.drools.core.reteoo.BetaMemory.unlinkNode(BetaMemory.java:100)
> at org.drools.core.reteoo.BetaNode.doDeleteRightTuple(BetaNode.java:377)
> at org.drools.core.reteoo.JoinNode.retractRightTuple(JoinNode.java:107)
> at org.drools.core.reteoo.ObjectTypeNode.doRetractObject(ObjectTypeNode.java:345)
> at org.drools.core.reteoo.ObjectTypeNode.retractObject(ObjectTypeNode.java:337)
> at org.drools.core.reteoo.EntryPointNode.retractObject(EntryPointNode.java:381)
> at org.drools.core.common.NamedEntryPoint.delete(NamedEntryPoint.java:615)
> at org.drools.core.base.DefaultKnowledgeHelper.delete(DefaultKnowledgeHelper.java:495)
> at org.drools.core.base.DefaultKnowledgeHelper.retract(DefaultKnowledgeHelper.java:486)
> at bar.foo.Rule_basic$u46$delayExecution$u46$01246876731.defaultConsequence(Rule_basic$u46$delayExecution$u46$01246876731.java:7)
> at bar.foo.Rule_basic$u46$delayExecution$u46$01246876731DefaultConsequenceInvokerGenerated.evaluate(Unknown Source)
> at bar.foo.Rule_basic$u46$delayExecution$u46$01246876731DefaultConsequenceInvoker.evaluate(Unknown Source)
> at org.drools.core.common.DefaultAgenda.fireActivation(DefaultAgenda.java:1114)
> - locked <0x00000000ff3da978> (a org.drools.core.common.DefaultAgenda)
> at org.drools.core.phreak.RuleExecutor.fire(RuleExecutor.java:160)
> at org.drools.core.phreak.RuleExecutor.fire(RuleExecutor.java:112)
> - locked <0x00000000ff245780> (a org.drools.core.phreak.RuleExecutor)
> at org.drools.core.phreak.PhreakTimerNode$Executor.qevauateAndFireRule(PhreakTimerNode.java:485)
> at org.drools.core.phreak.PhreakTimerNode$TimerNodeJob$1.run(PhreakTimerNode.java:420)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
> at java.lang.Thread.run(Thread.java:745)
> Found 1 deadlock.
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
11 years
[JBoss JIRA] (DROOLS-776) Deadlock trying to synchronize 'eager' field in DefaultAgenda (drools-worker thread and the other thread)
by Juan Carlos Garcia (JIRA)
[ https://issues.jboss.org/browse/DROOLS-776?page=com.atlassian.jira.plugin... ]
Juan Carlos Garcia updated DROOLS-776:
--------------------------------------
Summary: Deadlock trying to synchronize 'eager' field in DefaultAgenda (drools-worker thread and the other thread) (was: Deadlock trying to syncronize 'eager' field in DefaultAgenda (drools-worker thread and the other thread))
> Deadlock trying to synchronize 'eager' field in DefaultAgenda (drools-worker thread and the other thread)
> ---------------------------------------------------------------------------------------------------------
>
> Key: DROOLS-776
> URL: https://issues.jboss.org/browse/DROOLS-776
> Project: Drools
> Issue Type: Feature Request
> Affects Versions: 6.2.0.Final
> Reporter: Juan Carlos Garcia
> Assignee: Mark Proctor
>
> Migrating from drools 6.0.1.Final to 6.2.0.Final there seems to be a rare deadlock trying to syncronized the DefaultAgenda *eager* field, i have seen it only 2 or three times now as it seems very dificult to reproduce.
> In our scenario the test is calling *kSession.fireUntilHalt()* in a new thread, then in the main thread waiting for some events to happens (by calling in a loop: kSession.getObjects(new ClassObjectFilter(_clazz)))) and then doing some other assert checks.
> See the stacktrace below i took with jstack:
> {code}
> Java stack information for the threads listed above:
> ===================================================
> "Thread-5":
> at org.drools.core.phreak.RuleExecutor.evaluateNetwork(RuleExecutor.java:92)
> - waiting to lock <0x00000000ff245780> (a org.drools.core.phreak.RuleExecutor)
> at org.drools.core.common.DefaultAgenda.evaluateEagerList(DefaultAgenda.java:1044)
> - locked <0x00000000ff3dab38> (a org.drools.core.util.LinkedList)
> at org.drools.core.common.DefaultAgenda.fireNextItem(DefaultAgenda.java:996)
> at org.drools.core.common.DefaultAgenda.fireUntilHalt(DefaultAgenda.java:1258)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireUntilHalt(StatefulKnowledgeSessionImpl.java:1333)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireUntilHalt(StatefulKnowledgeSessionImpl.java:1310)
> at bar.foo.AIDelayTest$1.run(AIDelayTest.java:101)
> at java.lang.Thread.run(Thread.java:745)
> "drools-worker-2":
> at org.drools.core.common.DefaultAgenda.addEagerRuleAgendaItem(DefaultAgenda.java:287)
> - waiting to lock <0x00000000ff3dab38> (a org.drools.core.util.LinkedList)
> at org.drools.core.reteoo.PathMemory.queueRuleAgendaItem(PathMemory.java:159)
> at org.drools.core.reteoo.PathMemory.doUnlinkRule(PathMemory.java:133)
> - locked <0x00000000ff2457a0> (a org.drools.core.reteoo.PathMemory)
> at org.drools.core.reteoo.PathMemory.unlinkedSegment(PathMemory.java:173)
> at org.drools.core.reteoo.SegmentMemory.unlinkNode(SegmentMemory.java:203)
> at org.drools.core.reteoo.BetaMemory.unlinkNode(BetaMemory.java:100)
> at org.drools.core.reteoo.BetaNode.doDeleteRightTuple(BetaNode.java:377)
> at org.drools.core.reteoo.JoinNode.retractRightTuple(JoinNode.java:107)
> at org.drools.core.reteoo.ObjectTypeNode.doRetractObject(ObjectTypeNode.java:345)
> at org.drools.core.reteoo.ObjectTypeNode.retractObject(ObjectTypeNode.java:337)
> at org.drools.core.reteoo.EntryPointNode.retractObject(EntryPointNode.java:381)
> at org.drools.core.common.NamedEntryPoint.delete(NamedEntryPoint.java:615)
> at org.drools.core.base.DefaultKnowledgeHelper.delete(DefaultKnowledgeHelper.java:495)
> at org.drools.core.base.DefaultKnowledgeHelper.retract(DefaultKnowledgeHelper.java:486)
> at bar.foo.Rule_basic$u46$delayExecution$u46$01246876731.defaultConsequence(Rule_basic$u46$delayExecution$u46$01246876731.java:7)
> at bar.foo.Rule_basic$u46$delayExecution$u46$01246876731DefaultConsequenceInvokerGenerated.evaluate(Unknown Source)
> at bar.foo.Rule_basic$u46$delayExecution$u46$01246876731DefaultConsequenceInvoker.evaluate(Unknown Source)
> at org.drools.core.common.DefaultAgenda.fireActivation(DefaultAgenda.java:1114)
> - locked <0x00000000ff3da978> (a org.drools.core.common.DefaultAgenda)
> at org.drools.core.phreak.RuleExecutor.fire(RuleExecutor.java:160)
> at org.drools.core.phreak.RuleExecutor.fire(RuleExecutor.java:112)
> - locked <0x00000000ff245780> (a org.drools.core.phreak.RuleExecutor)
> at org.drools.core.phreak.PhreakTimerNode$Executor.qevauateAndFireRule(PhreakTimerNode.java:485)
> at org.drools.core.phreak.PhreakTimerNode$TimerNodeJob$1.run(PhreakTimerNode.java:420)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
> at java.lang.Thread.run(Thread.java:745)
> Found 1 deadlock.
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
11 years
[JBoss JIRA] (DROOLS-776) Deadlock trying to syncronize 'eager' field in DefaultAgenda (drools-worker thread and the other thread)
by Juan Carlos Garcia (JIRA)
Juan Carlos Garcia created DROOLS-776:
-----------------------------------------
Summary: Deadlock trying to syncronize 'eager' field in DefaultAgenda (drools-worker thread and the other thread)
Key: DROOLS-776
URL: https://issues.jboss.org/browse/DROOLS-776
Project: Drools
Issue Type: Feature Request
Affects Versions: 6.2.0.Final
Reporter: Juan Carlos Garcia
Assignee: Mark Proctor
Migrating from drools 6.0.1.Final to 6.2.0.Final there seems to be a rare deadlock trying to syncronized the DefaultAgenda *eager* field, i have seen it only 2 or three times now as it seems very dificult to reproduce.
In our scenario the test is calling *kSession.fireUntilHalt()* in a new thread, then in the main thread waiting for some events to happens (by calling in a loop: kSession.getObjects(new ClassObjectFilter(_clazz)))) and then doing some other assert checks.
See the stacktrace below i took with jstack:
{code}
Java stack information for the threads listed above:
===================================================
"Thread-5":
at org.drools.core.phreak.RuleExecutor.evaluateNetwork(RuleExecutor.java:92)
- waiting to lock <0x00000000ff245780> (a org.drools.core.phreak.RuleExecutor)
at org.drools.core.common.DefaultAgenda.evaluateEagerList(DefaultAgenda.java:1044)
- locked <0x00000000ff3dab38> (a org.drools.core.util.LinkedList)
at org.drools.core.common.DefaultAgenda.fireNextItem(DefaultAgenda.java:996)
at org.drools.core.common.DefaultAgenda.fireUntilHalt(DefaultAgenda.java:1258)
at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireUntilHalt(StatefulKnowledgeSessionImpl.java:1333)
at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireUntilHalt(StatefulKnowledgeSessionImpl.java:1310)
at bar.foo.AIDelayTest$1.run(AIDelayTest.java:101)
at java.lang.Thread.run(Thread.java:745)
"drools-worker-2":
at org.drools.core.common.DefaultAgenda.addEagerRuleAgendaItem(DefaultAgenda.java:287)
- waiting to lock <0x00000000ff3dab38> (a org.drools.core.util.LinkedList)
at org.drools.core.reteoo.PathMemory.queueRuleAgendaItem(PathMemory.java:159)
at org.drools.core.reteoo.PathMemory.doUnlinkRule(PathMemory.java:133)
- locked <0x00000000ff2457a0> (a org.drools.core.reteoo.PathMemory)
at org.drools.core.reteoo.PathMemory.unlinkedSegment(PathMemory.java:173)
at org.drools.core.reteoo.SegmentMemory.unlinkNode(SegmentMemory.java:203)
at org.drools.core.reteoo.BetaMemory.unlinkNode(BetaMemory.java:100)
at org.drools.core.reteoo.BetaNode.doDeleteRightTuple(BetaNode.java:377)
at org.drools.core.reteoo.JoinNode.retractRightTuple(JoinNode.java:107)
at org.drools.core.reteoo.ObjectTypeNode.doRetractObject(ObjectTypeNode.java:345)
at org.drools.core.reteoo.ObjectTypeNode.retractObject(ObjectTypeNode.java:337)
at org.drools.core.reteoo.EntryPointNode.retractObject(EntryPointNode.java:381)
at org.drools.core.common.NamedEntryPoint.delete(NamedEntryPoint.java:615)
at org.drools.core.base.DefaultKnowledgeHelper.delete(DefaultKnowledgeHelper.java:495)
at org.drools.core.base.DefaultKnowledgeHelper.retract(DefaultKnowledgeHelper.java:486)
at bar.foo.Rule_basic$u46$delayExecution$u46$01246876731.defaultConsequence(Rule_basic$u46$delayExecution$u46$01246876731.java:7)
at bar.foo.Rule_basic$u46$delayExecution$u46$01246876731DefaultConsequenceInvokerGenerated.evaluate(Unknown Source)
at bar.foo.Rule_basic$u46$delayExecution$u46$01246876731DefaultConsequenceInvoker.evaluate(Unknown Source)
at org.drools.core.common.DefaultAgenda.fireActivation(DefaultAgenda.java:1114)
- locked <0x00000000ff3da978> (a org.drools.core.common.DefaultAgenda)
at org.drools.core.phreak.RuleExecutor.fire(RuleExecutor.java:160)
at org.drools.core.phreak.RuleExecutor.fire(RuleExecutor.java:112)
- locked <0x00000000ff245780> (a org.drools.core.phreak.RuleExecutor)
at org.drools.core.phreak.PhreakTimerNode$Executor.qevauateAndFireRule(PhreakTimerNode.java:485)
at org.drools.core.phreak.PhreakTimerNode$TimerNodeJob$1.run(PhreakTimerNode.java:420)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Found 1 deadlock.
{code}
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
11 years
[JBoss JIRA] (WFLY-3628) removing session's entry(ies) from the cache error
by Stephen Agneta (JIRA)
[ https://issues.jboss.org/browse/WFLY-3628?page=com.atlassian.jira.plugin.... ]
Stephen Agneta commented on WFLY-3628:
--------------------------------------
I'm still seeing this defect as well on WildFly 8.2.0 JDK 8:
.lang.NullPointerException] while invoking method [public void org.wildfly.clustering.web.infinispan.session.InfinispanSessionManager.activated(org.infinispan.notifications.cachelistener.event.CacheEntryActivatedEvent)] on listener instance: org.wildfly.clustering.web.infinispan.session.InfinispanSessionManager@1a7d8ad
at org.infinispan.notifications.AbstractListenerImpl$ListenerInvocation$1.run(AbstractListenerImpl.java:211) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.util.concurrent.WithinThreadExecutor.execute(WithinThreadExecutor.java:22) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.notifications.AbstractListenerImpl$ListenerInvocation.invoke(AbstractListenerImpl.java:229) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.notifications.AbstractListenerImpl$ListenerInvocation.invoke(AbstractListenerImpl.java:192) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.notifications.cachelistener.CacheNotifierImpl.notifyCacheEntryActivated(CacheNotifierImpl.java:355) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.interceptors.ActivationInterceptor.sendNotification(ActivationInterceptor.java:109) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.interceptors.CacheLoaderInterceptor.recordLoadedEntry(CacheLoaderInterceptor.java:325) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.interceptors.CacheLoaderInterceptor.loadIfNeeded(CacheLoaderInterceptor.java:278) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.interceptors.ActivationInterceptor.loadIfNeeded(ActivationInterceptor.java:86) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.interceptors.CacheLoaderInterceptor.loadIfNeededAndUpdateStats(CacheLoaderInterceptor.java:335) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.interceptors.CacheLoaderInterceptor.visitGetKeyValueCommand(CacheLoaderInterceptor.java:105) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:40) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:98) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.interceptors.EntryWrappingInterceptor.visitGetKeyValueCommand(EntryWrappingInterceptor.java:116) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:40) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:98) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.interceptors.locking.PessimisticLockingInterceptor.visitGetKeyValueCommand(PessimisticLockingInterceptor.java:72) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:40) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:98) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.interceptors.base.CommandInterceptor.handleDefault(CommandInterceptor.java:112) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.commands.AbstractVisitor.visitGetKeyValueCommand(AbstractVisitor.java:74) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:40) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:98) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.interceptors.TxInterceptor.enlistReadAndInvokeNext(TxInterceptor.java:226) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.interceptors.TxInterceptor.visitGetKeyValueCommand(TxInterceptor.java:221) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:40) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:98) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.interceptors.CacheMgmtInterceptor.visitGetKeyValueCommand(CacheMgmtInterceptor.java:92) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:40) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:98) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.interceptors.InvocationContextInterceptor.handleAll(InvocationContextInterceptor.java:110) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.interceptors.InvocationContextInterceptor.handleDefault(InvocationContextInterceptor.java:73) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.commands.AbstractVisitor.visitGetKeyValueCommand(AbstractVisitor.java:74) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:40) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:98) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.interceptors.BatchingInterceptor.handleDefault(BatchingInterceptor.java:79) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.commands.AbstractVisitor.visitGetKeyValueCommand(AbstractVisitor.java:74) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:40) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.interceptors.InterceptorChain.invoke(InterceptorChain.java:333) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.CacheImpl.get(CacheImpl.java:377) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.DecoratedCache.get(DecoratedCache.java:396) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.infinispan.AbstractDelegatingCache.get(AbstractDelegatingCache.java:271) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
at org.jboss.as.clustering.infinispan.invoker.Locator$FindOperation.invoke(Locator.java:54)
at org.jboss.as.clustering.infinispan.invoker.Locator$LockingFindOperation.invoke(Locator.java:71)
at org.jboss.as.clustering.infinispan.invoker.SimpleCacheInvoker.invoke(SimpleCacheInvoker.java:34)
at org.jboss.as.clustering.infinispan.invoker.RetryingCacheInvoker.invoke(RetryingCacheInvoker.java:87)
at org.wildfly.clustering.web.infinispan.session.coarse.CoarseSessionFactory.findValue(CoarseSessionFactory.java:109)
at org.wildfly.clustering.web.infinispan.session.coarse.CoarseSessionFactory.findValue(CoarseSessionFactory.java:55)
at org.wildfly.clustering.web.infinispan.session.InfinispanSessionManager.findSession(InfinispanSessionManager.java:148)
at org.wildfly.clustering.web.undertow.session.DistributableSessionManager.getSession(DistributableSessionManager.java:115)
at io.undertow.servlet.spec.ServletContextImpl.getSession(ServletContextImpl.java:688) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.servlet.spec.HttpServletRequestImpl.getSession(HttpServletRequestImpl.java:364) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
at org.jboss.weld.servlet.SessionHolder.requestInitialized(SessionHolder.java:47) [weld-core-impl-2.2.6.Final.jar:2014-10-03 10:05]
at org.jboss.weld.servlet.HttpContextLifecycle.requestInitialized(HttpContextLifecycle.java:212) [weld-core-impl-2.2.6.Final.jar:2014-10-03 10:05]
at org.jboss.weld.servlet.WeldInitialListener.requestInitialized(WeldInitialListener.java:160) [weld-core-impl-2.2.6.Final.jar:2014-10-03 10:05]
at io.undertow.servlet.core.ApplicationListeners.requestInitialized(ApplicationListeners.java:216) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:260) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:247) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:76) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:166) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.server.Connectors.executeRootHandler(Connectors.java:197) [undertow-core-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:759) [undertow-core-1.1.0.Final.jar:1.1.0.Final]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [rt.jar:1.8.0_45]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [rt.jar:1.8.0_45]
at java.lang.Thread.run(Thread.java:745) [rt.jar:1.8.0_45]
Caused by: java.lang.NullPointerException
at org.wildfly.clustering.web.infinispan.session.coarse.CoarseImmutableSessionAttributes.getAttributeNames(CoarseImmutableSessionAttributes.java:51)
at org.wildfly.clustering.web.infinispan.session.InfinispanSessionManager.findListeners(InfinispanSessionManager.java:319)
at org.wildfly.clustering.web.infinispan.session.InfinispanSessionManager.triggerPostActivationEvents(InfinispanSessionManager.java:308)
at org.wildfly.clustering.web.infinispan.session.InfinispanSessionManager.activated(InfinispanSessionManager.java:210)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.8.0_45]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) [rt.jar:1.8.0_45]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.8.0_45]
at java.lang.reflect.Method.invoke(Method.java:497) [rt.jar:1.8.0_45]
at org.infinispan.notifications.AbstractListenerImpl$ListenerInvocation$1.run(AbstractListenerImpl.java:207) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
... 64 more
> removing session's entry(ies) from the cache error
> --------------------------------------------------
>
> Key: WFLY-3628
> URL: https://issues.jboss.org/browse/WFLY-3628
> Project: WildFly
> Issue Type: Bug
> Components: Clustering
> Affects Versions: 8.1.0.Final
> Environment: Linux 2.6.32-431.3.1.el6.x86_64 (Red Hat 4.4.7-4)
> 1 domain controller & 2 members in cluster
> Reporter: oleg suknov
> Assignee: Paul Ferraro
> Fix For: 8.2.0.Final
>
>
> There are no application data in session but there are some exceptions after wildfly attempted removing session's entry(ies) from the cache.
>
> 2014-06-30 15:57:15,166 ERROR [org.infinispan.interceptors.InvocationContextInterceptor] (default task-60) ISPN000136: Execution error: org.infinispan.commons.CacheListenerException: ISPN000280: Caught exception [java.lang.NullPointerException] while invoking method [public void org.wildfly.clustering.web.infinispan.session.InfinispanSessionManager.removed(org.infinispan.notifications.cachelistener.event.CacheEntryRemovedEvent)] on listener instance: org.wildfly.clustering.web.infinispan.session.InfinispanSessionManager@1bd3806d
> at org.infinispan.notifications.AbstractListenerImpl$ListenerInvocation$1.run(AbstractListenerImpl.java:211) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.util.concurrent.WithinThreadExecutor.execute(WithinThreadExecutor.java:22) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.notifications.AbstractListenerImpl$ListenerInvocation.invoke(AbstractListenerImpl.java:229) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.notifications.AbstractListenerImpl$ListenerInvocation.invoke(AbstractListenerImpl.java:192) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.notifications.cachelistener.CacheNotifierImpl.notifyCacheEntryRemoved(CacheNotifierImpl.java:230) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.commands.write.RemoveCommand.notify(RemoveCommand.java:96) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.commands.write.RemoveCommand.performRemove(RemoveCommand.java:213) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.commands.write.RemoveCommand.perform(RemoveCommand.java:92) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.interceptors.CallInterceptor.handleDefault(CallInterceptor.java:91) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.commands.AbstractVisitor.visitRemoveCommand(AbstractVisitor.java:37) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.commands.write.RemoveCommand.acceptVisitor(RemoveCommand.java:57) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:98) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.interceptors.distribution.TxDistributionInterceptor.handleTxWriteCommand(TxDistributionInterceptor.java:275) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.interceptors.distribution.TxDistributionInterceptor.visitRemoveCommand(TxDistributionInterceptor.java:80) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.commands.write.RemoveCommand.acceptVisitor(RemoveCommand.java:57) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:98) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.interceptors.base.CommandInterceptor.handleDefault(CommandInterceptor.java:112) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.commands.AbstractVisitor.visitRemoveCommand(AbstractVisitor.java:37) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.commands.write.RemoveCommand.acceptVisitor(RemoveCommand.java:57) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:98) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.interceptors.CacheLoaderInterceptor.visitRemoveCommand(CacheLoaderInterceptor.java:132) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.commands.write.RemoveCommand.acceptVisitor(RemoveCommand.java:57) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:98) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.interceptors.EntryWrappingInterceptor.invokeNextAndApplyChanges(EntryWrappingInterceptor.java:321) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.interceptors.EntryWrappingInterceptor.setSkipRemoteGetsAndInvokeNextForDataCommand(EntryWrappingInterceptor.java:402) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.interceptors.EntryWrappingInterceptor.visitRemoveCommand(EntryWrappingInterceptor.java:216) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.commands.write.RemoveCommand.acceptVisitor(RemoveCommand.java:57) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:98) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.interceptors.locking.OptimisticLockingInterceptor.visitRemoveCommand(OptimisticLockingInterceptor.java:135) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.commands.write.RemoveCommand.acceptVisitor(RemoveCommand.java:57) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:98) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.interceptors.base.CommandInterceptor.handleDefault(CommandInterceptor.java:112) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.commands.AbstractVisitor.visitRemoveCommand(AbstractVisitor.java:37) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.commands.write.RemoveCommand.acceptVisitor(RemoveCommand.java:57) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:98) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.interceptors.TxInterceptor.enlistWriteAndInvokeNext(TxInterceptor.java:255) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.interceptors.TxInterceptor.visitRemoveCommand(TxInterceptor.java:196) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.commands.write.RemoveCommand.acceptVisitor(RemoveCommand.java:57) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:98) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.interceptors.base.CommandInterceptor.handleDefault(CommandInterceptor.java:112) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.commands.AbstractVisitor.visitRemoveCommand(AbstractVisitor.java:37) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.commands.write.RemoveCommand.acceptVisitor(RemoveCommand.java:57) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:98) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.statetransfer.StateTransferInterceptor.handleNonTxWriteCommand(StateTransferInterceptor.java:206) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.statetransfer.StateTransferInterceptor.visitRemoveCommand(StateTransferInterceptor.java:156) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.commands.write.RemoveCommand.acceptVisitor(RemoveCommand.java:57) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:98) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.interceptors.CacheMgmtInterceptor.visitRemoveCommand(CacheMgmtInterceptor.java:166) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.commands.write.RemoveCommand.acceptVisitor(RemoveCommand.java:57) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:98) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.interceptors.InvocationContextInterceptor.handleAll(InvocationContextInterceptor.java:110) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.interceptors.InvocationContextInterceptor.handleDefault(InvocationContextInterceptor.java:73) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.commands.AbstractVisitor.visitRemoveCommand(AbstractVisitor.java:37) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.commands.write.RemoveCommand.acceptVisitor(RemoveCommand.java:57) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:98) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.interceptors.BatchingInterceptor.handleDefault(BatchingInterceptor.java:79) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.commands.AbstractVisitor.visitRemoveCommand(AbstractVisitor.java:37) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.commands.write.RemoveCommand.acceptVisitor(RemoveCommand.java:57) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.interceptors.InterceptorChain.invoke(InterceptorChain.java:333) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.CacheImpl.executeCommandAndCommitIfNeeded(CacheImpl.java:1306) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.CacheImpl.removeInternal(CacheImpl.java:407) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.CacheImpl.remove(CacheImpl.java:400) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.DecoratedCache.remove(DecoratedCache.java:406) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.AbstractDelegatingCache.remove(AbstractDelegatingCache.java:281) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.jboss.as.clustering.infinispan.invoker.Remover$RemoveOperation.invoke(Remover.java:49)
> at org.jboss.as.clustering.infinispan.invoker.SimpleCacheInvoker.invoke(SimpleCacheInvoker.java:34)
> at org.jboss.as.clustering.infinispan.invoker.RetryingCacheInvoker.invoke(RetryingCacheInvoker.java:82)
> at org.wildfly.clustering.web.infinispan.session.coarse.CoarseSessionFactory.remove(CoarseSessionFactory.java:117)
> at org.wildfly.clustering.web.infinispan.session.coarse.CoarseSessionFactory.remove(CoarseSessionFactory.java:55)
> at org.wildfly.clustering.web.infinispan.session.InfinispanSession.invalidate(InfinispanSession.java:74)
> at org.wildfly.clustering.web.infinispan.session.InfinispanSessionManager.findSession(InfinispanSessionManager.java:157)
> at org.wildfly.clustering.web.undertow.session.DistributableSessionManager.getSession(DistributableSessionManager.java:115)
> at io.undertow.servlet.spec.ServletContextImpl.getSession(ServletContextImpl.java:677) [undertow-servlet-1.0.15.Final.jar:1.0.15.Final]
> at io.undertow.servlet.spec.HttpServletRequestImpl.getSession(HttpServletRequestImpl.java:353) [undertow-servlet-1.0.15.Final.jar:1.0.15.Final]
> at org.jboss.weld.servlet.SessionHolder.requestInitialized(SessionHolder.java:47) [weld-core-impl-2.1.2.Final.jar:2014-01-09 09:23]
> at org.jboss.weld.servlet.HttpContextLifecycle.requestInitialized(HttpContextLifecycle.java:168) [weld-core-impl-2.1.2.Final.jar:2014-01-09 09:23]
> at org.jboss.weld.servlet.WeldInitialListener.requestInitialized(WeldInitialListener.java:153) [weld-core-impl-2.1.2.Final.jar:2014-01-09 09:23]
> at io.undertow.servlet.core.ApplicationListeners.requestInitialized(ApplicationListeners.java:216) [undertow-servlet-1.0.15.Final.jar:1.0.15.Final]
> at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:239) [undertow-servlet-1.0.15.Final.jar:1.0.15.Final]
> at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:227) [undertow-servlet-1.0.15.Final.jar:1.0.15.Final]
> at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:73) [undertow-servlet-1.0.15.Final.jar:1.0.15.Final]
> at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:146) [undertow-servlet-1.0.15.Final.jar:1.0.15.Final]
> at io.undertow.server.Connectors.executeRootHandler(Connectors.java:177) [undertow-core-1.0.15.Final.jar:1.0.15.Final]
> at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:727) [undertow-core-1.0.15.Final.jar:1.0.15.Final]
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_51]
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_51]
> at java.lang.Thread.run(Thread.java:744) [rt.jar:1.7.0_51]
> Caused by: java.lang.NullPointerException
> at org.wildfly.clustering.web.infinispan.session.coarse.CoarseImmutableSessionAttributes.getAttributeNames(CoarseImmutableSessionAttributes.java:51)
> at org.wildfly.clustering.web.session.ImmutableHttpSessionAdapter.getAttributeNames(ImmutableHttpSessionAdapter.java:80)
> at org.jboss.weld.context.beanstore.http.AbstractSessionBeanStore.getAttributeNames(AbstractSessionBeanStore.java:48) [weld-core-impl-2.1.2.Final.jar:2014-01-09 09:23]
> at org.jboss.weld.context.beanstore.AttributeBeanStore.getPrefixedAttributeNames(AttributeBeanStore.java:198) [weld-core-impl-2.1.2.Final.jar:2014-01-09 09:23]
> at org.jboss.weld.context.beanstore.AttributeBeanStore.attach(AttributeBeanStore.java:95) [weld-core-impl-2.1.2.Final.jar:2014-01-09 09:23]
> at org.jboss.weld.context.AbstractBoundContext.activate(AbstractBoundContext.java:66) [weld-core-impl-2.1.2.Final.jar:2014-01-09 09:23]
> at org.jboss.weld.servlet.WeldTerminalListener.sessionDestroyed(WeldTerminalListener.java:60) [weld-core-impl-2.1.2.Final.jar:2014-01-09 09:23]
> at io.undertow.servlet.core.ApplicationListeners.sessionDestroyed(ApplicationListeners.java:264) [undertow-servlet-1.0.15.Final.jar:1.0.15.Final]
> at org.wildfly.clustering.web.undertow.session.UndertowSessionContext$1.sessionDestroyed(UndertowSessionContext.java:60)
> at org.wildfly.clustering.web.infinispan.session.InfinispanSessionManager.removed(InfinispanSessionManager.java:236)
> at sun.reflect.GeneratedMethodAccessor67.invoke(Unknown Source) [:1.7.0_51]
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.7.0_51]
> at java.lang.reflect.Method.invoke(Method.java:606) [rt.jar:1.7.0_51]
> at org.infinispan.notifications.AbstractListenerImpl$ListenerInvocation$1.run(AbstractListenerImpl.java:207) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> ... 86 more
>
> 2014-06-30 15:57:15,181 ERROR [io.undertow.request] (default task-60) UT005023: Exception handling request to /hl/hl.jsp: org.infinispan.commons.CacheListenerException: ISPN000280: Caught exception [java.lang.NullPointerException] while invoking method [public void org.wildfly.clustering.web.infinispan.session.InfinispanSessionManager.removed(org.infinispan.notifications.cachelistener.event.CacheEntryRemovedEvent)] on listener instance: org.wildfly.clustering.web.infinispan.session.InfinispanSessionManager@1bd3806d
> at org.infinispan.notifications.AbstractListenerImpl$ListenerInvocation$1.run(AbstractListenerImpl.java:211) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
> at org.infinispan.util.concurrent.WithinThreadExecutor.execute(WithinThreadExecutor.java:22) [infinispan-core-6.0.2.Final.jar:6.0.2.Final]
>
>
>
> domain.xml:
> ...
> <subsystem xmlns="urn:jboss:domain:infinispan:2.0">
> ...
> <cache-container name="web" default-cache="dist" module="org.wildfly.clustering.web.infinispan">
> <transport stack="tcp" lock-timeout="60000"/>
> <distributed-cache name="dist" start="EAGER" batching="true" mode="SYNC" remote-timeout="300000" owners="2" l1-lifespan="0">
> <locking isolation="READ_UNCOMMITTED" striping="false" acquire-timeout="60000" concurrency-level="3000"/>
> <transaction mode="NONE" locking="OPTIMISTIC"/>
> <eviction strategy="LIRS" max-entries="1000"/>
> <file-store shared="true" preload="true"/>
> </distributed-cache>
> </cache-container>
> ...
> <cache-container name="ECEventsCacheContainer" default-cache="users" jndi-name="java:/infinispan/container/ECEventsCacheContainer">
> <transport stack="tcp"/>
> <replicated-cache name="users" batching="true" mode="SYNC">
> <locking isolation="REPEATABLE_READ"/>
> </replicated-cache>
> <replicated-cache name="operators" batching="true" mode="SYNC">
> <locking isolation="REPEATABLE_READ"/>
> </replicated-cache>
> </cache-container>
> </subsystem>
> ...
> <subsystem xmlns="urn:jboss:domain:jgroups:2.0" default-stack="tcp">
> ...
> <stack name="tcp">
> <transport type="TCP" socket-binding="jgroups-tcp">
> <property name="oob_thread_pool.max_threads">
> 300
> </property>
> <property name="oob_thread_pool.keep_alive_time">
> 20000
> </property>
> </transport>
> <protocol type="MPING">
> </protocol>
> <protocol type="MERGE2"/>
> <protocol type="FD_SOCK" socket-binding="jgroups-tcp-fd"/>
> <protocol type="FD"/>
> <protocol type="VERIFY_SUSPECT"/>
> <protocol type="pbcast.NAKACK2">
> <property name="use_mcast_xmit">
> false
> </property>
> <property name="use_mcast_xmit_req">
> false
> </property>
> </protocol>
> <protocol type="UNICAST3"/>
> <protocol type="pbcast.STABLE"/>
> <protocol type="pbcast.GMS"/>
> <protocol type="MFC"/>
> <protocol type="FRAG2"/>
> <protocol type="RSVP"/>
> </stack>
> </subsystem>
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
11 years