mirror of
https://github.com/temporalio/temporal.git
synced 2026-08-30 18:41:49 -07:00
## What changed? `replicator_errors` now records the existing `replication_task_type` metric dimension when a namespace replication processor exhausts its task-application retries. This distinguishes values such as `NamespaceTask` and `TaskQueueUserData` without introducing a new metric. A unit test verifies that the failure counter carries the task type from the failed replication task. ## Why? This is a prerequisite for splitting task queue user data (`TaskQueueUserData`) failures from namespace metadata replication (`NamespaceTask`) alerts. Today both task kinds feed `replicator_errors` under `NamespaceReplicationTask` and are indistinguishable, so TQUD failures can be reported as namespace replication poison pills. This PR only adds the server metric label. Alert definitions will be updated separately after the label is available in deployed server versions. ## How did you test it? - [x] built - [x] covered by existing tests - [x] added unit tests - [ ] added new functional test(s) Manual two-cluster XDC E2E using `development-cluster-a.yaml` and `development-cluster-b.yaml`: - A namespace replication conflict exported `replicationTaskType="NamespaceTask"`. - A TQUD apply failure exported `replicationTaskType="TaskQueueUserData"`.
Temporal Worker
Temporal Worker is a role for Temporal service used for hosting any components responsible for performing background processing on the Temporal cluster.
Replicator
Replicator is a background worker responsible for consuming replication tasks generated by remote Temporal clusters and pass it down to processor, so they can be applied to local Temporal cluster.
Quickstart for localhost development
-
Start Temporal development server for active zone:
make start-cdc-active -
Start Temporal development server for standby(passive) zone:
make start-cdc-standby -
Connect two Temporal clusters:
tctl --ad 127.0.0.1:7233 adm cl upsert-remote-cluster --frontend_address "localhost:8233" tctl --ad 127.0.0.1:8233 adm cl upsert-remote-cluster --frontend_address "localhost:7233" -
Create global namespaces
tctl --ns sample namespace register --gd true --ac active --cl active standby -
Failover between zones:
Failover to standby:
tctl --ns sample namespace update --ac standbyFailback to active:
tctl --ns sample namespace update --ac active