[Zope] Products breaking other Products?

Tres Seaver tseaver@palladion.com
Fri, 11 Feb 2000 12:14:13 -0600


"James W. Howe" <jwh@allencreek.com> wrote:
> 
> I just encountered a problem which scares me to some extent.  I have
> developed my own product with my own set of ZClasses.  In my Products
> folder I had my product, some other products and the PTKBase product.  The
> version of the PTK was from a couple of weeks ago (or so).  Yesterday I
> retrieved the latest PTK stuff from the CVS repository and updated the
> contents of my products directory with this version of PTK.  Suddenly
> existing instances of ZClasses that I had created previously, were
> appearing as broken.  They apparently couldn't find their product.  I was
> confused by this, because I was able to add new instances of my
> ZClasses.  After posting a message to the zope mailing list, I received a
> reply which suggested that perhaps a product unrelated to my product was
> causing a problem.  Having nothing else to lose, I replaced my PTKBase with
> the old version of PTKBase.  After restarting Zope my broken ZClasses were
> once again functioning.
> 
> My question is this, why should a product unrelated to my product cause
> problems with my ZClasses?  I feel a bit uncomfortable with the notion that
> one product can seemingly affect another.  I don't believe any of my code
> relied on anything relating to the PTK.  Can someone explain what might
> have happened?

When Zope starts up, it runs through each Product, importing it as a Python
module.  My guess is that the broken PTKBase was earlier in the list than your
custom product, and that an exception propagated uncaught out of it,
interrupting the normal product loading.  If this is so, then we need to look at
hardening Zope's product loading mechanism against such behavior.

Just a guess,

Tres.
-- 
=========================================================
Tres Seaver         tseaver@palladion.com    713-523-6582
Palladion Software  http://www.palladion.com