Bug 1016120 - Transaction JDBC object store does not start on PostgreSQL Plus 9.2
Transaction JDBC object store does not start on PostgreSQL Plus 9.2
Status: CLOSED CURRENTRELEASE
Product: JBoss Enterprise Application Platform 6
Classification: JBoss
Component: Transaction Manager (Show other bugs)
6.2.0
Unspecified Unspecified
unspecified Severity urgent
: ER7
: EAP 6.2.0
Assigned To: tom.jenkinson
Ondrej Chaloupka
Russell Dickenson
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2013-10-07 10:40 EDT by Ondrej Chaloupka
Modified: 2013-12-15 11:19 EST (History)
4 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
The JBoss Transaction Manager did not have a properly configured driver class for PostgreSQL Plus 9.2. This resulted in a `ClassNotFoundException` exception when attempting to use a JDBC transaction object store on PostgreSQL Plus 9.2. In this release of JBoss EAP 6, the JBoss Transaction Manager as been updated with a PostgreSQL Plus 9.2 driver class (`jdbc.drivers.postgres_driver`), and JDBC object stores can now be used with PostgreSQL Plus 9.2 servers.
Story Points: ---
Clone Of:
Environment:
Last Closed: 2013-12-15 11:19:02 EST
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)


External Trackers
Tracker ID Priority Status Summary Last Updated
JBoss Issue Tracker JBTM-1976 Major Closed Add support for JDBC object store on PostgreSQL Plus 9.2 2017-06-15 21:58 EDT

  None (edit)
Description Ondrej Chaloupka 2013-10-07 10:40:36 EDT
There is problem to start EAP with jdbc object store configured to be saved on PostgreSQL Plus 9.2.

The DatabaseMetaData getDriverName() method returns for standard PostgreSQL string: 'postgresql'
BUT the same method fro PostgreSQL *Plus* returns string: 'postgres'

The Narayana imlementation contains driver class com.arjuna.ats.internal.arjuna.objectstore.jdbc.drivers.postgresql_driver but it does not count with class com.arjuna.ats.internal.arjuna.objectstore.jdbc.drivers.postgres_driver


