[
https://issues.jboss.org/browse/WFLY-5623?page=com.atlassian.jira.plugin....
]
Ondřej Chaloupka updated WFLY-5623:
-----------------------------------
Steps to Reproduce:
# Configure server to use jdbc object store (you can use the attached configuration)
## copy attached {{standalone-full.xml}} to {{$JBOSS_HOME/standalone/configuration}}
# Configure jdbc driver as module - you can use attached jdbc module with oracle driver
## {{cd $JBOSS_HOME}}
## {{unzip jdbc-module.zip}}
# Start server
## {{./bin/standalone.sh -c standalone-full.xml}}
# Stop server by pressing CTRL+C immediatelly when you see message: {{INFO
[org.jboss.as] (Controller Boot Thread) WFLYSRV0025: EAP 7.0.0.Alpha1 (WildFly Core
2.0.0.CR8) started in 8432ms - Started 305 of 535 services (331 services are lazy, passive
or on-demand)}}
## you need to stop the server during recovery is in process. you can also wait for
recovery being run and then stop the server. the period for waiting for recovery could be
change from default 2min by adding parameter {{./bin/standalone.sh -c standalone-full.xml
-Dcom.arjuna.ats.arjuna.recovery.periodicRecoveryPeriod=30}}
Attachment: server.log
jdbc-store-stuck-server.jstack
standalone-full.xml
jdbc-module.zip
Stuck server when stopped right after started if jdbc store for
transaction logs is used
----------------------------------------------------------------------------------------
Key: WFLY-5623
URL:
https://issues.jboss.org/browse/WFLY-5623
Project: WildFly
Issue Type: Bug
Components: Transactions
Reporter: Ondřej Chaloupka
Assignee: Tom Jenkinson
Priority: Major
Attachments: jdbc-module.zip, jdbc-store-stuck-server.jstack, server.log,
standalone-full.xml
It happens to me that when using jdbc object store for transactions with driver loaded as
a module then if I start server and stopped it right after the start is finished I can see
error [1] and server stay stuck. I need to run {{kill -9}} to server finish.
This seems to be connected with recovery processing. If I start server and not stopping
it immediately after it was started then I do not experience this problem.
But if leave server to run for some time and I decide to stop server at time when
periodic recovery is in process (e.g. checking {{server.log}} activity by {{tail -F
standalone/log/server.log}} then I experience the same problem.
[1]
{code}
WARN [com.arjuna.ats.arjuna] (Periodic Recovery) ARJUNA012251: allObjUids caught
exception: java.lang.IllegalStateException
at org.jboss.msc.value.InjectedValue.getValue(InjectedValue.java:47)
at
org.jboss.as.naming.service.DefaultNamespaceContextSelectorService$1.getContext(DefaultNamespaceContextSelectorService.java:56)
at
org.jboss.as.naming.InitialContext$DefaultInitialContext.findContext(InitialContext.java:187)
at
org.jboss.as.naming.InitialContext$DefaultInitialContext.lookup(InitialContext.java:233)
at org.jboss.as.naming.NamingContext.lookup(NamingContext.java:193)
at org.jboss.as.naming.NamingContext.lookup(NamingContext.java:189)
at javax.naming.InitialContext.lookup(InitialContext.java:417)
at javax.naming.InitialContext.lookup(InitialContext.java:417)
at
com.arjuna.ats.internal.arjuna.objectstore.jdbc.accessors.DataSourceJDBCAccess.getConnection(DataSourceJDBCAccess.java:53)
at
com.arjuna.ats.internal.arjuna.objectstore.jdbc.JDBCImple_driver.allObjUids(JDBCImple_driver.java:345)
at
com.arjuna.ats.internal.arjuna.objectstore.jdbc.JDBCStore.allObjUids(JDBCStore.java:166)
at
com.arjuna.ats.internal.arjuna.objectstore.jdbc.JDBCStore.allObjUids(JDBCStore.java:122)
at
com.arjuna.ats.arjuna.objectstore.ObjectStoreIterator.<init>(ObjectStoreIterator.java:53)
at
com.arjuna.ats.internal.jta.recovery.arjunacore.CommitMarkableResourceRecordRecoveryModule.periodicWorkFirstPass(CommitMarkableResourceRecordRecoveryModule.java:390)
at
com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.doWorkInternal(PeriodicRecovery.java:747)
at
com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.run(PeriodicRecovery.java:375)
ERROR [stderr] (Periodic Recovery) Exception in thread "Periodic Recovery"
java.lang.NullPointerException
ERROR [stderr] (Periodic Recovery) at
com.arjuna.ats.arjuna.recovery.TransactionStatusConnectionManager.getTransactionStatus(TransactionStatusConnectionManager.java:92)
ERROR [stderr] (Periodic Recovery) at
com.arjuna.ats.internal.jta.recovery.arjunacore.CommitMarkableResourceRecordRecoveryModule.periodicWorkFirstPass(CommitMarkableResourceRecordRecoveryModule.java:399)
ERROR [stderr] (Periodic Recovery) at
com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.doWorkInternal(PeriodicRecovery.java:747)
ERROR [stderr] (Periodic Recovery) at
com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.run(PeriodicRecovery.java:375)
{code}
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)