[ZCM] [ZC] 1525/ 2 Comment "ZODBMountPoint should not monkey-patch ZODB"

Collector: Zope Bugs, Features, and Patches ... zope-coders-admin at zope.org
Mon Oct 11 14:35:14 EDT 2004


Issue #1525 Update (Comment) "ZODBMountPoint should not monkey-patch ZODB"
 Status Accepted, Zope/bug medium
To followup, visit:
  http://zope.org/Collectors/Zope/1525

==============================================================
= Comment - Entry #2 by tim_one on Oct 11, 2004 2:35 pm

Note that Jim Fulton has definite ideas on how he wants to proceed in this area:

    http://zope.org/Wikis/ZODB/MultiDatabases
________________________________________
= Request - Entry #1 by mcdonc on Oct 10, 2004 10:19 am

 Status: Pending => Accepted

 Supporters added: chrism

In ZODBMountPoint/Mount.py, at startup time, a set of monkey patches to ZODB's Connection.py are applied.  This in part caused a problem detailed in collector #1350 (Zope 2.8 chokes under high load).

Going forward I'd like to reconcile the need to do ZODB monkey-patching from within ZODBMountPount.  I had actually forgotten it did this. :-(  The mounting features are now part of the Zope framework and thus can't easily be removed.  The monkey-patches seem to add the following behavior/features:

- provide a registry of "mounted" connections where
  each "mounted" connection has a reference to a "root"
  connection under which it is "mounted".

- Patch two existing Connection methods:
  
  _setDB

  also call _setDB on all 'mounted' connections.

  close

  also call close on all 'mounted' connections.

I suspect there are hooks in ZODB3.3 to vanquish the need for this monkey-patching.  If not, maybe we can add some.  I will investigate a bit more this morning.

==============================================================



More information about the Zope-Collector-Monitor mailing list