Documentation
¶
Index ¶
- type Config
- type Option
- func WithInstrumentation(i *otel.Instrumentation) Option
- func WithLogger(logger loglib.Logger) Option
- func WithProgressTracking(ctx context.Context) Option
- func WithRestoreConflictTargetsBeforeData() Option
- func WithRestoreToWAL(processor processor.Processor) Option
- func WithSnapshotGenerator(g generator.SnapshotGenerator) Option
- type PGSnapshotWALRestore
- type SnapshotGenerator
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct {
SourcePGURL string
TargetPGURL string
CleanTargetDB bool
CreateTargetDB bool
// if set to true the snapshot will include all database objects, not tied
// to any particular schema, such as extensions or triggers.
IncludeGlobalDBObjects bool
// Role name to be used to create the dump
Role string
// "enabled", "disabled", or "no_passwords"
RolesSnapshotMode string
// Do not output commands to set ownership of objects to match the original
// database.
NoOwner bool
// Prevent dumping of access privileges (grant/revoke commands)
NoPrivileges bool
// if set, the dump will be written to this file for debugging purposes
DumpDebugFile string
// if set, security label providers that will be excluded from the dump
ExcludedSecurityLabels []string
}
type Option ¶
type Option func(s *SnapshotGenerator)
func WithInstrumentation ¶ added in v0.6.0
func WithInstrumentation(i *otel.Instrumentation) Option
func WithLogger ¶
func WithProgressTracking ¶ added in v0.9.0
func WithRestoreConflictTargetsBeforeData ¶ added in v1.1.0
func WithRestoreConflictTargetsBeforeData() Option
WithRestoreConflictTargetsBeforeData restores constraints and indexes that can be used as INSERT ... ON CONFLICT targets (primary keys, unique constraints and unique indexes) before the wrapped data snapshot generator runs. This is required when the data writer emits INSERT ... ON CONFLICT DO UPDATE, since the target table must already have a matching unique or primary key constraint at insert time.
func WithRestoreToWAL ¶ added in v1.0.0
func WithSnapshotGenerator ¶ added in v0.6.0
func WithSnapshotGenerator(g generator.SnapshotGenerator) Option
type PGSnapshotWALRestore ¶ added in v1.0.0
type PGSnapshotWALRestore struct {
// contains filtered or unexported fields
}
PGSnapshotWALRestore handles restoring a pg_dump snapshot as WAL DDL events
type SnapshotGenerator ¶
type SnapshotGenerator struct {
// contains filtered or unexported fields
}
SnapshotGenerator generates postgres schema snapshots using pg_dump and pg_restore
func NewSnapshotGenerator ¶
func NewSnapshotGenerator(ctx context.Context, c *Config, opts ...Option) (*SnapshotGenerator, error)
NewSnapshotGenerator will return a postgres schema snapshot generator that uses pg_dump and pg_restore to sync the schema of two postgres databases
func (*SnapshotGenerator) Close ¶
func (s *SnapshotGenerator) Close() error