Back to

Package replicator

Latest Go to latest

The highest tagged major version is .

Published: Jul 7, 2020 | License: MIT | Module:



var (
	// ErrEmptyReplicationTask is the error to indicate empty replication task
	ErrEmptyReplicationTask = &shared.BadRequestError{Message: "empty replication task"}
	// ErrUnknownReplicationTask is the error to indicate unknown replication task type
	ErrUnknownReplicationTask = &shared.BadRequestError{Message: "unknown replication task"}
	// ErrDeserializeReplicationTask is the error to indicate failure to deserialize replication task
	ErrDeserializeReplicationTask = &shared.BadRequestError{Message: "Failed to deserialize replication task"}

type Config

type Config struct {
	PersistenceMaxQPS                  dynamicconfig.IntPropertyFn
	ReplicatorMetaTaskConcurrency      dynamicconfig.IntPropertyFn
	ReplicatorTaskConcurrency          dynamicconfig.IntPropertyFn
	ReplicatorMessageConcurrency       dynamicconfig.IntPropertyFn
	ReplicatorActivityBufferRetryCount dynamicconfig.IntPropertyFn
	ReplicatorHistoryBufferRetryCount  dynamicconfig.IntPropertyFn
	ReplicationTaskMaxRetryCount       dynamicconfig.IntPropertyFn
	ReplicationTaskMaxRetryDuration    dynamicconfig.DurationPropertyFn
	ReplicationTaskContextTimeout      dynamicconfig.DurationPropertyFn
	ReReplicationContextTimeout        dynamicconfig.DurationPropertyFnWithDomainIDFilter
	EnableRPCReplication               dynamicconfig.BoolPropertyFn

Config contains all the replication config for worker

type Replicator

type Replicator struct {
	// contains filtered or unexported fields

Replicator is the processor for replication tasks

func NewReplicator

func NewReplicator(
	clusterMetadata cluster.Metadata,
	metadataManagerV2 persistence.MetadataManager,
	domainCache cache.DomainCache,
	clientBean client.Bean,
	config *Config,
	client messaging.Client,
	logger log.Logger,
	metricsClient metrics.Client,
	hostInfo *membership.HostInfo,
	serviceResolver membership.ServiceResolver,
	domainReplicationQueue persistence.DomainReplicationQueue,
	domainReplicationTaskExecutor domain.ReplicationTaskExecutor,
) *Replicator

NewReplicator creates a new replicator for processing replication tasks

func (*Replicator) Start

func (r *Replicator) Start() error

Start is called to start replicator

func (*Replicator) Stop

func (r *Replicator) Stop()

Stop is called to stop replicator

Package Files

Documentation was rendered with GOOS=linux and GOARCH=amd64.

Jump to identifier

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to identifier