-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hi everyone,
I noticed today that database packing doesn't seem to work (at least on Python 3.3) Minimal example: from ZODB import FileStorage, DB storage = FileStorage.FileStorage('/tmp/mystorage.fs') db = DB(storage) db.pack() db.close() Expected: No output / db.pack() should succeed, although there is likely nothing to pack. Actual output: % python zodb_pack.py packing Traceback (most recent call last): File "/usr/lib/python3.3/site-packages/ZODB/DB.py", line 810, in pack self.storage.pack(t, self.references) File "/usr/lib/python3.3/site-packages/ZODB/FileStorage/FileStorage.py", line 1121, in pack pack_result = self.packer(self, referencesf, stop, gc) File "/usr/lib/python3.3/site-packages/ZODB/FileStorage/FileStorage.py", line 1074, in packer opos = p.pack() File "/usr/lib/python3.3/site-packages/ZODB/FileStorage/fspack.py", line 408, in pack self.gc.findReachable() File "/usr/lib/python3.3/site-packages/ZODB/FileStorage/fspack.py", line 191, in findReachable self.findReachableAtPacktime([z64]) File "/usr/lib/python3.3/site-packages/ZODB/FileStorage/fspack.py", line 276, in findReachableAtPacktime for oid in self.findrefs(pos): File "/usr/lib/python3.3/site-packages/ZODB/FileStorage/fspack.py", line 329, in findrefs return self.referencesf(self._file.read(dh.plen)) File "/usr/lib/python3.3/site-packages/ZODB/serialize.py", line 646, in referencesf u.noload() AttributeError: 'Unpickler' object has no attribute 'noload' Traceback (most recent call last): File "zodb_pack.py", line 5, in <module> db.pack() File "/usr/lib/python3.3/site-packages/ZODB/DB.py", line 810, in pack self.storage.pack(t, self.references) File "/usr/lib/python3.3/site-packages/ZODB/FileStorage/FileStorage.py", line 1121, in pack pack_result = self.packer(self, referencesf, stop, gc) File "/usr/lib/python3.3/site-packages/ZODB/FileStorage/FileStorage.py", line 1074, in packer opos = p.pack() File "/usr/lib/python3.3/site-packages/ZODB/FileStorage/fspack.py", line 408, in pack self.gc.findReachable() File "/usr/lib/python3.3/site-packages/ZODB/FileStorage/fspack.py", line 191, in findReachable self.findReachableAtPacktime([z64]) File "/usr/lib/python3.3/site-packages/ZODB/FileStorage/fspack.py", line 276, in findReachableAtPacktime for oid in self.findrefs(pos): File "/usr/lib/python3.3/site-packages/ZODB/FileStorage/fspack.py", line 329, in findrefs return self.referencesf(self._file.read(dh.plen)) File "/usr/lib/python3.3/site-packages/ZODB/serialize.py", line 646, in referencesf u.noload() AttributeError: 'Unpickler' object has no attribute 'noload' [mabe] -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.20 (GNU/Linux) iQIcBAEBAgAGBQJSC26dAAoJEAOmTcUxK/sw0XYP/0syaUfrXBZ7BDF1avth9eiY 6l59KEuzgYLqwWGyG4aRH4sFONPX7YAIeUsDFHcb7PcRcGsNUEyX1Who1C2FaqOT 49472waPlGHDpFNF1aCDjn8TUFSo2koYszvmSF9RnG5JqEHHE8akOOKXCTMOAlGZ nJDpyN9x+OG/CIKPYnCUX0n4O8mPMILgc9RXU9C1mJTQVco7aWzaORcoyOuYWp5F UEw9GkMIVcFIeDQVH64LcdqRfO9+95uhx0ilxFU76w77wXTFLGhxHXttM/7sk5um MV0YfehDGQtiQuMb9GBMiTA3wVeaGGxOUmNXdxddwAEGi9xFvjmjGS9gMV3EP5bY 62WO7Cspg7LDojss4akOlX192csq98exxrx0X62azTJybsWwP1M8daYOdUQYgkdW EZDYc38F+E3hLY8KEqxVrDSo6YM6Fi6PiSidw5D1VS0MUYL9y15sOsN8BiNULNuo W2CZNKg3E7vHwYODbvQFOeVE3govGDT/l3WRpBQztF/MPGv3nObPo2Tfj3HWTisT BrxWkBHBhg+5LcICHvk/Dij4RThpQ5G6JpBOXY3pUD2PqWkjk51E0lX9aKmjK0l/ G12iOuIH+9/6UgKrFDaBVHnl1/Nv/AFI99k5bHFnmDVAcGXHcEUL/sSn3IzAaAC9 CszAKYvo+ZzcRMU3cQMm =Xomt -----END PGP SIGNATURE----- _______________________________________________ For more information about ZODB, see http://zodb.org/ ZODB-Dev mailing list - ZODB-Dev@zope.org https://mail.zope.org/mailman/listinfo/zodb-dev