Skip to content

PHOENIX-7945 Fix OrphanDeleteMarkerCompactionIT timeout on HBase 2.6 (addendum)#2565

Open
ujjawal4046 wants to merge 1 commit into
apache:masterfrom
ujjawal4046:PHOENIX-7945-addendum
Open

PHOENIX-7945 Fix OrphanDeleteMarkerCompactionIT timeout on HBase 2.6 (addendum)#2565
ujjawal4046 wants to merge 1 commit into
apache:masterfrom
ujjawal4046:PHOENIX-7945-addendum

Conversation

@ujjawal4046

Copy link
Copy Markdown
Contributor

Summary

  • Adds hbase.procedure.remote.dispatcher.delay.msec=0 to OrphanDeleteMarkerCompactionIT.doSetup() to prevent deterministic deadlock on HBase 2.6 CI profile.

Root Cause

HBase 2.6 (HBASE-26867) moved Admin.flush() from ZK-based execProcedure to ProcedureV2 (FlushTableProcedureFlushRegionProcedure). The RemoteProcedureDispatcher uses a DelayQueue keyed on EnvironmentEdgeManager.currentTime() with a default 150ms delay. When ManualEnvironmentEdge is injected and only the blocked test thread can advance time, the dispatch item never expires — deterministic deadlock causing 120s timeout.

Fix

Set hbase.procedure.remote.dispatcher.delay.msec=0 so the dispatch item expires immediately from the DelayQueue. This is consistent with the fix already applied to 10+ other Phoenix test classes after PHOENIX-7353/7354.

Test plan

  • All 5 tests in OrphanDeleteMarkerCompactionIT pass on HBase 2.6 profile (59.76s)
  • CI green on hbase-2.6 profile

…(addendum)

HBase 2.6 moved Admin.flush() from ZK-based execProcedure to ProcedureV2
(FlushTableProcedure). The RemoteProcedureDispatcher uses a DelayQueue
keyed on EnvironmentEdgeManager.currentTime() with a default 150ms delay.
When ManualEnvironmentEdge is injected and only the blocked test thread
can advance time, the dispatch item never expires — deterministic deadlock.

Set hbase.procedure.remote.dispatcher.delay.msec=0 so the dispatch item
expires immediately, consistent with the fix already applied to 10+ other
Phoenix test classes after PHOENIX-7353/7354.

@virajjasani virajjasani left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants