Hi,Marcel
I had found something report error when I using an oracle database for
durable subscriptions(every message needs to be stored is about 5000k).the
errors are:
[2003-8-23 11:19:41 WARN
JdbcManagerCommonTable-XB_-xmlBlaster_192_168_80_11_3412-msgUnitStore_i
nforMessaging_192_168_80_11_3412sblszsnsrxx-addEntry()] Could not insert entry
'org.xmlBlaster.e
ngine.MsgUnitWrapper'-'sblszsnsrxx/2003-08-23 11:19:41.353000001-1060053581353000001':
java.sql.SQLE
xception: inserted value too large for column: 18998
[2003-8-23 11:19:42 ERROR
org.xmlBlaster.engine.msgstore.cache.PersistenceCachePlugin-msgUnitStor
e:xmlBlaster_192_168_80_11_3412/sblszsnsrxx] put: an error occured when writing to the
persisten
t queue, transient entry sblszsnsrxx/2003-08-23 11:19:41.353000001 is not swapped and
will be lost.
Is the DB up and running ? xmlBlasterException errorCode=[resource.db.unknown]
serverSideExcepti
on=true node=[xmlBlaster_192_168_80_11_3412]
location=[JdbcManagerCommonTable.addEntry] message=
[An unknown error with the backend database using JDBC occurred :
java.sql.SQLException: inserted
value too large for column: 18998] state:
<PersistenceCachePlugin id='msgUnitStore:xmlBlaster_192_168_80_11_3412/sblszsnsrxx'
type='CACHE
' version='1.0' numOfEntries='95' numOfBytes='2094335'>
<MapPlugin id='msgUnitStore:xmlBlaster_192_168_80_11_3412/sblszsnsrxx' type='RAM'
version='1.0
' numOfEntries='95' numOfBytes='2094335'>
<persistence relating='msgUnitStore' maxEntries='1000000' maxEntriesCache='1000000'
maxBytes='209
7152'/>
</MapPlugin>
<JdbcQueueCommonTablePlugin
id='msgUnitStore:xmlBlaster_192_168_80_11_3412/sblszsnsrxx' type='
JDBC' version='1.0' numOfEntries='0' numOfBytes='0'>
<persistence relating='msgUnitStore' maxEntries='100000000'
maxEntriesCache='1000000'/>
<numOfPersistentsCached>0</numOfPersistentsCached>
<sizeOfPersistentsCached>0</sizeOfPersistentsCached>
<numOfEntriesCached>0</numOfEntriesCached>
<numOfBytesCached>0</numOfBytesCached>
<numOfEntries>0</numOfEntries>
<numOfBytes>0</numOfBytes>
<numOfPersistents>0</numOfPersistents>
<sizeOfPersistents>0</sizeOfPersistents>
</JdbcQueueCommonTablePlugin>
</PersistenceCachePlugin>
i had modified some codes in JdbcManagerCommonTable.java, and the problem is
solved.
the modification are:
//preStatement.setBytes(5, blob);
//use this bytes array to construct a InputStream
ByteArrayInputStream blob_stream = new ByteArrayInputStream(blob) ;
// preStatement.setBytes(5, blob);
preStatement.setBinaryStream(5, blob_stream,(int)sizeInBytes);
In my option,setBytes mothed is limited by length of blob object, but
setBinaryStream not.
Marcel, any problem in my modification?
regards
pikaiyuan
[EMAIL PROTECTED]
2003-08-25