zodbdump: Start to stabilize format + add test
We start to stabilize output format of
zodb dump. It is actually now robust and the only thing I would contemplate to potentially change is to also cover transaction metadata by hash checksum. So please take a look at updated format (details in patch 1) to provide feedback because it is likely close to what it will be in its final form.
We also add a program to generate test database which uses various fancy ZODB features and check
zodb dump output on it to golden one (patch 3).
To be able to dump transaction metadata in raw form ZODB is patched a bit:
and we try to detect whether appropriate support is there at runtime and if yes use it to streamline obtaining transaction extension as raw (patch 2).
Pleae see patch 1 (second half of
zodbdump.py about what has to be taken on without such support and that it still can't work fully reliably).