migration

package
v0.7.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 7, 2025 License: AGPL-3.0 Imports: 20 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func MigrateDataToDucklake

func MigrateDataToDucklake(ctx context.Context) (err error)

MigrateDataToDucklake performs migration of views from tailpipe.db and associated parquet files into the new DuckLake metadata catalog

Types

type MigrationError

type MigrationError struct {
	// contains filtered or unexported fields
}

MigrationError is an aggregate error that wraps multiple child errors encountered during migration.

func NewMigrationError

func NewMigrationError() *MigrationError

func (*MigrationError) Append

func (m *MigrationError) Append(err error)

func (*MigrationError) Error

func (m *MigrationError) Error() string

Error provides a compact summary string

func (*MigrationError) Len

func (m *MigrationError) Len() int

func (*MigrationError) Unwrap

func (m *MigrationError) Unwrap() []error

Unwrap returns the list of child errors so that errors.Is/As can walk them (supported since Go 1.20 with Unwrap() []error)

type MigrationStatus

type MigrationStatus struct {
	Status          string  `json:"status"`
	TotalTables     int     `json:"totaltables"`
	MigratedTables  int     `json:"migratedtables"`
	FailedTables    int     `json:"failedtables"`
	RemainingTables int     `json:"remainingtables"`
	ProgressPercent float64 `json:"progress_percent"`

	TotalFiles     int `json:"total_files"`
	MigratedFiles  int `json:"migrated_files"`
	FailedFiles    int `json:"failed_files"`
	RemainingFiles int `json:"remaining_files"`

	FailedTableNames []string      `json:"failed_table_names,omitempty"`
	StartTime        time.Time     `json:"start_time"`
	Duration         time.Duration `json:"duration"`

	Errors []string `json:"errors,omitempty"`
	// contains filtered or unexported fields
}

func NewMigrationStatus

func NewMigrationStatus(totalFiles, totalTables int, updateFunc func(st *MigrationStatus)) *MigrationStatus

func (*MigrationStatus) AddError

func (s *MigrationStatus) AddError(err error)

func (*MigrationStatus) Finish

func (s *MigrationStatus) Finish(outcome string)

func (*MigrationStatus) OnFilesFailed

func (s *MigrationStatus) OnFilesFailed(n int)

func (*MigrationStatus) OnFilesMigrated

func (s *MigrationStatus) OnFilesMigrated(n int)

func (*MigrationStatus) OnTableFailed

func (s *MigrationStatus) OnTableFailed(tableName string)

func (*MigrationStatus) OnTableMigrated

func (s *MigrationStatus) OnTableMigrated()

func (*MigrationStatus) StatusMessage

func (s *MigrationStatus) StatusMessage() string

StatusMessage returns a user-facing status message (with stats) based on current migration status

func (*MigrationStatus) WriteStatusToFile

func (s *MigrationStatus) WriteStatusToFile() error

WriteStatusToFile writes the status message to a migration stats file under the migration directory. The file is overwritten on each run (resume will update it).

type StatusType

type StatusType int

StatusType represents different types of migration status messages

const (
	InitialisationFailed StatusType = iota
	MigrationFailed
	CleanupAfterSuccess
	PartialSuccess
	Success
)

type UnsupportedError

type UnsupportedError struct {
	Reason string
}

UnsupportedError represents an error when migration is not supported due to specific command line arguments or configuration

func (*UnsupportedError) As

func (e *UnsupportedError) As(target interface{}) bool

func (*UnsupportedError) Error

func (e *UnsupportedError) Error() string

func (*UnsupportedError) Is

func (e *UnsupportedError) Is(target error) bool

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL