Google 网上论坛不再支持新的 Usenet 帖子或订阅项。历史内容仍可供查看。

Moving from postgres 8.3 to 9.1 on glassfish 2.1

已查看 48 次
跳至第一个未读帖子

Richard Marshall

未读,
2013年2月1日 08:18:462013/2/1
收件人
Hi,

We are trying to update our postgres estate to 9.1 servers from 8.3. I am currently going through all the systems that connect so that I can start updating client libraries (I'm hoping to move to the latest 9.2 drivers.) Most of the systems so far
have been happy moving to the recent libs but I've got stuck at a legacy application (so we're not allowed to make any changes to the code..) which is running on Glassfish 2.1 with a postgres 8.1-407 library.

I have been able to get the system to run up as far a postgres-8.4.703 libs, but the application will not work with any of the 9.X libraries. We see a number of stack traces, but essentially it's complaining that it cannot complete a transaction (see two stack trace heads below). We can see in the source code that we are setting autocommit=true in the connection in the code but we can;t change this.

It appears behaviour between 8.4 and 9.0+ changed. Is there anyway we can overcome this?

Will and 8.4 driver be safe working with a 9.1 database? (it's currently running 8.1 driver against 8.3 database). We have no plans to change the datastructure when we move to 9.1, it's simply to leverage improved vacuuming, replication options, etc.

Any help much appreciated!!

Many thanks

Rich



javax.ejb.EJBException: Unable to complete container-managed transaction.; nested exception is: javax.transaction.SystemException
javax.transaction.SystemException
at com.sun.enterprise.distributedtx.J2EETransaction.commit(J2EETransaction.java:476)
at com.sun.enterprise.distributedtx.J2EETransactionManagerOpt.commit(J2EETransactionManagerOpt.java:371)
at com.sun.ejb.containers.BaseContainer.completeNewTx(BaseContainer.java:3792)
at com.sun.ejb.containers.BaseContainer.postInvokeTx(BaseContainer.java:3571)
at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1354)
at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1316)
at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:210)
at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:120)
at $Proxy366.processExpiredSuspendedObservers(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.privateInvoke(StubInvocationHandlerImpl.java:233)
at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.invoke(StubInvocationHandlerImpl.java:152)
at com.sun.corba.ee.impl.presentation.rmi.bcel.BCELStubBase.invoke(BCELStubBase.java:225)

|SEVERE|sun-appserver9.1|javax.enterprise.resource.resourceadapter|_ThreadID=19;_ThreadName=p: thread-pool-1; w: 7;_RequestID=991e1fc7-24e1-4664-a92b-4514bc587665;|RAR5031:System Exception.
javax.resource.spi.LocalTransactionException: Cannot commit when autoCommit is enabled.
at com.sun.gjc.spi.LocalTransaction.commit(LocalTransaction.java:93)
at com.sun.enterprise.resource.ConnectorXAResource.commit(ConnectorXAResource.java:114)
at com.sun.enterprise.distributedtx.J2EETransaction.commit(J2EETransaction.java:462)
at com.sun.enterprise.distributedtx.J2EETransactionManagerOpt.commit(J2EETransactionManagerOpt.java:371)
at com.sun.ejb.containers.BaseContainer.completeNewTx(BaseContainer.java:3792)
at com.sun.ejb.containers.BaseContainer.postInvokeTx(BaseContainer.java:3571)
at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1354)
at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1316)
at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:210)
at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:120)
at $Proxy366.processExpiredSuspendedObservers(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.privateInvoke(StubInvocationHandlerImpl.java:233)
at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.invoke(StubInvocationHandlerImpl.java:152)
at com.sun.corba.ee.impl.presentation.rmi.bcel.BCELStubBase.invoke(BCELStubBase.java:225)
0 个新帖子