[Python-ideas] Optimistic Concurrency

Terry Reedy tjreedy at udel.edu
Tue Oct 14 19:38:31 CEST 2008


skip at pobox.com wrote:
> Is optimistic concurrency
> 
>     http://en.wikipedia.org/wiki/Optimistic concurrency_control

This is designed for humans using client programs to edit records in 
shared databases with a low collision rate at the record level.

> a possible option for removing the GIL in Python?

It does not strike me as practical for Python.

1. It starts with copying data.  Clients accessing a database server 
already do this.  Threads accessing *shared* data normally do not.

2. Any edit (change) may be discarded in part or in whole.  Human 
operators, informed of the rejection, must (and 'somehow' do) decide 
what to do.  Wrapping every assignment to shared data with a 
pre-programmed RejectionException handler would usually be a huge burden 
on the programmer.




More information about the Python-ideas mailing list