Hello Armin,

thanks it works; one more question: the solution is declred as workaround (or hack in 
the sources): what is the intended behaviour of batch-mode if not exactly the 
behaviour now implemented?

Max

> -----Urspr�ngliche Nachricht-----
> Von: Armin Waibel [mailto:[EMAIL PROTECTED]
> Gesendet: Dienstag, 25. M�rz 2003 16:03
> An: OJB Users List
> Betreff: Re: [MAPPING] Problem committing inertst on LONG fields
> 
> 
> Hi Max,
> 
> there is a workaround for this problem.
> Checkout last version of ConnectionManagerImpl.
> 
> Then it should be possible to disable batch-mode
> with batch-mode="false"
> 
> regards,
> Armin
> 
> ----- Original Message -----
> From: "Geigl Maximilian, R235" <[EMAIL PROTECTED]>
> To: "OJB Users List" <[EMAIL PROTECTED]>
> Sent: Tuesday, March 25, 2003 3:41 PM
> Subject: [MAPPING] Problem committing inertst on LONG fields
> 
> 
> Hallo,
> 
> OJB version: 1.0rc1
> DBMS: Oracle 8.1.7.4.1
> JDBC driver: Oracle thin driver 8.1.7.4.0 (taken from the 8.1.7.4.1
> Patch) - by the way: same problem with 8.1.7.0.0 an 8.1.7.1.0
> 
> I have two inserts each on a table with a LONG field. When I 
> commit the
> transaction i get the following exception:
> 
> 2003-03-25 08:39:37,975 [HttpProcessor[80][3]] ERROR
> org.apache.ojb.odmg.ObjectEnvelopeTable 
> PC-10-SONNAUJ.AKDB.NET - Commit
> on object level failed for tx 
> [EMAIL PROTECTED]
> java.sql.SQLException: Vorgang nicht zul�ssig: streams type cannot be
> used in batching
> at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:168)
> at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:210)
> at
> oracle.jdbc.driver.OraclePreparedStatement.addBatch(OraclePrep
> aredStatem
> ent.java:2781)
> at java.lang.reflect.Method.invoke(Native Method)
> at
> org.apache.ojb.broker.util.batch.PreparedStatementInvocationHa
> ndler.doEx
> ecute(Unknown Source)
> at
> org.apache.ojb.broker.util.batch.PreparedStatementInvocationHa
> ndler.invo
> ke(Unknown Source)
> at $Proxy0.doExecute(Unknown Source)
> at 
> org.apache.ojb.broker.util.batch.BatchConnection.executeBatch(Unknown
> Source)
> at
> org.apache.ojb.broker.accesslayer.ConnectionManagerImpl.execut
> eBatch(Unk
> nown Source)
> at org.apache.ojb.odmg.ObjectEnvelopeTable.commit(Unknown Source)
> at 
> org.apache.ojb.odmg.TransactionImpl.doCommitOnObjects(Unknown Source)
> at org.apache.ojb.odmg.TransactionImpl.prepare(Unknown Source)
> at org.apache.ojb.odmg.TransactionImpl.commit(Unknown Source)
> at
> de.akdb.ok.komm.persistence.OdmgTransactionImpl.commit(OdmgTra
> nsactionIm
> pl.java:71)
> at
> de.akdb.ok.komm.service.AbstractService.destroy(AbstractServic
> e.java:76)
> [...]
> 
> Although I set batch-mode="false" in the repository, OJB seems to
> override this setting an uses batching. As far as i understand, the
> Oracle JDBC driver cannot use batching with LONG field.
> 
> So my question: can anyone tell me, how i can carry out more than one
> insert/update/delete on tables with LONG fields in one transaction? Or
> how can i prevent OJB from using batching (as 
> batch-mode="false" doesn't
> seem to enforce this)?
> Or did i get the whole thing completely wrong?
> 
> Thanks in advance
> 
> Max
> 
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 

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

Reply via email to