RE: Long Raw Insertion

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

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

    Umm... overlooked that you are on 8.1.7, not 8i. This could make it
    worse...not sure if it even had BLOBs back then?

    Andrus

    > 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:41:29 EDT