Bump bulkdata database version to 3

This commit is contained in:
Jim Paris 2013-03-14 14:40:48 -04:00
parent c7a712d8d8
commit 1835d03412

View File

@ -260,7 +260,7 @@ class Table(object):
fmt = { "rows_per_file": rows_per_file, fmt = { "rows_per_file": rows_per_file,
"files_per_dir": files_per_dir, "files_per_dir": files_per_dir,
"layout": layout, "layout": layout,
"version": 2 } "version": 3 }
with open(os.path.join(root, "_format"), "wb") as f: with open(os.path.join(root, "_format"), "wb") as f:
pickle.dump(fmt, f, 2) pickle.dump(fmt, f, 2)
@ -273,21 +273,11 @@ class Table(object):
with open(os.path.join(self.root, "_format"), "rb") as f: with open(os.path.join(self.root, "_format"), "rb") as f:
fmt = pickle.load(f) fmt = pickle.load(f)
if fmt["version"] == 1: # pragma: no cover if fmt["version"] != 3: # pragma: no cover
# We can handle this old version by converting from # Old versions used floating point timestamps, which aren't
# struct_fmt back to layout name. # valid anymore.
compat = { "<dHHHHHH": "uint16_6", raise NotImplementedError("old version " + str(fmt["version"]) +
"<dHHHHHHHHH": "uint16_9", " bulk data store is not supported")
"<dffffffff": "float32_8" }
if fmt["struct_fmt"] in compat:
fmt["version"] = 2
fmt["layout"] = compat[fmt["struct_fmt"]]
else:
raise NotImplementedError("old version 1 data with format "
+ fmt["struct_fmt"] + " is no good")
elif fmt["version"] != 2: # pragma: no cover (just future proofing)
raise NotImplementedError("version " + str(fmt["version"]) +
" bulk data store not supported")
self.rows_per_file = fmt["rows_per_file"] self.rows_per_file = fmt["rows_per_file"]
self.files_per_dir = fmt["files_per_dir"] self.files_per_dir = fmt["files_per_dir"]