Documentation
¶
Index ¶
- func MigrateDataToDucklake(ctx context.Context) (err error)
- type MigrationError
- type MigrationStatus
- func (s *MigrationStatus) AddError(err error)
- func (s *MigrationStatus) Finish(outcome string)
- func (s *MigrationStatus) OnFilesFailed(n int)
- func (s *MigrationStatus) OnFilesMigrated(n int)
- func (s *MigrationStatus) OnTableFailed(tableName string)
- func (s *MigrationStatus) OnTableMigrated()
- func (s *MigrationStatus) StatusMessage() string
- func (s *MigrationStatus) WriteStatusToFile() error
- type StatusType
- type UnsupportedError
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func MigrateDataToDucklake ¶
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