nsreplication

package
v1.27.0-128.5 Latest Latest
Warning

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

Go to latest
Published: Feb 20, 2025 License: MIT Imports: 13 Imported by: 0

Documentation

Overview

Package nsreplication is a generated GoMock package.

Package nsreplication is a generated GoMock package.

Index

Constants

This section is empty.

Variables

View Source
var (
	// ErrEmptyNamespaceReplicationTask is the error to indicate empty replication task
	ErrEmptyNamespaceReplicationTask = serviceerror.NewInvalidArgument("empty namespace replication task")
	// ErrInvalidNamespaceOperation is the error to indicate empty namespace operation attribute
	ErrInvalidNamespaceOperation = serviceerror.NewInvalidArgument("invalid namespace operation attribute")
	// ErrInvalidNamespaceID is the error to indicate empty rID attribute
	ErrInvalidNamespaceID = serviceerror.NewInvalidArgument("invalid namespace ID attribute")
	// ErrInvalidNamespaceInfo is the error to indicate empty info attribute
	ErrInvalidNamespaceInfo = serviceerror.NewInvalidArgument("invalid namespace info attribute")
	// ErrInvalidNamespaceConfig is the error to indicate empty config attribute
	ErrInvalidNamespaceConfig = serviceerror.NewInvalidArgument("invalid namespace config attribute")
	// ErrInvalidNamespaceReplicationConfig is the error to indicate empty replication config attribute
	ErrInvalidNamespaceReplicationConfig = serviceerror.NewInvalidArgument("invalid namespace replication config attribute")
	// ErrInvalidNamespaceConfigVersion is the error to indicate empty config version attribute
	ErrInvalidNamespaceConfigVersion = serviceerror.NewInvalidArgument("invalid namespace config version attribute")
	// ErrInvalidNamespaceFailoverVersion is the error to indicate empty failover version attribute
	ErrInvalidNamespaceFailoverVersion = serviceerror.NewInvalidArgument("invalid namespace failover version attribute")
	// ErrInvalidNamespaceState is the error to indicate invalid namespace state
	ErrInvalidNamespaceState = serviceerror.NewInvalidArgument("invalid namespace state attribute")
	// ErrNameUUIDCollision is the error to indicate namespace name / UUID collision
	ErrNameUUIDCollision = serviceerror.NewInvalidArgument("namespace replication encountered name / UUID collision")
)

Functions

func ConvertClusterReplicationConfigFromProto

func ConvertClusterReplicationConfigFromProto(
	input []*replicationpb.ClusterReplicationConfig,
) []string

func ConvertFailoverHistoryToPersistenceProto

func ConvertFailoverHistoryToPersistenceProto(failoverHistory []*replicationpb.FailoverStatus) []*persistencespb.FailoverStatus

Types

type DLQMessageHandler

type DLQMessageHandler interface {
	Read(ctx context.Context, lastMessageID int64, pageSize int, pageToken []byte) ([]*replicationspb.ReplicationTask, []byte, error)
	Purge(ctx context.Context, lastMessageID int64) error
	Merge(ctx context.Context, lastMessageID int64, pageSize int, pageToken []byte) ([]byte, error)
}

DLQMessageHandler is the interface handles namespace DLQ messages

func NewDLQMessageHandler

func NewDLQMessageHandler(
	replicationHandler TaskExecutor,
	namespaceReplicationQueue persistence.NamespaceReplicationQueue,
	logger log.Logger,
) DLQMessageHandler

NewDLQMessageHandler returns a DLQMessageHandler instance

type MockDLQMessageHandler

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

MockDLQMessageHandler is a mock of DLQMessageHandler interface.

func NewMockDLQMessageHandler

func NewMockDLQMessageHandler(ctrl *gomock.Controller) *MockDLQMessageHandler

NewMockDLQMessageHandler creates a new mock instance.

func (*MockDLQMessageHandler) EXPECT

EXPECT returns an object that allows the caller to indicate expected use.

func (*MockDLQMessageHandler) Merge

func (m *MockDLQMessageHandler) Merge(ctx context.Context, lastMessageID int64, pageSize int, pageToken []byte) ([]byte, error)

Merge mocks base method.

func (*MockDLQMessageHandler) Purge

func (m *MockDLQMessageHandler) Purge(ctx context.Context, lastMessageID int64) error

Purge mocks base method.

func (*MockDLQMessageHandler) Read

func (m *MockDLQMessageHandler) Read(ctx context.Context, lastMessageID int64, pageSize int, pageToken []byte) ([]*repication.ReplicationTask, []byte, error)

Read mocks base method.

type MockDLQMessageHandlerMockRecorder

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

MockDLQMessageHandlerMockRecorder is the mock recorder for MockDLQMessageHandler.

func (*MockDLQMessageHandlerMockRecorder) Merge

func (mr *MockDLQMessageHandlerMockRecorder) Merge(ctx, lastMessageID, pageSize, pageToken any) *gomock.Call

Merge indicates an expected call of Merge.

func (*MockDLQMessageHandlerMockRecorder) Purge

func (mr *MockDLQMessageHandlerMockRecorder) Purge(ctx, lastMessageID any) *gomock.Call

Purge indicates an expected call of Purge.

func (*MockDLQMessageHandlerMockRecorder) Read

func (mr *MockDLQMessageHandlerMockRecorder) Read(ctx, lastMessageID, pageSize, pageToken any) *gomock.Call

Read indicates an expected call of Read.

type MockTaskExecutor

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

MockTaskExecutor is a mock of TaskExecutor interface.

func NewMockTaskExecutor

func NewMockTaskExecutor(ctrl *gomock.Controller) *MockTaskExecutor

NewMockTaskExecutor creates a new mock instance.

func (*MockTaskExecutor) EXPECT

EXPECT returns an object that allows the caller to indicate expected use.

func (*MockTaskExecutor) Execute

Execute mocks base method.

type MockTaskExecutorMockRecorder

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

MockTaskExecutorMockRecorder is the mock recorder for MockTaskExecutor.

func (*MockTaskExecutorMockRecorder) Execute

func (mr *MockTaskExecutorMockRecorder) Execute(ctx, task any) *gomock.Call

Execute indicates an expected call of Execute.

type Replicator

type Replicator interface {
	HandleTransmissionTask(
		ctx context.Context,
		namespaceOperation enumsspb.NamespaceOperation,
		info *persistencespb.NamespaceInfo,
		config *persistencespb.NamespaceConfig,
		replicationConfig *persistencespb.NamespaceReplicationConfig,
		replicationClusterListUpdated bool,
		configVersion int64,
		failoverVersion int64,
		isGlobalNamespace bool,
		failoverHistoy []*persistencespb.FailoverStatus,
	) error
}

Replicator is the interface which can replicate the namespace

func NewReplicator

func NewReplicator(
	namespaceReplicationQueue persistence.NamespaceReplicationQueue,
	logger log.Logger,
) Replicator

NewReplicator create a new instance of namespace replicator

type TaskExecutor

type TaskExecutor interface {
	Execute(ctx context.Context, task *replicationspb.NamespaceTaskAttributes) error
}

TaskExecutor is the interface for executing namespace replication tasks

func NewTaskExecutor

func NewTaskExecutor(
	currentCluster string,
	metadataManagerV2 persistence.MetadataManager,
	logger log.Logger,
) TaskExecutor

NewTaskExecutor creates a new instance of namespace replicator

Jump to

Keyboard shortcuts

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