Skip to main content

ZODB: recover lost objects from a backup

Project description

This package contains a function to restore lost objects from a ZODB backup. In the future, it might grow further tools for ZODB repair.

recover.restore_from_backup

The module recover defines the function restore_from_backup to restore lost objects from a ZODB backup. restore_from_backup has parameters lost, backup and target.

lost is an iterable of oids identifying objects lost in target. The oids might e.g. have been found by the standard fsrefs utility.

backup and target are open ZODB storages. backup is read only and can have been opened read only; target is read and written.

restore_from_backup reads the objects identified by the oids in lost from backup and writes them to target. If such a restored object contains references to other objects not available in target, they are restored recursively. The operations are logged via Python’s standard logging subsystem.

Example usage:

from logging import basicConfig, getLogger, INFO
from ZODB.FileStorage.FileStorage import FileStorage
from dm.zodb.repair.recover import restore_from_backup

basicConfig()
logger = getLogger(); logger.setLevel(INFO)

lost = [....] # list of oids for lost objects, e.g. derived from "fsrefs" output

backup = FileStorage('backup.fs', read_only=True)
target = FileStorage('target.fs')
restore_from_backup(lost, backup, target)
backup.close()
target.close()

Project details


Release history Release notifications | RSS feed

This version

1.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dm.zodb.repair-1.0.tar.gz (2.9 kB view details)

Uploaded Source

File details

Details for the file dm.zodb.repair-1.0.tar.gz.

File metadata

File hashes

Hashes for dm.zodb.repair-1.0.tar.gz
Algorithm Hash digest
SHA256 c0e3cf6496f63768d1f271cc86c16c47ec04ce1b3726ccfbb168cdeb6f8bbfcc
MD5 650fb9abd6a4b9ce6d0b668172582537
BLAKE2b-256 e2739fcbb68352ecd1d6a820a3c87c3c9ba6fd4c10fee1e39e6c9c5f9c593a53

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page