[
https://issues.apache.org/jira/browse/PHOENIX-7992?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Himanshu Gwalani updated PHOENIX-7992:
--------------------------------------
Description:
New metrics (additive only; no existing metric is renamed or changed):
- endToEndReplayLagMs (histogram) — round-eligible -> replay-done lag;
source ReplicationLogDiscoveryReplay
- pickupLagMs (histogram) — round-eligible -> claimed lag;
source ReplicationLogDiscoveryReplay
- mutationsReplayedCount (counter) — total mutations replayed;
source ReplicationLogProcessor
- mutationsPerFile (histogram) — mutations per replayed file;
source ReplicationLogProcessor
- markFileInProgressCollisionCount (counter) — failed in-progress claim
renames; shared file-tracker (replay + forwarder)
- roundsExceedingCycleCount (counter) — rounds whose new-file processing
exceeded the round cycle (roundTimeMills); shared discovery source
was:
The replay/forward round-eligibility gate is evaluated on the wall clock, but
PHOENIX-7813 aligned the scheduler wake — fired on the monotonic clock
(System.nanoTime) — to that boundary with zero margin. Small
nanoTime-vs-wall-clock drift can tip a wake just below the boundary, so the
round is not yet eligible and the region server loses a full (~60s) cycle. Most
damaging during planned failover.
Fix (shared base class ReplicationLogDiscovery, inherited by replay +
forwarder):
1. Epsilon margin so the aligned wake lands just after the boundary rather
than exactly on it
(config phoenix.replication.discovery.aligned.delay.epsilon.millis,
default 500ms).
2. Re-anchor to the wall-clock grid every cycle (self-rescheduling one-shot
instead of
scheduleAtFixedRate) so alignment error cannot accumulate.
> Add server-side replay performance metrics for HA sync replication
> ------------------------------------------------------------------
>
> Key: PHOENIX-7992
> URL: https://issues.apache.org/jira/browse/PHOENIX-7992
> Project: Phoenix
> Issue Type: Sub-task
> Reporter: Himanshu Gwalani
> Assignee: Himanshu Gwalani
> Priority: Major
>
> New metrics (additive only; no existing metric is renamed or changed):
> - endToEndReplayLagMs (histogram) — round-eligible -> replay-done lag;
> source ReplicationLogDiscoveryReplay
> - pickupLagMs (histogram) — round-eligible -> claimed lag;
> source ReplicationLogDiscoveryReplay
> - mutationsReplayedCount (counter) — total mutations replayed;
> source ReplicationLogProcessor
> - mutationsPerFile (histogram) — mutations per replayed file;
> source ReplicationLogProcessor
> - markFileInProgressCollisionCount (counter) — failed in-progress claim
> renames; shared file-tracker (replay + forwarder)
> - roundsExceedingCycleCount (counter) — rounds whose new-file processing
> exceeded the round cycle (roundTimeMills); shared discovery source
--
This message was sent by Atlassian Jira
(v8.20.10#820010)