#92 — Can't clone a site with CacheFu installed

StateTested and confirmed closed
Version: 1.1
AreaFunctionality
Issue typeBug
SeverityLow
Submitted byRicardo Newbery
Submitted onAug 17, 2007
Responsible Ricardo Newbery
Target release: 1.1.1
Return to tracker
Last modified on Jan 08, 2009 by Matthew Wilkes
Can't clone a site with CacheFu installed. By cloning, I mean within the ZMI root, copy and paste. An AttributeError is raised upon attempting the paste. This happens even if CacheFu is "disabled". Temporarily uninstalling CacheFu in the QI is a workaround but then you lose your CacheFu settings.

Adding this here to remind myself to fix it before the next release.

Traceback (innermost last):
  Module ZPublisher.Publish, line 119, in publish
  Module ZPublisher.mapply, line 88, in mapply
  Module ZPublisher.Publish, line 42, in call_object
  Module OFS.CopySupport, line 222, in manage_pasteObjects
  Module zope.event, line 23, in notify
  Module zope.component.event, line 26, in dispatch
  Module zope.component._api, line 130, in subscribers
  Module zope.component.registry, line 290, in subscribers
  Module zope.interface.adapter, line 535, in subscribers
  Module zope.component.event, line 33, in objectEventNotify
  Module zope.component._api, line 130, in subscribers
  Module zope.component.registry, line 290, in subscribers
  Module zope.interface.adapter, line 535, in subscribers
  Module OFS.subscribers, line 140, in dispatchObjectCopiedEvent
  Module zope.app.container.contained, line 182, in dispatchToSublocations
  Module zope.component._api, line 130, in subscribers
  Module zope.component.registry, line 290, in subscribers
  Module zope.interface.adapter, line 535, in subscribers
  Module OFS.subscribers, line 140, in dispatchObjectCopiedEvent
  Module zope.app.container.contained, line 182, in dispatchToSublocations
  Module zope.component._api, line 130, in subscribers
  Module zope.component.registry, line 290, in subscribers
  Module zope.interface.adapter, line 535, in subscribers
  Module plone.app.linkintegrity.handlers, line 60, in modifiedArchetype
  Module Products.Archetypes.Referenceable, line 57, in addReference
  Module Products.Archetypes.ReferenceEngine, line 356, in addReference
  Module OFS.ObjectManager, line 347, in _setObject
  Module zope.event, line 23, in notify
  Module zope.component.event, line 26, in dispatch
  Module zope.component._api, line 130, in subscribers
  Module zope.component.registry, line 290, in subscribers
  Module zope.interface.adapter, line 535, in subscribers
  Module zope.component.event, line 33, in objectEventNotify
  Module zope.component._api, line 130, in subscribers
  Module zope.component.registry, line 290, in subscribers
  Module zope.interface.adapter, line 535, in subscribers
  Module OFS.subscribers, line 118, in dispatchObjectMovedEvent
  Module OFS.subscribers, line 151, in callManageAfterAdd
  Module Products.Archetypes.ReferenceEngine, line 149, in manage_afterAdd
  Module Products.Archetypes.Referenceable, line 219, in manage_afterAdd
  Module Products.Archetypes.Referenceable, line 200, in _updateCatalog
  Module Products.Archetypes.Referenceable, line 289, in _catalogUID
  Module Products.Archetypes.UIDCatalog, line 212, in catalog_object
  Module Products.CacheSetup.patch, line 93, in catalog_object
  Module Products.CacheSetup.patch, line 83, in _purge
  Module Products.CMFSquidTool.queue, line 120, in queue
  Module Products.CMFSquidTool.SquidTool, line 147, in getUrlsToPurge
  Module Products.CMFCore.Skinnable, line 123, in getSkinNameFromRequest
AttributeError: 'NoneType' object has no attribute 'get'
Added byRicardo NewberyonAug 21, 2007 09:24 AM
Issue state: unconfirmedopen
Target release: 1.1.1None
Added by(anonymous)onSep 25, 2007 08:27 AM
I get the same error when trying to install CacheFu from script:

qi.installProduct('CacheSetup',locked=0)
Added byMaurits van ReesonNov 16, 2007 03:24 PM
I have the same traceback when I reinstall eXtremeManagement on a Plone 3.0.2 or 3.0.3 site.

And right after that I get a lot of lines complaining Zope cannot find javascript files, like this:

  Sorry, the requested resource does not exist.
  Check the URL and try again.
  Resource:
  http://projects.zestsoftware.nl/[…]/p>


I think I fixed this. I created a branch of the CMFSquidTool trunk:
https://svn.plone.org/[…]/maurits-fix-get-urls-to-purge

This changeset fixes it for me:
http://dev.plone.org/collective/changeset/53973

The test I added there fails, but at least it does not throw an exception. The failure is:

  AssertionError: ['plone/portal_skins/plone_images/logo.jpg/foo', 'plone/logo.jpg/foo'] != ['http://nohost/plone/portal_skins/plone_images/logo.jpg/foo', 'http://nohost/plone/logo.jpg/foo']

Can someone check if the fix is good anyway?
Added byReinout van ReesonDec 28, 2007 11:30 AM
Issue state: openresolved
I merged Maurits' branch to trunk (and fixed up the test right away). This fixes it for me.
Added byJohn DeStefanoonJan 07, 2008 07:25 PM
I can confirm this error on a 2.5.5 site migrated to 3.0.4 (and then to 3.0.5 in hopes of fixing this). CacheFu doesn't even need to be installed; just having its component directories added to the Products tree seems to kick this off.
Added byRicardo NewberyonFeb 06, 2008 04:43 AM
Issue state: resolvedclosed
Target release: None1.1.1

Maurit's cmfsquidtool fix seems to fix this but I added another fix to the Install utils that appeared to be contributing to this... http://dev.plone.org/collective/changeset/58323

No responses can be added.