[Zope] Upgrade woes: BTreeFolder --> BTreeFolder2

Ken Ara feedreader at yahoo.com
Sun May 6 13:09:55 EDT 2007


Lawrence, 

As I ponder Dieter's solution I quickly tried yours...
with the result as follows:

>>> del app.OrgDocumentLibrary['Documents']
Traceback (most recent call last):
  File "<stdin>", line 1, in ?
AttributeError: __delitem__
>>>

I'll get this eventually...

Thanks
Ken

--- Laurence Rowe wrote:
>
> Well, you're replicating what was going on in the
browser, so you got 
> the same results. Instead try:
> 
>  >>> del app.OrgDocumentLibrary['Documents']
> 
> You'll need to do a transaction.get().commit() to
persist the changes.
> 

--- Dieter Maurer wrote:

> 
> There are receipes around how to get rid of objects
> that are
> not deletable by normal ways. Usually, they help to
> delete objects
> that cause "POSKeyError"s but they can also be used
> for otherwise
> "broken" objects.
> 
> Of course, you would lose the content of these old
> "BTree" objects.
> 
> > ...
> >    * Module Products.BTreeFolder2.BTreeFolder2,
> line
> >368, in objectValues
> >    * Module Products.BTreeFolder2.BTreeFolder2,
> line
> >347, in objectIds
> >
> >AttributeError: 'NoneType' object has no attribute
> >'keys'
> 
> This exception does not look as if caused by an old
> "BTree".
> 
> Check for what object "keys" is called and ensure
> that it is
> not "None".
> 
> I expect that the object is "_tree" and that it is
> "None" because
> you did not call the "BTreeFolder2.__init__".
> Call "BTreeFolder2.__init__" on the "BTreeFolder2"
> instance
> and this problem should go away.
> 
> 


__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 


More information about the Zope mailing list