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


Reply via email to