Emmanuel DUPONT wrote:
Since we have put some Clob datatype column in our project we have the error
below. We are using a quit important transaction with many Clob in columns.
Our Clob datas are not so important (Max = 6000 characters in the same
column).

It is quite weird. We are under Oracle 9i, OjbRc5. The connection reset
without any explanation..
[...]

java.sql.SQLException: Exception d'E/S: Connection reset 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:334) at oracle.jdbc.driver.OracleStatement.executeNonQuery(OracleStatement.java:2150)

This is seen with Oracle thin driver and CLOB/BLOB values larger than 4kB.


OJB 1.0RC5 will try to do a direct insert of the value in the Locator Object (LOB)-column, which is not supported by the Oracle thin driver. The LOB is supposed to be a pointer to the LOB-storage containing the value, but you can squeeze up to 4000 bytes of data into this pointer.

You have two options to work around this:
1. Use Oracle OCI (if you have an Oracle Client installation on the machine running OJB)


2. Update to OJB from CVS HEAD and use the new "Oracle9i" platform which supports Oracle-style inserts of large LOB values with the thin driver. If you switch to this platform both thin and OCI will work, but only OCI will support batch-mode="true".

--
Martin Kalén
Curalia AB              Web:  http://www.curalia.se
Orrspelsvägen 2B        Mail: [EMAIL PROTECTED]
SE-182 79  Stocksund    Tel:  +46-8-410 064 40


--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to