You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "Ch.Krauss (JIRA)" <ji...@apache.org> on 2017/08/01 10:52:00 UTC

[jira] [Updated] (AMQ-6780) New Postgres JDBC-Driver not recognized

     [ https://issues.apache.org/jira/browse/AMQ-6780?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ch.Krauss updated AMQ-6780:
---------------------------
    Description: 
After our switch of the postgres-jdbc-driver from version 9.4-1201 to 42.1.3 the JDBCPersistenceAdapter does not recognize postgres any more. 
The log:

{code:title=new driver}
2017-07-31 19:35:52,733 [INFO ] 259-949-060 [JDBCPersistenceAdapter : loadAdapter] - Database adapter driver override not found for : [postgresql_jdbc_driver].  Will use default implementation.
2017-07-31 19:35:52,765 [WARN ] 259-949-060 [DefaultJDBCAdapter : executeStatement] - Could not create JDBC tables; they could already exist. Failure was: CREATE TABLE ACTIVEMQ_MSGS(ID BIGINT NOT NULL, CONTAINER VARCHAR(250) NOT NULL, MSGID_PROD VARCHAR(250), MSGID_SEQ BIGINT, EXPIRATION BIGINT, MSG BLOB, PRIMARY KEY ( ID ) ) Message: ERROR: type "blob" does not exist
  Position: 147 SQLState: 42704 Vendor code: 0
{code}

{code:title=old driver}
2017-07-31 19:37:21,021 [INFO ] 11b-e48-c83 [JDBCPersistenceAdapter : loadAdapter] - Database adapter driver override recognized for : [postgresql_native_driver] - adapter: class org.apache.activemq.store.jdbc.adapter.PostgresqlJDBCAdapter
{code}

The cause is the change of the name from "postgres_native_driver" to "postgres_jdbc_driver" (getDriverName() now returns "PostgreSQL JDBC Driver"). The PostgresqlJDBCAdapter uses the name to find the class. 
Our workaround is to add a file "postgres_jdbc_driver" to "META-INF/services/org/apache/activemq/store/jdbc" in the "activemq-jdbc-store-5.15.0.jar".


  was:
After our switch of the postgres-jdbc-driver from version 9.4-1201 to 42.1.3 the JDBCPersistenceAdapter does not recognize postgres any more. 
The log:

{code:title=new driver}
2017-07-31 19:35:52,733 [INFO ] 259-949-060 [JDBCPersistenceAdapter : loadAdapter] - Database adapter driver override not found for : [postgresql_jdbc_driver].  Will use default implementation.
2017-07-31 19:35:52,765 [WARN ] 259-949-060 [DefaultJDBCAdapter : executeStatement] - Could not create JDBC tables; they could already exist. Failure was: CREATE TABLE ACTIVEMQ_MSGS(ID BIGINT NOT NULL, CONTAINER VARCHAR(250) NOT NULL, MSGID_PROD VARCHAR(250), MSGID_SEQ BIGINT, EXPIRATION BIGINT, MSG BLOB, PRIMARY KEY ( ID ) ) Message: ERROR: type "blob" does not exist
  Position: 147 SQLState: 42704 Vendor code: 0
{code}

{code:title=old driver}
2017-07-31 19:37:21,021 [INFO ] 11b-e48-c83 [JDBCPersistenceAdapter : loadAdapter] - Database adapter driver override recognized for : [postgresql_native_driver] - adapter: class org.apache.activemq.store.jdbc.adapter.PostgresqlJDBCAdapter
{code}

The cause is the change of the name from "postgres_native_driver" to "postgres_jdbc_driver". The PostgresqlJDBCAdapter uses the name to find the class. 
Our workaround is to add a file "postgres_jdbc_driver" to "META-INF/services/org/apache/activemq/store/jdbc" in the "activemq-jdbc-store-5.15.0.jar".



> New Postgres JDBC-Driver not recognized
> ---------------------------------------
>
>                 Key: AMQ-6780
>                 URL: https://issues.apache.org/jira/browse/AMQ-6780
>             Project: ActiveMQ
>          Issue Type: Bug
>    Affects Versions: 5.15.0
>            Reporter: Ch.Krauss
>
> After our switch of the postgres-jdbc-driver from version 9.4-1201 to 42.1.3 the JDBCPersistenceAdapter does not recognize postgres any more. 
> The log:
> {code:title=new driver}
> 2017-07-31 19:35:52,733 [INFO ] 259-949-060 [JDBCPersistenceAdapter : loadAdapter] - Database adapter driver override not found for : [postgresql_jdbc_driver].  Will use default implementation.
> 2017-07-31 19:35:52,765 [WARN ] 259-949-060 [DefaultJDBCAdapter : executeStatement] - Could not create JDBC tables; they could already exist. Failure was: CREATE TABLE ACTIVEMQ_MSGS(ID BIGINT NOT NULL, CONTAINER VARCHAR(250) NOT NULL, MSGID_PROD VARCHAR(250), MSGID_SEQ BIGINT, EXPIRATION BIGINT, MSG BLOB, PRIMARY KEY ( ID ) ) Message: ERROR: type "blob" does not exist
>   Position: 147 SQLState: 42704 Vendor code: 0
> {code}
> {code:title=old driver}
> 2017-07-31 19:37:21,021 [INFO ] 11b-e48-c83 [JDBCPersistenceAdapter : loadAdapter] - Database adapter driver override recognized for : [postgresql_native_driver] - adapter: class org.apache.activemq.store.jdbc.adapter.PostgresqlJDBCAdapter
> {code}
> The cause is the change of the name from "postgres_native_driver" to "postgres_jdbc_driver" (getDriverName() now returns "PostgreSQL JDBC Driver"). The PostgresqlJDBCAdapter uses the name to find the class. 
> Our workaround is to add a file "postgres_jdbc_driver" to "META-INF/services/org/apache/activemq/store/jdbc" in the "activemq-jdbc-store-5.15.0.jar".



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)