[Zope] Preventing duplicates in ZCatalog
Oliver Bleutgen
myzope@gmx.net
Wed, 23 Apr 2003 15:20:16 +0200
Wankyu Choi wrote:
> [snip]
> But visiting an article like the following still duplicates entries in the
> board's built-in catalog:
>
> /Board/a_1 -> /a_1
> /Board/Board/a_1 -> /Board/a_1
> /Board/Board/Board/a_1 -> /Board/Board/a_1
> ...
Another remark, there really shouldn't be links which point insert _any_
unnecessary acquisition, like /Board/Board/Board , because it could lead
to infinite recursion.
> I think removing **all** instances of the container's id when catalogging
> article objects should work. Currently, only the first instance is being
> removed. I just didn't think acquisition would wreak this much havoc when
> misused :-(
You should see what happens if you have made the above mentioned mistake
and a spider/crawler hits your side. Google's 16.000 machines vs. your
server, guess who looses ;) - ok, it's not that bad, but shit can hit
the van.
I had recently some "expert" on a big pipe trying to bulk download a
website we host and causing more traffic in one hour than we normally
get in a whole day because of this recursion. I think it just stopped
when the request URI got too long for his client or it crashed. Zope
stood like a wall ;).
Everyone look out for things like "Fetch API REQUEST" in your logs.
cheers,
oliver