On Aug 3, 2009, at 1:46 PM, toutpt wrote:
> I m currently profiling the code of Plone to find performance issue
> fix them (i m sure there are a lot).
> There are things I don't understand very well, so sorry if I m wrong.
> The code of CMFCatalogAware.opaqueItems parse every attributes of
> plonesite and evaluate this for each attribute:
> ICallableOpaqueItem.providedBy(obj) or
> isImplementedBy calls takes 30% of the time spent.
> But z2ICallableOpaqueItem is a Zope2 interface and I m not used to
> kind of object. It seems they are generated on runtime, so for me it's
> hard to debug.
> My questions are:
> * What are opaqueitems (any example ? I don't have find anything
> in tests of CMFCore)
> * Is zope2 interface are still used and why ?
> * How could I replace those calls, or improved this code that always
> return an empty tuple
> PS: sorry for cross posting if there are because i have some issues
> with my other email address.
> - JeanMichel FRANCOIS aka toutpt
This has already been fixed in Plone 4 (by monkey-patching CMF to only
pay attention to the 'talkback' opaque item which is used for
discussions). In Plone 3 you can avoid this performance issue by
installing the experimental.opaquespeedup package (thanks to Jarn) --
New tools and strategies for engaging people in protecting the
work: (206) 286-1235 x32
mobile: (206) 679-3833
Subscribe to ONEList, our email newsletter!
Practical advice for effective online engagement
Zope-CMF maillist - Zope-CMF@lists.zope.org
See https://bugs.launchpad.net/zope-cmf/ for bug reports and feature requests