hive icon indicating copy to clipboard operation
hive copied to clipboard

HIVE-27944:When HIVE-LLAP reads the ICEBERG table, a deadlock may occur.

Open BsoBird opened this issue 2 years ago • 8 comments

What changes were proposed in this pull request?

Modified the modifier of the cache property in the SplitGroup class to make it non-static.

JIRA: https://issues.apache.org/jira/browse/HIVE-27944

Why are the changes needed?

Since the Properties object implement HashTable interface, all the methods of the HashTable interface are synchronised. In a multi-threaded environment, a deadlock will occur when propA.equals(propB) and propB.equals(propA) occur at the same time. The problem can be solved with minimal modification by changing SplitGroup.cache to a non-static property.

Does this PR introduce any user-facing change?

no

Is the change a dependency upgrade?

no

How was this patch tested?

no need. Because this patch doesn't change the execution logic of any code

BsoBird avatar Dec 10 '23 14:12 BsoBird

@deniskuzZ @abstractdog Hi.Could you help review this PR?

BsoBird avatar Dec 10 '23 14:12 BsoBird

Quality Gate Passed Quality Gate passed

Kudos, no new issues were introduced!

0 New issues
0 Security Hotspots
No data about Coverage
No data about Duplication

See analysis details on SonarCloud

sonarqubecloud[bot] avatar Dec 26 '23 04:12 sonarqubecloud[bot]

This pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Feel free to reach out on the [email protected] list if the patch is in need of reviews.

github-actions[bot] avatar Mar 15 '24 00:03 github-actions[bot]

1

---Original--- From: @.> Date: Fri, Mar 15, 2024 08:19 AM To: @.>; Cc: "PLASH @.@.>; Subject: Re: [apache/hive] HIVE-27944:When HIVE-LLAP reads the ICEBERG table,a deadlock may occur. (PR #4935)

This pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Feel free to reach out on the @.*** list if the patch is in need of reviews.

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you were mentioned.Message ID: @.***>

BsoBird avatar Mar 15 '24 03:03 BsoBird

This pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Feel free to reach out on the [email protected] list if the patch is in need of reviews.

github-actions[bot] avatar May 15 '24 00:05 github-actions[bot]

This pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Feel free to reach out on the [email protected] list if the patch is in need of reviews.

1

BsoBird avatar May 20 '24 03:05 BsoBird

I can't just approve this without the test. I wanted to repro the issue locally and then create a q test, but I didn't have time. Do you have some repro steps that could be tried locally (data setup + selects)?

deniskuzZ avatar Jul 15 '24 10:07 deniskuzZ

Sir.I'm having a hard time triggering this bug directly via SQL because as of now, I'm not sure how to consistently reproduce the problem. in our production env, after we added the patch.The problem disappeared, so I never looked at how to reproduce the bug. Can we test this class in code without using SQL?

BsoBird avatar Jul 15 '24 14:07 BsoBird