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

   ### What changes were proposed in this pull request?
   
   Restore the public dispatcher order to:
   
   `Event -> Normalize -> Hook -> Manager/OperationDispatcher`
   
   Keep internal dispatchers independent from hook and event dispatchers, and 
apply the same ordering to Iceberg REST dispatchers.
   
   Remove redundant normalization from hook dispatchers and add a regression 
test covering owner assignment failures.
   
   ### Why are the changes needed?
   
   PR #10834 placed the hook dispatcher outside the event dispatcher so that 
CREATE events were emitted before the SET_OWNER event.
   
   After PR #12893, automatic owner assignment is routed through internal 
dispatchers and no longer emits a nested SET_OWNER event. Keeping the previous 
order would emit a successful CREATE event before owner assignment completes, 
even if the overall CREATE request subsequently fails.
   
   Restoring the event dispatcher as the outermost layer makes the CREATE event 
reflect the result of the complete operation.
   
   Related: #10834, #12893
   
   ### Does this PR introduce _any_ user-facing change?
   
   Yes. If automatic owner assignment fails, the CREATE operation now emits a 
failure event instead of an earlier success event.
   
   There are no API or property changes.
   
   ### How was this patch tested?
   
   - `./gradlew :core:test -PskipITs`
   - Targeted Iceberg REST dispatcher tests
   - Core and Iceberg REST compile tests
   - `./gradlew :core:spotlessApply :iceberg:iceberg-rest-server:spotlessApply`
   - `git diff --check`
   


-- 
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