[Jeremy]
I think the attribute error on data is just a symptom of the BTree failure. The object has no data attribute, because ZODB failed to unpickle the object that would be assigned to data.
I don't know what happened with backwards compatibility for the old BTree classes. When Jim and I discussed it a while back, I thought we concluded that we would provide a script that would convert all the old BTree instances to new BTrees instance. But I don't know if that decision stuck or if the script was ever written.
Jim asked about it on zope-dev, and got no response; see: "Can we forsake database backward compatability on the head for a while?" http://mail.zope.org/pipermail/zope-dev/2003-November/021055.html ... > This would mean that old databases would not be useable with the > CVS head in the near term. Would this cause anyone any problems? I'm happy no one responded to this. Silence is assent, :)