-
1. Re: Jboss messaging - persistance issue for blob data
ataylor Jan 25, 2008 4:24 AM (in response to 143564)Can you provide a stacktrace
-
2. Re: Jboss messaging - persistance issue for blob data
143564 Jan 25, 2008 6:12 AM (in response to 143564)Hi ,
Please find the Error Log..
2008-01-25 12:07:52,701 WARN [org.jboss.resource.connectionmanager.TxConnectionManager] Connection error occured: org.jboss.resource.connectionmanager.TxConnectionManager$TxConnectionEventListener@1eeeaed[state=NORMAL mc=org.jboss.resource.adapter.jdbc.local.LocalManagedConnection@c74e66 handles=1 lastUse=1201259197200 permit=true trackByTx=true mcp=org.jboss.resource.connectionmanager.JBossManagedConnectionPool$OnePool@ec4462 context=org.jboss.resource.connectionmanager.InternalManagedConnectionPool@17d94f8 xaResource=org.jboss.resource.connectionmanager.TxConnectionManager$LocalXAResource@823618 txSync=null]
java.sql.SQLException: I/O-undantag: Software caused connection abort: socket write error
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:179)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:333)
at oracle.jdbc.driver.OracleStatement.executeNonQuery(OracleStatement.java:2061)
at oracle.jdbc.driver.OracleStatement.doExecuteOther(OracleStatement.java:1940)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2709)
at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:589)
at org.jboss.resource.adapter.jdbc.WrappedPreparedStatement.executeUpdate(WrappedPreparedStatement.java:251)
at org.jboss.messaging.core.plugin.JDBCPersistenceManager.updateWithRetry(JDBCPersistenceManager.java:2946)
at org.jboss.messaging.core.plugin.JDBCPersistenceManager.updateWithRetry(JDBCPersistenceManager.java:2818)
at org.jboss.messaging.core.plugin.JDBCPersistenceManager.addReference(JDBCPersistenceManager.java:1312)
at org.jboss.messaging.core.ChannelSupport.handleInternal(ChannelSupport.java:757)
at org.jboss.messaging.core.ChannelSupport.handle(ChannelSupport.java:157)
at org.jboss.messaging.core.local.PagingFilteredQueue.handle(PagingFilteredQueue.java:114)
at org.jboss.messaging.core.plugin.postoffice.cluster.DefaultRouter.handle(DefaultRouter.java:88)
at org.jboss.messaging.core.plugin.postoffice.cluster.DefaultClusteredPostOffice.route(DefaultClusteredPostOffice.java:1151)
at org.jboss.jms.server.endpoint.ServerConnectionEndpoint.sendMessage(ServerConnectionEndpoint.java:692)
at org.jboss.jms.server.endpoint.ServerSessionEndpoint.send(ServerSessionEndpoint.java:297)
at org.jboss.jms.server.endpoint.advised.SessionAdvised.org$jboss$jms$server$endpoint$advised$SessionAdvised$send$aop(SessionAdvised.java:80)
at org.jboss.jms.server.endpoint.advised.SessionAdvised$send_6145266547759487588.invokeNext(SessionAdvised$send_6145266547759487588.java)
at org.jboss.jms.server.container.SecurityAspect.handleSend(SecurityAspect.java:152)
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 org.jboss.aop.advice.PerInstanceAdvice.invoke(PerInstanceAdvice.java:121)
at org.jboss.jms.server.endpoint.advised.SessionAdvised$send_6145266547759487588.invokeNext(SessionAdvised$send_6145266547759487588.java)
at org.jboss.jms.server.container.ServerLogInterceptor.invoke(ServerLogInterceptor.java:105)
at org.jboss.jms.server.endpoint.advised.SessionAdvised$send_6145266547759487588.invokeNext(SessionAdvised$send_6145266547759487588.java)
at org.jboss.jms.server.endpoint.advised.SessionAdvised.send(SessionAdvised.java)
at org.jboss.jms.wireformat.SessionSendRequest.serverInvoke(SessionSendRequest.java:85)
at org.jboss.jms.server.remoting.JMSServerInvocationHandler.invoke(JMSServerInvocationHandler.java:141)
at org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:734)
at org.jboss.remoting.transport.local.LocalClientInvoker.invoke(LocalClientInvoker.java:101)
at org.jboss.remoting.Client.invoke(Client.java:1550)
at org.jboss.remoting.Client.invoke(Client.java:530)
at org.jboss.remoting.Client.invoke(Client.java:518)
at org.jboss.jms.client.delegate.DelegateSupport.doInvoke(DelegateSupport.java:186)
at org.jboss.jms.client.delegate.DelegateSupport.doInvoke(DelegateSupport.java:157)
at org.jboss.jms.client.delegate.ClientSessionDelegate.org$jboss$jms$client$delegate$ClientSessionDelegate$send$aop(ClientSessionDelegate.java:446)
at org.jboss.jms.client.delegate.ClientSessionDelegate$send_6145266547759487588.invokeNext(ClientSessionDelegate$send_6145266547759487588.java)
at org.jboss.jms.client.container.SessionAspect.handleSend(SessionAspect.java:634)
at org.jboss.aop.advice.org.jboss.jms.client.container.SessionAspect28.invoke(SessionAspect28.java)
at org.jboss.jms.client.delegate.ClientSessionDelegate$send_6145266547759487588.invokeNext(ClientSessionDelegate$send_6145266547759487588.java)
at org.jboss.jms.client.container.FailoverValveInterceptor.invoke(FailoverValveInterceptor.java:91)
at org.jboss.aop.advice.PerInstanceInterceptor.invoke(PerInstanceInterceptor.java:105)
at org.jboss.jms.client.delegate.ClientSessionDelegate$send_6145266547759487588.invokeNext(ClientSessionDelegate$send_6145266547759487588.java)
at org.jboss.jms.client.container.ClosedInterceptor.invoke(ClosedInterceptor.java:170)
at org.jboss.aop.advice.PerInstanceInterceptor.invoke(PerInstanceInterceptor.java:105)
at org.jboss.jms.client.delegate.ClientSessionDelegate$send_6145266547759487588.invokeNext(ClientSessionDelegate$send_6145266547759487588.java)
at org.jboss.jms.client.delegate.ClientSessionDelegate.send(ClientSessionDelegate.java)
at org.jboss.jms.client.container.ProducerAspect.handleSend(ProducerAspect.java:243)
at org.jboss.aop.advice.org.jboss.jms.client.container.ProducerAspect46.invoke(ProducerAspect46.java)
at org.jboss.jms.client.delegate.ClientProducerDelegate$send_3961598017717988886.invokeNext(ClientProducerDelegate$send_3961598017717988886.java)
at org.jboss.jms.client.container.ClosedInterceptor.invoke(ClosedInterceptor.java:170)
at org.jboss.aop.advice.PerInstanceInterceptor.invoke(PerInstanceInterceptor.java:105)
at org.jboss.jms.client.delegate.ClientProducerDelegate$send_3961598017717988886.invokeNext(ClientProducerDelegate$send_3961598017717988886.java)
at org.jboss.jms.client.delegate.ClientProducerDelegate.send(ClientProducerDelegate.java)
at org.jboss.jms.client.JBossMessageProducer.send(JBossMessageProducer.java:164)
at org.jboss.jms.client.JBossMessageProducer.send(JBossMessageProducer.java:207)
at org.jboss.jms.client.JBossMessageProducer.send(JBossMessageProducer.java:145) -
3. Re: Jboss messaging - persistance issue for blob data
143564 Jan 25, 2008 10:28 AM (in response to 143564)Hi Andy Taylor
I downloaded the messging (jboss-messaging-1.3.0.GA-src) source code and modified some lines.
I followed these steps,
1. opened the org.jboss.messaging.core.plugin.JDBCPersistenceManager.java.
2. Modified the code at line no :2716 and 2760.
3.changes are:
i) // ps.setBinaryStream(columnIndex, is, bytes.length);
to
ps.setBlob(columnIndex, (Blob)is);
ii)
//InputStream i = rs.getBinaryStream(columnIndex);
to
InputStream i = (InputStream) rs.getBlob(columnIndex);
Now perfectly working.
Is this the right way?. if ok , Is there any changes are Still required ?.
Thanks -
4. Re: Jboss messaging - persistance issue for blob data
143564 Jan 25, 2008 11:34 AM (in response to 143564)Sorry , its wrong
Correct changs is,
ps.setObject(columnIndex, bytes); (its working)
ps.setBlob(columnIndex, (Blob)is);(this line was not working)
I haven't used ByteArrayInputStream. -
5. Re: Jboss messaging - persistance issue for blob data
143564 Jan 25, 2008 11:49 AM (in response to 143564)Now I found my issue.
Instead of changing the code, i went to clustered-oracle-persistant.xml. then i added a tag
false
Now every thing is perfect.
Thanks -
6. Re: Jboss messaging - persistance issue for blob data
143564 Jan 26, 2008 11:11 AM (in response to 143564)"143564" wrote:
Now I found my issue.
Instead of changing the code, i went to clustered-oracle-persistant.xml. then i added a tag
< attribute name="UsingBinaryStream" >false</ attribute >
Now every thing is perfect.
Thanks