[
https://issues.jboss.org/browse/ISPN-2023?page=com.atlassian.jira.plugin....
]
Tristan Tarrant commented on ISPN-2023:
---------------------------------------
The problem is that executing DDL on a XA-enabled datasource causes the global transaction
to be marked as failed because of the SELECT COUNT statement with some JDBC drivers, and
therefore subsequent DDL will fail. A solution is to use separate connections for the
SELECT COUNT and for the CREATE TABLE statements.
JdbcUtil.safeClose() - does it work against PostgreSQL 9.0?
-----------------------------------------------------------
Key: ISPN-2023
URL:
https://issues.jboss.org/browse/ISPN-2023
Project: Infinispan
Issue Type: Bug
Components: Loaders and Stores
Affects Versions: 5.1.2.FINAL
Environment: JBoss 7.1.1.Final, Infinispan 5.1.2.Final, PostgreSQL 9.0
Reporter: Jim Dunkerton
Assignee: Tristan Tarrant
Labels: jdbcutil, postgres
Fix For: 5.1.x, 5.2.0.ALPHA1, 5.2.0.FINAL
I am seeing the following error logged in server.log:
Caused by: org.postgresql.util.PSQLException: ERROR: current transaction is aborted,
commands ignored until end of transaction block
at
org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2102)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1835)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:257)
at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:512)
at
org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:374)
at
org.postgresql.jdbc2.AbstractJdbc2Statement.executeUpdate(AbstractJdbc2Statement.java:302)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.6.0_23]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
[rt.jar:1.6.0_23]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
[rt.jar:1.6.0_23]
at java.lang.reflect.Method.invoke(Method.java:597) [rt.jar:1.6.0_23]
at
org.postgresql.ds.jdbc23.AbstractJdbc23PooledConnection$StatementHandler.invoke(AbstractJdbc23PooledConnection.java:455)
at $Proxy49.executeUpdate(Unknown Source) at
org.jboss.jca.adapters.jdbc.WrappedStatement.executeUpdate(WrappedStatement.java:371)
at
org.infinispan.loaders.jdbc.TableManipulation.executeUpdateSql(TableManipulation.java:154)
[infinispan-cachestore-jdbc-5.1.2.FINAL.jar:5.1.2.FINAL]
... 154 more
I believe it is down to the code suggested in ISPN-1204, which eventually was committed,
perhaps not quite working against PostgreSQL 9.0?
I have attached a debugger to a live JBoss instance with this code running, and set a
breakpoint on entry into the tableExists() method. PostgreSQL threw an exception and it
was caught, but later on, the attempt to create the table in the
TableManipulation.createTable() method resulted in the exception given above. Perhaps the
JdbcUtil.safeClose() methods do not work against PostgreSQL 9.0?
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see:
http://www.atlassian.com/software/jira