[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[xmlblaster] JDBC connection going stale in 0.84



Hello XMLBlaster team,

We are encountering an issue with XMLBlaster 0.84 relating to persistent
message storage. We have it configured to use a postgres database as the
target for persistent storage. 

After several days of running, we believe that XMLBlaster's database
connection goes stale. After that point, no database persistence works. See
below:

 [Feb 28, 2003 12:42:54 PM ERROR
TopicHandler-/node/http_10_1_10_20_3412/msg/http_10_1_10_20_3412-10464538942
05000000] Persisting TopicHandler failed, we continue memory based:
XmlBlasterException errorCode=[resource.db.unknown]
node=[http_10_1_10_20_3412]
location=[org.xmlBlaster.util.queue.jdbc.JdbcQueuePlugin-topicStore:http_10_
1_10_20_3412] message=[removeRandom(entry[]) caught sql exception, status is
 <JdbcQueuePlugin id='topicStore:http_10_1_10_20_3412' type='JDBC'
version='1.0' numOfEntries='23' numOfBytes='11477'>
  <persistence relating='topicStore'/>
  <numOfPersistents>23</numOfPersistents>
  <sizeOfPersistents>11477</sizeOfPersistents>
  <associatedTable>XMLBLASTER1044294718704000000</associatedTable>
 </JdbcQueuePlugin> : An IO erro occured while sending to the backend -
Exception: java.net.SocketException: Socket closed
Stack Trace:

java.net.SocketException: Socket closed
	at java.net.SocketOutputStream.socketWrite0(Native Method)
	at
java.net.SocketOutputStream.socketWrite(SocketOutputStream.java(Compiled
Code))
	at
java.net.SocketOutputStream.write(SocketOutputStream.java(Compiled Code))
	at
java.io.BufferedOutputStream.write(BufferedOutputStream.java(Compiled Code))
	at
java.io.BufferedOutputStream.write(BufferedOutputStream.java(Compiled Code))
	at
org.postgresql.core.QueryExecutor.sendQuery(QueryExecutor.java(Compiled
Code))
	at
org.postgresql.core.QueryExecutor.sendQuery(QueryExecutor.java(Compiled
Code))
	at
org.postgresql.core.QueryExecutor.execute(QueryExecutor.java(Compiled Code))
	at
org.postgresql.jdbc1.AbstractJdbc1Statement.execute(AbstractJdbc1Statement.j
ava(Compiled Code))
	at
org.postgresql.jdbc1.AbstractJdbc1Statement.execute(AbstractJdbc1Statement.j
ava(Compiled Code))
	at
org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.j
ava(Compiled Code))
	at
org.postgresql.jdbc1.AbstractJdbc1Statement.executeUpdate(AbstractJdbc1State
ment.java(Compiled Code))
	at
org.postgresql.jdbc1.AbstractJdbc1Statement.executeUpdate(AbstractJdbc1State
ment.java:183)
	at
org.xmlBlaster.util.queue.jdbc.JdbcManager.update(JdbcManager.java:673)
	at
org.xmlBlaster.util.queue.jdbc.JdbcManager.deleteEntries(JdbcManager.java:99
6)
	at
org.xmlBlaster.util.queue.jdbc.JdbcQueuePlugin.removeRandom(JdbcQueuePlugin.
java:567)
	at
org.xmlBlaster.util.queue.jdbc.JdbcQueuePlugin.removeRandom(JdbcQueuePlugin.
java:542)
	at
org.xmlBlaster.util.queue.jdbc.JdbcQueuePlugin.remove(JdbcQueuePlugin.java:1
000)
	at
org.xmlBlaster.engine.msgstore.cache.PersistenceCachePlugin.remove(Persisten
ceCachePlugin.java(Compiled Code))
	at
org.xmlBlaster.engine.RequestBroker.removePersistentTopicHandler(RequestBrok
er.java:1111)
	at
org.xmlBlaster.engine.TopicHandler.removeTopicPersistence(TopicHandler.java:
1265)
	at org.xmlBlaster.engine.TopicHandler.toDead(TopicHandler.java:1402)
	at
org.xmlBlaster.engine.TopicHandler.fireMessageEraseEvent(TopicHandler.java:1
558)
	at
org.xmlBlaster.engine.RequestBroker.erase(RequestBroker.java:1659)
	at
org.xmlBlaster.engine.RequestBroker.erase(RequestBroker.java:1602)
	at
org.xmlBlaster.engine.XmlBlasterImpl.erase(XmlBlasterImpl.java:258)
	at
org.xmlBlaster.protocol.xmlrpc.XmlBlasterImpl.erase(XmlBlasterImpl.java:208)
	at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source)
	at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl
.java:40)
	at java.lang.reflect.Method.invoke(Method.java:335)
	at org.apache.xmlrpc.Invoker.execute(Unknown Source)
	at org.apache.xmlrpc.XmlRpcServer$Worker.executeInternal(Unknown
Source)
	at org.apache.xmlrpc.XmlRpcServer$Worker.execute(Unknown Source)
	at org.apache.xmlrpc.WebServer$Connection.run(Unknown Source)
	at org.apache.xmlrpc.WebServer$Connection.run(Unknown Source)
	at org.apache.xmlrpc.WebServer$Runner.run(Unknown Source)
	at java.lang.Thread.run(Thread.java:566)
End of Stack Trace
]

If this has been fixed in more recent versions, please let us know. We saw
the following and didn't know if it addressed it: "Bugfix of deadlock in
JDBC protocol driver which used the buggy org.jutils.time.Timeout. Ported
org.jutils.pool to org.xmlBlaster.util.pool. Reported by Sebastian Sturm"

Thanks,

Lance Thomas