You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hive.apache.org by "Konstantin Bereznyakov (Jira)" <ji...@apache.org> on 2026/06/01 19:51:00 UTC

[jira] [Work started] (HIVE-29642) Race in PartitionManagementTask test-only counters causes intermittent TestPartitionManagement failures

     [ https://issues.apache.org/jira/browse/HIVE-29642?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Work on HIVE-29642 started by Konstantin Bereznyakov.
-----------------------------------------------------
> Race in PartitionManagementTask test-only counters causes intermittent TestPartitionManagement failures
> -------------------------------------------------------------------------------------------------------
>
>                 Key: HIVE-29642
>                 URL: https://issues.apache.org/jira/browse/HIVE-29642
>             Project: Hive
>          Issue Type: Bug
>            Reporter: Konstantin Bereznyakov
>            Assignee: Konstantin Bereznyakov
>            Priority: Minor
>
> [https://ci.hive.apache.org/blue/organizations/jenkins/hive-precommit/detail/PR-6505/6/tests]
> {code:java}
> Testing / split-04 / PostProcess / testPartitionDiscoveryTransactionalTable – org.apache.hadoop.hive.metastore.TestPartitionManagement3sErrorexpected:<2> but was:<1>Stacktracejava.lang.AssertionError: expected:<2> but was:<1>	at org.junit.Assert.fail(Assert.java:89) {code}
> A subsequent re-run has passed.
> TestPartitionManagement.testPartitionDiscoveryTransactionalTable asserts that exactly 2 of 3 concurrent tasks are skipped, using test-only static counters in PartitionManagementTask. The assertion is flaky for two reasons. First, the JVM may schedule the 3 tasks so they do not actually overlap, in which case no skips happen at all. Second, the counters themselves are racy: the skippedAttempts = 0 reset inside the lock can clear the value while other threads are running skippedAttempts++ outside the lock.
> {*}The proposed solution{*}: Remove the counters - they were added for testing in HIVE-20707 and nothing in production reads them. Have the test verify the same properties through a Log4j2 ListAppender that observes the existing skip and discovery log messages.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)