A.M. Kuchling schrieb:
> The completely untested patch below should remedy the occasional
> exceptions that PyPI is occasionally raising. Can someone provide a
> sanity check for this patch? (I'm not going to deploy it -- not
> familiar enough with the setup on the live site.)
I don't understand why this is necessary (although I trust that these
exceptions really occur).
Can any expert on Postgres please shed a light on it? The code currently
reads
self.cursor.execute("lock table browse_tally")
if self.is_cache_current():
# overlapping update, just release the lock
self.store.commit()
return
self.cursor.execute("delete from browse_tally")
...
self.cursor.execute("update timestamps set value=now() where
name='browse_tally'")
self.store.commit()
Now, this code gets an exception
psycopg.ProgrammingError: ERROR: could not serialize access due to
concurrent update
delete from browse_tally
How is that possible? This code is the only code code updating
browse_tally (although multiple simultaneous processes may run the
same code); I would expect that the "lock table" statement prevents
concurrent updates.
Any help appreciated.
Regards,
Martin
_______________________________________________
Catalog-sig mailing list
[email protected]
http://mail.python.org/mailman/listinfo/catalog-sig