AW: AW: AW: postgres, idle in transaction

From: Peter Schröder (Peter.Schroede..reenet-ag.de)
Date: Fri Apr 27 2007 - 02:31:45 EDT

  • Next message: Tore Halset: "Re: postgres, idle in transaction"

    hi andrus,

    i know that this issue sucks, but we are forced to solve it.

    we did some further investigation of our live-environment and noticed that these idle connections appear only while our application is plugged into our loadbalancer. first we thought that this could be an concurrency or load issue, but regarding our logs, the load is close to zero...

    i wondered if there is a way to get the current postgres-connection from cayenne. i dont know how jdbc-connections are wrapped bye cayenne and i dont want to search through the code, even though i might learn something ;-)

    currently i am wondering about why the transaction is not properly closed and i think that the postgres people said, that this issue had been fixed decades ago, so i guess thats right. is there a way that the connection is not properly returned to the connection-pool after a request and because of that the transaction will not put to commit?

    kind regards
    peter
     

    -----Ursprüngliche Nachricht-----
    Von: Andrus Adamchik [mailto:andru..bjectstyle.org]
    Gesendet: Donnerstag, 26. April 2007 13:47
    An: use..ayenne.apache.org
    Betreff: Re: AW: AW: postgres, idle in transaction

    On Apr 26, 2007, at 1:14 PM, Oilid Adsi wrote:

    > Or maybe by adding an explicit "COMMIT" after every SELECT-
    > Statement when the connection will be returned to the pool? Can
    > this implemented as an optional function to the Cayenne framework?

    Per your comment the patch doing "rollback" didn't help, why do you
    think "commit" should help? Commit and rollback both terminate a
    transaction.

    http://objectstyle.org/cayenne/lists/cayenne-user/2007/04/0159.html

    But if you want to explore various scenarios, Cayenne allows you to
    plug a custom implementation of DataSource via the DataSourceFactory
    mechanism. So you don't need to patch Cayenne, but instead you can
    write a custom DataSource (based on Cayenne or DBCP library, or do it
    from scratch) to do any pre- or post- processing of connections
    checked in or out of the pool.

    If you get to the cause of it, please share. Unfortunately I am out
    of ideas regarding this issue.

    Andrus



    This archive was generated by hypermail 2.0.0 : Fri Apr 27 2007 - 02:33:09 EDT