For that reason you will get error on starting server:
FATAL [com.arjuna.ats.arjuna] (MSC service thread 1-4) ARJUNA012260: Received exception for com.arjuna.ats.internal.arjuna.objectstore.jdbc.accessors.DataSourceJDBCAccess:JBossTSTxTable: java.lang.ClassNotFoundException: com.arjuna.ats.internal.arjuna.objectstore.jdbc.drivers.postgres_driver
  at java.lang.Class.forNameImpl(Native Method) [vm.jar:1.7.0]
  at java.lang.Class.forName(Class.java:181) [vm.jar:1.7.0]
  at com.arjuna.ats.internal.arjuna.objectstore.jdbc.JDBCStore.<init>(JDBCStore.java:260) [jbossjts-jacorb-4.17.10.Final-redhat-2.jar:4.17.10.Final-redhat-2]
  at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) [rt.jar:1.7.0]
  at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:68) [rt.jar:1.7.0]
  at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) [rt.jar:1.7.0]
  at java.lang.reflect.Constructor.newInstance(Constructor.java:529) [rt.jar:2.6 (06-17-2013)]
  at com.arjuna.ats.arjuna.objectstore.StoreManager.initStore(StoreManager.java:183) [jbossjts-jacorb-4.17.10.Final-redhat-2.jar:4.17.10.Final-redhat-2]
  at com.arjuna.ats.arjuna.objectstore.StoreManager.getActionStore(StoreManager.java:111) [jbossjts-jacorb-4.17.10.Final-redhat-2.jar:4.17.10.Final-redhat-2]
  at com.arjuna.ats.arjuna.objectstore.StoreManager.getRecoveryStore(StoreManager.java:68) [jbossjts-jacorb-4.17.10.Final-redhat-2.jar:4.17.10.Final-redhat-2]
  at com.arjuna.ats.internal.arjuna.recovery.ExpiredTransactionStatusManagerScanner.<init>(ExpiredTransactionStatusManagerScanner.java:60) [jbossjts-jacorb-4.17.10.Final-redhat-2.jar:4.17.10.Final-redhat-2]
  at java.lang.J9VMInternals.newInstanceImpl(Native Method) [vm.jar:1.7.0]
  at java.lang.Class.newInstance(Class.java:1616) [vm.jar:1.7.0]
  at com.arjuna.ats.internal.arjuna.common.ClassloadingUtility.loadAndInstantiateClass(ClassloadingUtility.java:137) [jbossjts-jacorb-4.17.10.Final-redhat-2.jar:4.17.10.Final-redhat-2]
  at com.arjuna.ats.internal.arjuna.common.ClassloadingUtility.loadAndInstantiateClasses(ClassloadingUtility.java:158) [jbossjts-jacorb-4.17.10.Final-redhat-2.jar:4.17.10.Final-redhat-2]
  at com.arjuna.ats.arjuna.common.RecoveryEnvironmentBean.getExpiryScanners(RecoveryEnvironmentBean.java:358) [jbossjts-jacorb-4.17.10.Final-redhat-2.jar:4.17.10.Final-redhat-2]
  at com.arjuna.ats.internal.arjuna.recovery.ExpiredEntryMonitor.loadScanners(ExpiredEntryMonitor.java:242) [jbossjts-jacorb-4.17.10.Final-redhat-2.jar:4.17.10.Final-redhat-2]
  at com.arjuna.ats.internal.arjuna.recovery.ExpiredEntryMonitor.initialise(ExpiredEntryMonitor.java:232) [jbossjts-jacorb-4.17.10.Final-redhat-2.jar:4.17.10.Final-redhat-2]
  at com.arjuna.ats.internal.arjuna.recovery.ExpiredEntryMonitor.startUp(ExpiredEntryMonitor.java:72) [jbossjts-jacorb-4.17.10.Final-redhat-2.jar:4.17.10.Final-redhat-2]
  at com.arjuna.ats.internal.arjuna.recovery.RecoveryManagerImple.<init>(RecoveryManagerImple.java:108) [jbossjts-jacorb-4.17.10.Final-redhat-2.jar:4.17.10.Final-redhat-2]
  at com.arjuna.ats.arjuna.recovery.RecoveryManager.<init>(RecoveryManager.java:460) [jbossjts-jacorb-4.17.10.Final-redhat-2.jar:4.17.10.Final-redhat-2]
  at com.arjuna.ats.arjuna.recovery.RecoveryManager.manager(RecoveryManager.java:130) [jbossjts-jacorb-4.17.10.Final-redhat-2.jar:4.17.10.Final-redhat-2]
  at com.arjuna.ats.arjuna.recovery.RecoveryManager.manager(RecoveryManager.java:110) [jbossjts-jacorb-4.17.10.Final-redhat-2.jar:4.17.10.Final-redhat-2]
  at com.arjuna.ats.jbossatx.jta.RecoveryManagerService.create(RecoveryManagerService.java:54) [jbossjts-integration-4.17.10.Final-redhat-2.jar:4.17.10.Final-redhat-2]
  at org.jboss.as.txn.service.ArjunaRecoveryManagerService.start(ArjunaRecoveryManagerService.java:113) [jboss-as-transactions-7.3.0.Final-redhat-7.jar:7.3.0.Final-redhat-7]
  at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811) [jboss-msc-1.0.4.GA-redhat-1.jar:1.0.4.GA-redhat-1]
  at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746) [jboss-msc-1.0.4.GA-redhat-1.jar:1.0.4.GA-redhat-1]
  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0]
  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0]
  at java.lang.Thread.run(Thread.java:781) [vm.jar:1.7.0]
Comment 1 Ondrej Chaloupka 2013-10-10 08:01:38 EDT
Proposing this as possible bloker as the postgres plus is supported DB.
Comment 6 tom.jenkinson 2013-10-11 12:25:40 EDT
I have resolved this in master as noted above, I can back port to EAP 6.2 once I have the flags
Comment 7 JBoss JIRA Server 2013-10-15 07:47:09 EDT
Tom Jenkinson <tom.jenkinson@redhat.com> updated the status of jira JBTM-1976 to Reopened
Comment 8 JBoss JIRA Server 2013-10-15 07:47:09 EDT
Tom Jenkinson <tom.jenkinson@redhat.com> made a comment on jira JBTM-1976

Re-open for backport
Comment 9 Dimitris Andreadis 2013-10-15 08:43:05 EDT
Change milestone to ER7
Comment 10 Ondrej Chaloupka 2013-10-16 03:47:45 EDT
As this thing is missing in 6.2.0 Beta I'm adding the requires_doc_text to ? as it should be considered to mention this bz in the beta release notes.
Comment 11 JBoss JIRA Server 2013-10-16 05:59:58 EDT
Tom Jenkinson <tom.jenkinson@redhat.com> updated the status of jira JBTM-1976 to Closed
Comment 12 tom.jenkinson 2013-10-16 06:18:30 EDT
https://github.com/jbossas/jboss-eap/pull/562
Comment 13 Ondrej Chaloupka 2013-11-01 06:25:12 EDT
Verified on EAP 6.2.0.ER7.

Note You need to log in before you can comment on or make changes to this bug.