plone / zodbverify

Verify a ZODB by loading all records.
Other
2 stars 1 forks source link

Use zodbverify with relstorage #15

Open margaridasp opened 1 year ago

margaridasp commented 1 year ago

Is it possible to use zodbverify with relstorage?

On the documentation I see this is the way to run: bin/zodbverify -f var/filestorage/Data.fs, but this only mentions the file-system way, and there is no option to specify a config file.

We are moving from zeo to relstorage and we had Catalog.fs on a separate mount point. Running zodbverify on this Catalog.fs showed a lot of errors. Now that we are getting rid of the external Catalog.fs and moving to Relstorage, we would like to run zodbverify to check that we don't get these errors anymore. Hence why that would be interesting for us.

Is zodbverify useful to use on Relstorage at all? Is there an alternative tool?

mauritsvanrees commented 1 year ago

Is zodbverify useful to use on Relstorage at all?

Not sure, but I guess so.

Is there an alternative tool?

You could try zodbupdate. This at least accepts a config file. In dry run mode it should be similar to zodbverify, although with less options.

I have this file in a few projects, with some example commands:

$ cat zodbupdate.conf 
# Dry run:
#   bin/zodbupdate --dry-run --config=zodbupdate.conf
# Standard updates/renames of classes:
#   bin/zodbupdate --config=zodbupdate.conf
# Standard updates/renames and pack:
#   bin/zodbupdate --pack --config=zodbupdate.conf
# Convert to Python 3 and pack:
#   bin/zodbupdate --pack --convert-py3 --config=zodbupdate.conf --encoding utf8
# Alternative, but less good for packing:
#   bin/zodbupdate -f var/filestorage/Data.fs
<filestorage main>
  path var/filestorage/Data.fs
  blob-dir var/blobstorage
  pack-keep-old false
</filestorage>

Of course instead of filestorage you would need a relstorage config.