yuqi1129 opened a new pull request, #13077:
URL: https://github.com/apache/gravitino/pull/13077

   ### What changes were proposed in this pull request?
   
   Cherry-pick #13076 (0e7e46360e) to branch-1.3 so its CI can validate the fix 
independently of main.
   
   Read the runnable from `Thread`'s declared `target` field, avoiding subclass 
field resolution and shadowed fields. Catch `LinkageError` during individual 
thread ownership checks so remaining cleanup can continue, while allowing fatal 
VM errors to propagate.
   
   Add regressions for missing subclass dependencies, shadowed targets, linkage 
errors, and fatal-error propagation.
   
   ### Why are the changes needed?
   
   Reflecting on an unrelated Hadoop thread can throw `NoClassDefFoundError` 
during catalog cleanup and fail a DISABLE request. A shadowed field can also 
cause the wrong thread ownership decision.
   
   Related issue: #13075
   
   ### Does this PR introduce _any_ user-facing change?
   
   Catalog cleanup no longer fails for these thread-inspection errors. No 
public API or configuration changes.
   
   ### How was this patch tested?
   
   - Regression tests cover missing subclass dependencies, shadowed targets, 
linkage errors, and fatal-error propagation. Three regressions fail before the 
fix.
   - `./gradlew spotlessApply :catalogs:catalog-common:check -PskipITs 
-PskipDockerTests=true` — 21 tests passed on branch-1.3.
   - `git diff --check` passed. Full Paimon integration validation is pending 
this PR's CI.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to