handler

package
v0.7.3 Latest Latest
Warning

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

Go to latest
Published: Mar 12, 2026 License: Apache-2.0 Imports: 25 Imported by: 0

Documentation

Index

Constants

View Source
const (
	CMaxBufferedMoveObjectVersions = 100
)

Variables

This section is empty.

Functions

func New

func New(conf *Config, credsSvc objstore.CredsService, clients objstore.Clients, versionSvc meta.VersionService,
	copySvc copy.CopySvc, queueSvc tasks.QueueService, uploadSvc *storage.UploadSvc,
	limit ratelimit.RPM, listStateStore *store.MigrationObjectListStateStore,
	objectLocker *store.ObjectLocker, bucketLocker *store.BucketLocker,
	replicationstatusLocker *store.ReplicationStatusLocker, versionedSvc *VersionedMigrationSvc) *svc

func NewSwitchSvc added in v0.7.0

func NewSwitchSvc(conf *Config, policySvc policy.Service, uploadSvc *storage.UploadSvc,
	replicationstatusLocker *store.ReplicationStatusLocker) *switchSvc

Types

type Config added in v0.5.2

type Config struct {
	SwiftRetryInterval       time.Duration  `yaml:"swiftRetryInterval"`
	PauseRetryInterval       time.Duration  `yaml:"pauseRetryInterval"`
	SwitchRetryInterval      time.Duration  `yaml:"switchRetryInterval"`
	QueueUpdateInterval      time.Duration  `yaml:"queueUpdateInterval"`
	TaskCheckInterval        time.Duration  `yaml:"taskCheckInterval"`
	DelayedTaskCheckInterval time.Duration  `yaml:"delayedTaskCheckInterval"`
	CustomErrRetryInterval   *time.Duration `yaml:"customErrRetryInterval,omitempty"`
}

func (*Config) Validate added in v0.7.2

func (c *Config) Validate() error

type DiffCtrl added in v0.7.3

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

func NewDiffCtrl added in v0.7.3

func NewDiffCtrl(svc *DiffSvc, queueSvc tasks.QueueService) *DiffCtrl

func (*DiffCtrl) HandleDiff added in v0.7.3

func (r *DiffCtrl) HandleDiff(ctx context.Context, t *asynq.Task) error

func (*DiffCtrl) HandleDiffCollectObjects added in v0.7.3

func (r *DiffCtrl) HandleDiffCollectObjects(ctx context.Context, t *asynq.Task) error

func (*DiffCtrl) HandleDiffEnsureObjectsRemoved added in v0.7.3

func (r *DiffCtrl) HandleDiffEnsureObjectsRemoved(ctx context.Context, t *asynq.Task) error

func (*DiffCtrl) HandleDiffList added in v0.7.3

func (r *DiffCtrl) HandleDiffList(ctx context.Context, t *asynq.Task) error

func (*DiffCtrl) HandleDiffListVersions added in v0.7.3

func (r *DiffCtrl) HandleDiffListVersions(ctx context.Context, t *asynq.Task) error

func (*DiffCtrl) HandleDiffRemoveObjects added in v0.7.3

func (r *DiffCtrl) HandleDiffRemoveObjects(ctx context.Context, t *asynq.Task) error

type DiffSvc added in v0.7.3

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

func NewDiffSvc added in v0.7.3

func NewDiffSvc(redisClient redis.Cmdable, clients objstore.Clients, queueSvc tasks.QueueService) *DiffSvc

func (*DiffSvc) AccountObjectVersions added in v0.7.3

func (r *DiffSvc) AccountObjectVersions(ctx context.Context, diffID entity.DiffID,
	user string, location entity.DiffLocation, prefix string, ignoreEtags bool, ignoreSizes bool) error

func (*DiffSvc) CollectObjectsToFix added in v0.7.3

func (r *DiffSvc) CollectObjectsToFix(ctx context.Context, diffFixID entity.DiffFixID, source string, versioned bool) error

func (*DiffSvc) DeleteDiff added in v0.7.3

func (r *DiffSvc) DeleteDiff(ctx context.Context, id entity.DiffID) error

func (*DiffSvc) EnsureObjectsDeleted added in v0.7.3

func (r *DiffSvc) EnsureObjectsDeleted(ctx context.Context, id entity.DiffFixID, location entity.DiffLocation, user string, versioned bool, makePayload func(object string, isDir bool) (any, error)) error

func (*DiffSvc) FixDiff added in v0.7.3

func (r *DiffSvc) FixDiff(ctx context.Context, id entity.DiffID, source entity.DiffLocation, storageType dom.StorageType) error

func (*DiffSvc) GetDiffList added in v0.7.3

func (r *DiffSvc) GetDiffList(ctx context.Context) ([]entity.DiffStatus, error)

func (*DiffSvc) GetDiffReportEntries added in v0.7.3

func (r *DiffSvc) GetDiffReportEntries(ctx context.Context, id entity.DiffID, cursor uint64, pageSize uint64) (entity.DiffReportEntryPage, error)

func (*DiffSvc) GetDiffStatus added in v0.7.3

func (r *DiffSvc) GetDiffStatus(ctx context.Context, id entity.DiffID) (entity.DiffStatus, error)

func (*DiffSvc) ProduceObjectTasks added in v0.7.3

func (r *DiffSvc) ProduceObjectTasks(ctx context.Context, diffID entity.DiffID, settings entity.DiffSettings, location entity.DiffLocation, prefix string, makePayload func(prefix string) tasks.DiffListVersionsPayload) error

func (*DiffSvc) RegisterDiff added in v0.7.3

func (r *DiffSvc) RegisterDiff(ctx context.Context, id entity.DiffID, settings entity.DiffSettings) error

func (*DiffSvc) RemoveDiffObjects added in v0.7.3

func (r *DiffSvc) RemoveDiffObjects(ctx context.Context, id entity.DiffFixID, location entity.DiffLocation, user string, versioned bool) error

TODO add option to move conflicting objects rather than removing them?

func (*DiffSvc) RestartDiff added in v0.7.3

func (r *DiffSvc) RestartDiff(ctx context.Context, id entity.DiffID) error

func (*DiffSvc) ShouldCheckVersions added in v0.7.3

func (r *DiffSvc) ShouldCheckVersions(ctx context.Context, user string, locations []entity.DiffLocation) (bool, error)

func (*DiffSvc) StartDiff added in v0.7.3

func (r *DiffSvc) StartDiff(ctx context.Context, id entity.DiffID, settings entity.DiffSettings) error

type VersionedMigrationSvc added in v0.6.0

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

func NewVersionedMigrationSvc added in v0.6.0

func NewVersionedMigrationSvc(copySvc copy.CopySvc,
	objectVersionInfoStore *store.ObjectVersionInfoStore, objectLocker *store.ObjectLocker) *VersionedMigrationSvc

func (*VersionedMigrationSvc) ListVersions added in v0.6.0

func (r *VersionedMigrationSvc) ListVersions(ctx context.Context, objectID entity.VersionedObjectID, replicationID entity.BucketReplicationPolicy) error

func (*VersionedMigrationSvc) MigrateVersions added in v0.6.0

func (r *VersionedMigrationSvc) MigrateVersions(ctx context.Context, replicationID entity.BucketReplicationPolicy, prefix string) error

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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