[orm-devel] ORM and Zope (was: Unified Connection Strings)

Diedrich Vorberg orm-devel@mailman.tux4web.de
Mon, 2 Dec 2002 23:25:28 +0100


Hi Ross,

>Hmm, so this means your build a connection pool on top of the existing
>Zope connection pool? I thought the Zope pool was careful about not
>letting multiple Zope threads use the same connection. If you've seen
I does?! (Yes it does I checked the docs.) Man... I should have read 
more documentation. I seem to keep underestemating Zope :-)

There are two things my little pool product does: it has an upper
limit of open connections to the RDBMS and when ready it will work
with any backend supported by ORM. Otherwise it's pretty useless, I
guess :-(

>orm doesn't multithread on it's own, right?
Right, it isn't.

>> There is a rather nasty problem with ORM and Zope. ORM requires 
>> Python 2.2, because of Python's builtin classmethod(). Zope will warn 
>> about 2.1 being the preferred version to run it with, but to my 
>
>Right, I already ran into this. So, I've seen a number of partial
>implementations of classmethod() for use on 2.1: there's one on ASPN,
>one in the cookbook, and one I just saw on python-list in June. How
>unlikely would it be to get orm-cvs to work under 2.1? Hmm, I see the
>next hurdle is subclassing from the 'list' builtin.
The classmethod() workarounds I found didn't seem to work. We could 
replace list with UserList, but the problem I see is that we would 
not only have to test each modification against a number of different 
backends but also against two versions of Python. I wonder if it's 
worth the trouble.

Diedrich

-- 
           _..._                            Diedrich Vorberg
         .'     '.
        /  _   _  \                         http://www.tux4web.de
        | (o)_(o) |                         info@tux4web.de
         \(     ) /            .---.
         //'._.'\ \           /     \       Internet Dienstleistungen
        //   .   \ \          \.@-@./       und 'Consulting'.
       ||   .     \ \         /`\_/`\
       |\   :     / |        //  _  \\      Linux Rules!
       \ `) '   (`  /_      | \     )|_
     _)``".____,.'"` (_    /`\_`>  <_/ \
     )     )'--'(     (    \__/'---'\__/
      '---`      `---`