[Framework-Team] Re: PLIP125 (link integrity) part II - redirect-on-move ready for merge

Hanno Schlichting plone at hannosch.info
Sun Dec 24 01:47:04 UTC 2006

Hi Martin,

Martin Aspeli wrote:
> Hi Hanno,
>>> For the record, I love this functionality :)
>> While I like this too, I'm a bit concerned about the performance
>> penalty. Is there an easy way to turn this behavior off? Like a switch
>> in some control panel?
> There is not, but there easily could be. The hardest part is making the
> control panel page. :)

Control panel pages that don't require any fancy widgets are really easy
thx to formlib. If you look at my examples in plone.app.controlpanel,
you will notice that they mostly consist of lots of boilerplate code one
can copy'n'paste ;)

> I don't think it's that much of a hit, though. On every object move or
> delete, the following operations take place:

I'm not concerned about those.

> The other performance hit (which is bigger) is on the
> default_error_message page when it gets a NotFound error. In that case,
> we attempt to do a redirect (more string and btree logic), and possibly
> perform some traversal and catalog searches, in the first three methods
> in this view:
> http://svn.plone.org/svn/plone/plone.app.redirector/trunk/plone/app/redirector/browser.py
> I don't see why the 404 page needs to be fast, though (except during the
> spam attack we had on plone.org, but that's rather different).

I'm mostly concerned about search engine crawlers revisiting already
indexed sites. Not sure how much traffic those generate these days,
though. Other than that the usual attacks websites have to endure come
to my mind, like bots looking for insecure PHP apps on your domain (like
awstats, phpmyadmin, ...). But probably you should filter those out in
Apache or Squid in front of Plone anyways.

I don't think a config option is a priority, but rather a nice-to-have
feature :)

>> Is there any way to clean up some old redirects, like a 'delete all
>> redirects' option somewhere? I imagine that people might need this after
>> a while.
> Not for now. The operations are there, it just requires some UI. I'm not
> 100% convinced its needed, but I agree that it feels like something that
> may need it one day (note that redirects are cleaned up when objects are
> deleted, so in theory only redirects to actual, live objects should
> exist, and of course, redirects are only created when an object is
> actually renamed or cut/pasted (moved), which in itself is not something
> you'd expect to happen with extreme frequency).

OK, call it YAGNI for now.


More information about the Framework-Team mailing list