[Zope-dev] product creation wierdness in 2.1.6

Michel Pelletier michel@digicool.com
Tue, 11 Apr 2000 14:34:02 -0700


Sam Gendler wrote:
> 
> I have been plagued by a very strange bug tonight.  I am trying to
> create a base class for a zClass, and I had an typo on a line of the
> code, which caused an import to fail.  No matter how hard I tried, I
> could not get get Zope to notice that the line had changed, despite many
> restarts, removals of .pyc files, etc.  The exception would still get
> thrown, and the line of source quoted, always had source that no longer
> exited in the .py file.
> 
> Finally, I thought that perhaps I should delete the product altogether,
> and then restart zope.  Now the product does not show up at all.  Ever.
> No matter what I do (including undo of the delete).

There is a exception being raised in your __init__.py file for your
Product almost certainly in your initialize(context) method.  This
exception gets buried and you never see it.  Old errors get retained in
the ODB as an artifact of this bug.  The only way to trap this is to put
a debuging assertion in the initialize and step through it till you see
your error:

def initialize(context):
  import pdb
  pdb.set_trace()
  ...

This is a known bug.  I believe it is in the collector but I'm not
sure.  Tres?  Any word on this one?
 
-Michel