]
Hayk Hovsepyan commented on WFLY-5501:
--------------------------------------
As it is up to us, I suggest to keep in scope of existing issue.
JDBC Object Store problem with Mariadb55
----------------------------------------
Key: WFLY-5501
URL:
https://issues.jboss.org/browse/WFLY-5501
Project: WildFly
Issue Type: Bug
Components: Transactions
Reporter: Hayk Hovsepyan
Assignee: Tom Jenkinson
Fix For: 10.0.0.CR4
Attachments: mariadb_jar.zip, server.log, standalone.xml
When configuring transactions to use Mariadb55 Datasource as a JDBC Object store, server
fails to start with error:
{code}
13:56:51,485 ERROR [org.jboss.as.controller.management-operation] (Controller Boot
Thread) WFLYCTL0013: Operation ("add") failed - address:
([("subsystem" => "transactions")]) - failure description:
{"WFLYCTL0080: Failed services" =>
{"jboss.txn.ArjunaRecoveryManager" =>
"org.jboss.msc.service.StartException in service jboss.txn.ArjunaRecoveryManager:
WFLYTX0005: Recovery manager create failed
Caused by: java.lang.NullPointerException"}}
{code}
Steps to reproduce:
1. Create Mariadb55 JDBC driver module. Module archived directory is attached.
2. Add driver into configuration xml.
3. Create Datasource pointing to Mariadb55 database and using driver configured a a
module.
4. Configure transactions to use jdbc-store the added Datasource. standalone.xml is
attached.
5. Server fails to start. server.log is attached.
config xml file part:
{code}
<subsystem xmlns="urn:jboss:domain:datasources:4.0">
<datasources>
<datasource jndi-name="java:jboss/datasources/ExampleDS"
pool-name="ExampleDS" enabled="true"
use-java-context="true">
<connection-url>jdbc:h2:mem:test;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE</connection-url>
<driver>h2</driver>
<security>
<user-name>sa</user-name>
<password>sa</password>
</security>
</datasource>
<datasource jta="false"
jndi-name="java:jboss/datasources/jdbc-store"
pool-name="JDBCObjectStore" enabled="true"
use-java-context="true">
<connection-url>jdbc:mariadb://db22.mw.lab.eng.bos.redhat.com:3306/dballo17</connection-url>
<driver>module_mariadb.jar</driver>
<security>
<user-name>dballo17</user-name>
<password>dballo17</password>
</security>
</datasource>
<drivers>
<driver name="h2"
module="com.h2database.h2">
<xa-datasource-class>org.h2.jdbcx.JdbcDataSource</xa-datasource-class>
</driver>
<driver name="module_mariadb.jar"
module="mariadb_jar"/>
</drivers>
</datasources>
</subsystem>
<subsystem xmlns="urn:jboss:domain:transactions:3.0">
<core-environment>
<process-id>
<uuid/>
</process-id>
</core-environment>
<recovery-environment socket-binding="txn-recovery-environment"
status-socket-binding="txn-status-manager"/>
<coordinator-environment enable-tsm-status="true"/>
<jdbc-store
datasource-jndi-name="java:jboss/datasources/jdbc-store"/>
</subsystem>
{code}
Attached necessary info:
1. server.log
2. Module zip to extract in $JBOSS_HOME/modules/system/layers/base
3. standalone.xml
Notes:
The same steps works for other databases.
When step 4. is not executed server starts successfully, so module is recognized.