DatabaseCopier

class dsviper.DatabaseCopier

Bases: object

Copies a Database into another Database, faithfully.

Every blob comes over, orphans included, where a conversion carries only the blobs a document references.

The target is a database you have just created: these transfers write into an empty one, and nothing checks it for you.

copy(source: Database, target: Database, progress: StepperDelegate | None = None) → DatabaseTransferInfo

Copy every document and blob of source into target.

progress is an optional StepperDelegate. Return a DatabaseTransferInfo.

Requires that target have no transaction open, and raises when it has: the copy opens an exclusive one of its own. source may be in a transaction.