RE: Long Raw Insertion

From: Andrus Adamchik (andru..bjectstyle.org)
Date: Thu May 01 2003 - 12:33:44 EDT

  • Next message: Andrus Adamchik: "RE: Long Raw Insertion"

    I haven't been using Oracle 8i for quiet some time (all my installs are
    9i). But this error does seem like an Oracle driver issue. Both the stack
    trace and you mentioning that it starts happenning when the size goes up
    to a certain value makes me think that. Anyone on the list who knows about
    8i behavior?

    Also I remember reading in the Oracle docs about deprecating LONG* columns
    in favor of BLOB/CLOB, and also something about bugs in 8i drivers with
    this type of columns. Is it an option for you to switch to BLOB? Such
    switch would *require* upgrading Cayenne though. None of the Alphas were
    BLOB-friendly.

    Andrus

    > Andrus,
    >
    > Thanks for your response.
    >
    > Yes, we plan on upgrading our Cayenne when time permits. As for the
    > error, its a java.sql.SQLException. The stack trace is rather long, but
    > here it is.
    >
    > Lonnie
    >
    >
    > WARN QueryLogger: *** error.
    > java.sql.SQLException: ORA-01483: invalid length for DATE or NUMBER bind
    > variabl e
    >
    > at
    > oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:168)
    > at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:208)
    > at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:543)
    > at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1405)
    > at
    > oracle.jdbc.ttc7.TTC7Protocol.parseExecuteFetch(TTC7Protocol.java:822
    > )
    > at
    > oracle.jdbc.driver.OracleStatement.executeNonQuery(OracleStatement.ja
    > va:1446)
    > at
    > oracle.jdbc.driver.OracleStatement.doExecuteOther(OracleStatement.jav
    > a:1371)
    > at
    > oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStateme
    > nt.java:1900)
    > at
    > oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePrepar
    > edStatement.java:363)
    > at
    > org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(Del
    > egatingPreparedStatement.java:205)
    > at
    > org.objectstyle.cayenne.access.DataNode.runUpdate(DataNode.java:411)
    > at
    > org.objectstyle.cayenne.access.DataNode.performQueries(DataNode.java:
    > 280)
    > at
    > org.objectstyle.cayenne.access.DataDomain.performQueries(DataDomain.j
    > ava:427)
    > at
    > org.objectstyle.cayenne.access.DataContext.commitChanges(DataContext.
    > java:759)
    > at
    >
    >
    >
    >> I'm trying to insert a binary object into a Long Raw column in an
    >> Oracle 8.1.7 database. I have success when the object is small, but
    >> fails at a certain size. However, the object that fails is no where
    >> near the 2Gigabyte max Oracle allows. Does anyone out there know a)
    >> is this is a Cayenne or Oracle issue and b) how to get around this?
    >> We currently using Cayenne-1.0a5-1.
    >>
    >> Lonnie
    >
    >
    > Lonnie,
    >
    > Two recommendations how to proceed:
    >
    > 1. Try upgrading to the latest release (if only for testing) - we added
    > much better support for binary data handling in the first Beta.
    >
    > 2. What kind of error are you getting? Do you have a stack trace?
    >
    > Andrus



    This archive was generated by hypermail 2.0.0 : Thu May 01 2003 - 12:33:44 EDT