Re: commitChanges() doesn't imply commit in db ?

From: Michael Gentry (blacknex..mail.com)
Date: Tue Apr 03 2007 - 11:54:41 EDT

  • Next message: jerome moliere: "Re: commitChanges() doesn't imply commit in db ?"

    Hmm, this is interesting. I've noticed transactions uncommitted against our
    Sybase DB, too. I've usually attributed this to a problem with the Sybase
    connection getting stale or something else going awry inside the database
    because our process (and the connection to the DB) is long-running (a web
    application that is hardly ever restarted) and the problem only occurs after
    it has been running for a while and a restart of the application clears the
    problem up (fetching data from the DB still works in our case, though). It
    sounds like yours isn't that long-term of a connection, though. Now I'm
    wondering if there is a problem with the Sybase driver or something inside
    Cayenne. Is there any chance you can make a repeatable test case? Our
    experience with the issue has been very intermittent and not reproducible
    and Cayenne was always logging the proper SQL.

    Thanks,

    /dev/mrg

    On 4/3/07, jerome moliere <jerome.molier..mail.com> wrote:
    >
    > Hi all,
    >
    > I'm doing a proof of concepts of several tricky usage from orm , one of
    > the
    > 2 implementations is Cayenne...
    > I've one scenario where 3 process (stand-alone Java applications) use the
    > same table on db and communicate via Tibco rendez vous...
    > It works fine with Hibernate, but I 've got several problems with
    > cayenne...
    > latest one is while updating one object in one of these applications,
    > invoking commitChanges() on my context, nothing happens..
    > the query logger shows me a trans begin, the right update query but this
    > transaction is never committed
    > strange isn't it ?
    > This is the output (excerpt )from my process trying to update one entity:
    >
    > [java] INFO QueryLogger - +++ Connecting: SUCCESS.
    > [java] INFO QueryLogger - --- transaction started.
    > [java] INFO DbAdapterFactoryChain - DB name: Adaptive Server
    > Enterprise
    > [java] INFO QueryLogger - Detected and installed adapter:
    > org.apache.cayenne.dba.sybase.SybaseAdapter
    > [java] INFO QueryLogger - SELECT t0.AggregationCurrency,
    > t0.AllowFixing, t0.FixingAskSpread, t0.FixingBidSpread, t0.IsIslamic,
    > t0.IsLocal, t0.OISRoundingConv, t0.Currencies_Id FROM dbo.CurrenciesLocTt0
    > WHERE t0.Currencies_Id = ? [bind: 105] - prepared in 37 ms.
    > [java] INFO QueryLogger - === returned 1 row. - took 71 ms.
    > [java] INFO QueryLogger - +++ transaction committed.
    > [java] INFO CayenneCurrencyDAOImpl - before update isIslamicChar set
    > to = Y
    > [java] INFO CayenneCurrencyDAOImpl - after update this filed is now
    > set to = N
    > [java] INFO QueryLogger - --- will run 1 query.
    > [java] INFO QueryLogger - --- transaction started.
    > [java] INFO QueryLogger - UPDATE dbo.CurrenciesLocT SET IsIslamic =
    > ?
    > WHERE Currencies_Id = ?
    > [java] INFO QueryLogger - [bind: 'N', 105]
    >
    >
    > druid shows me that the tranaction is never committed, like one of the
    > other
    > applications lauching as a daemon a query on this table (does not show any
    > update because there are not..)
    >
    > Any clue ?
    > cheers
    > jerome
    >
    > --
    > Jerome Moliere - Mentor/J
    > http://romjethoughts.blogspot.com/
    > auteur Eyrolles
    >



    This archive was generated by hypermail 2.0.0 : Tue Apr 03 2007 - 11:55:38 EDT