I guess the point here is, generally speaking, what is a secure way to
make two or more subsequent DAL operations are performed without race
condition. Is a kind of lock needed? An example to describe the
problem (but not solving it):

def index():
    with a_lock_to_prevent_concurrent_requests: # but how?
        latest_data = db(...).select(...)
        new_data = do_something_with( latest_data )
        db.mytable.insert( new_data )

See also: 
http://groups.google.com/group/web2py/browse_frm/thread/35be6bba0c02eab0#

On May28, 5:25am, mdipierro <mdipie...@cs.depaul.edu> wrote:
> What is wrong with the default id field that web2py creates for every
> table?
>
> On May 27, 3:16 pm, matclab <mathieu.clab...@gmail.com> wrote:
>
>
>
> > Hello,
> >  I'm finding this message in a thread from February...
>
> >  I thought that autoincremented field would guaranty unicity in the
> > table.
> >  I'm afraid the provided solution would allow two record to have the
> > same autonumber field (think about an access from two users at the
> > same time).
> >  I guess the autoincrement should be done on the DAL or database side,
> > inside a transaction....
>
> >  What do you think about it ?
>
> > On 19 jan, 21:38, Thadeus Burgess <thade...@thadeusb.com> wrote:
>
> > > max_id=   db(db.table.autonumber>1).select(db.table.autonumber,  #
> > > select all records, and only pull the autonumber column
> > >                                 orderby=~db.table.autonumber, #
> > > descending sort on the autonumber, (highest first)
> > >                                 limitby=(0,1) # limit the query and
> > > only select the first record
> > >                         ).first().autonumber # pull the first record
> > > from the web2py rows object, and get its autonumber member
>
> > > db.table.autonumber.default = max_id + 1 # Set the table default as
> > > the last autonumber and incremented by one.
> > > db.table.autonumber.writable = False
>
> > > form = crud.create(db.table)
>
> > > -Thadeus
>
> > > On Tue, Jan 19, 2010 at 4:32 AM, ceriox <cer...@gmail.com> wrote:
> > > > thanks for the reply but i'm not a good web2py programmer ... i
> > > > writing my first real app
> > > > you can write the code for my request? (i can't understand the post of
> > > > your link)
>
> > > > --
> > > > You received this message because you are subscribed to the Google 
> > > > Groups "web2py-users" group.
> > > > To post to this group, send email to web...@googlegroups.com.
> > > > To unsubscribe from this group, send email to 
> > > > web2py+unsubscr...@googlegroups.com.
> > > > For more options, visit this group 
> > > > athttp://groups.google.com/group/web2py?hl=en.

Reply via email to