#8 Alternative to Flock TS counter

closed-postponed
nobody
None
5
2002-01-28
2001-12-08
No

using an object which implements application level
conflict resolution, for example the new btrees length
object. than a counter would become

from BTrees.Length import Length

counter = Length()
counter.incr(1)

BTrees.Length only exists in zope 2.5, but app conflict
resolution has been around since (2.3/2.4) and could be
implemented on another python implementation for
distribution (ZDG has some more implementation details).

Discussion

  • Morten W. Petersen

    Logged In: YES
    user_id=68005

    Ok, this is good, as moving instances of the counter
    would be
    transparent (currently one has to copy along the
    actual file in
    $ZOPE/var).

    How does the application-level conflict resolution
    work ?
    If a large (time-consuming) transaction is committing,
    and a
    conflicterror is raised, will the entire transaction
    have to be re-
    committed ?

    A spike, showing that this works, even under heavy
    loads
    would be really helpful.

    Thanks,

    Morten

     
  • Kapil Thangavelu

    Logged In: YES
    user_id=33814

    application conflict resolution is described in the ZDG. the
    implementation is in the ZODB module.

    if a long transaction commits and an object with conflict
    resolution has a conflict error, the error is resolved
    without raising a conflict resolution, and hence without
    retrying the request.

     
  • Morten W. Petersen

    Logged In: YES
    user_id=68005

    Ok, I'm convinced! :-)

    Would it be possible for you to do a spike implementation ?
    If not, this will have to wait until somewhere in
    mid-january before I have time.

    -Morten

     
  • Morten W. Petersen

    Logged In: YES
    user_id=68005

    Can't use that solution

     
  • Morten W. Petersen

    • labels: 369716 -->
    • status: open --> open-postponed
     
  • Morten W. Petersen

    • status: open-postponed --> closed-postponed
     

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks