RE: Yet another optimistic locking question

From: Gentry, Michael \(Contractor\) ("Gentry,)
Date: Thu Sep 01 2005 - 08:58:47 EDT

  • Next message: Mike Kienenberger: "Re: How to dynamically get Qualifier info from SelectQuery object"

    Optimistic locking never locks the row in the database (it is
    optimistic). Read:

    http://www.objectstyle.org/confluence/display/CAY/Optimistic+Locking+Exp
    lained

    It explains how Cayenne can ensure that no changes occurred between the
    SELECT and UPDATE phase. If you still have questions I'll try to answer
    them.

    Thanks,

    /dev/mrg

    -----Original Message-----
    From: Gili [mailto:cowwo..bs.darktech.org]
    Sent: Thursday, September 01, 2005 12:06 AM
    To: cayenne-use..bjectstyle.org
    Subject: Yet another optimistic locking question

            A question about how optimistic locking is currently
    implemented. Do we
    implement it like this?

    1) Lock row
    2) Read row
    3) Compare read row to DataObject version of row
    4) If values mismatch, unlock the row and throw an exception
    5) If values match, continue with update and unlock row

            or do we not lock the database at all? If we don't lock it at
    all, how
    can we ensure that no changes occur after step 3 but before step 5?

    Thank you,
    Gili

    -- 
    http://www.desktopbeautifier.com/
    



    This archive was generated by hypermail 2.0.0 : Thu Sep 01 2005 - 08:58:52 EDT