[Zope-dev] @#$%^&*( Zope Concurrency

gtk gtk@well.com
Tue, 9 Nov 1999 06:39:58 +1100


Bait: I am willing to SPEND MONEY to get this bastard solved.

Summary of the situation so far:

- Zope cannot deal with overlapping modifications to one object
- That includes adding children to containers
- The retry mechanism doesn't work
- The user sees extremely messy errors
- This seriously limits Zope's usability for write-intensive tasks like
conferencing
- Since all of my plans are for write-intensive tasks, that makes me
uncomfortable

I've spent my last 24 hours of work on Zope trying to figure out where to
hack in any kind of method-aware queueing which could -- at its most
simple -- simply not attempt to place more than one call to an object at
once. From there, I'd be able to hack the routine for more subtlety.

So far, no go. I'm just chasing my tail all around Publish, mapply and a few
others, getting nowhere particularly fast.

Well, I'm sick of whacking in calls to traceback.print_stack(), guys. I'd
much rather get someone who knows what they're talking about to point out
"oh, there's half a system in blah.py which needs 30 minutes of work to do
what you need, and yeah we know retry is fundamentally broken". Or whatever.

So, here goes bribery:

If you're Australian and first to point out where I need to apply code, I'll
buy you lunch next time I'm in your home city. If you're outside Australia,
I'll have Amazon ship a copy of Slaughtermatic to your doorstep. Just
someone, please, for fuck's sake, help me solve this concurrency problem
before I'm forced to abandon the ZODB and/or Zope entirely.

Regards,
Garth.

--
<gtk@well.com>