[Zope] ZopeLDAP corruption of Data.fs

Art Hampton arth@pacsg.css.mot.com
Thu, 06 Jan 2000 10:13:34 -0600


Obviously this is of interest to the ZopeLDAP developers, but it may
also be of interest to DC (undo feature may be broken?).

Yesterday, I downloaded and installed the ZopeLDAP (ZLDAPConnection,
ZLDAPMethods) product (I also got and installed UserLDAP, but haven't
messed with it yet).

I created two connections to test out the ZopeLDAP product.  I then
created a filter method to test my connections.  I realized I'd done
something stupid, so I deleted the filter and the connections.

I then created a new connection.  When I went to create a new filter,
the choices I was given for connection were, to my surprise, the
connections I had deleted.  The new connection was not listed.

So I figured something didn't get cleaned up in the deletion process
(but I do not claim to know the Zope internals).  So I went to use the
wonderful undo feature, and I undid things until before I had created my
first connection.

I then did the new connection/new filter step again.  To my surprise,
the old connections were *still* there in the connection listing for my
filter creation, and again my new connection was not listed (I know
because I used different names).

So I decided to create a second and third connection, hoping that I
would be able to at least access the third connection.  Nope, didn't
help.  I still had the original two, and only the original two,
connections listed.

So I did a grep on every file in the zope tree looking for a reference
to the IDs of the two old connections.  To my surprise, they were indeed
found in var/Data.fs, and nowhere else (other than the log).

So this morning, I restored a backup of Data.fs from before I ever
created the original two connections.  Finally, the evil connections
were gone....

I don't currently know enough about external methods to be able to
troubleshoot this connection deletion problem myself (someday :), but I
hope this information is helpful.

On a positive note, after restoring the database, I tried making
connections again (without deleting), and I was able to successfully
query one of my LDAP servers (not sure what's up with the second, more
important server).

p.s., WRT "No Cross Posting", I apologize, I wasn't sure how else to
both bring this to the attention of the ZopeLDAP developers and the DC
folks.  Suggestions for how to deal with this more appropriately are
welcomed.

Thanks.