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

   ### What changes were proposed in this pull request?
   
   Load table columns, role privileges, and user/group memberships together 
with their parent metadata in one SELECT. Use these snapshots for updater input 
and document the audit of other entity reads.
   
   ### Why are the changes needed?
   
   Concurrent overwrite/drop between separate queries can produce incomplete or 
mixed-version entities and populate the cache with them.
   
   Part of #13853: the read-consistency P0 only. The other epic tasks remain 
open.
   
   ### Does this PR introduce _any_ user-facing change?
   
   Gets and updater inputs receive complete aggregate snapshots. No REST, 
configuration or schema changes. Role target-name resolution and cross-node 
cache invalidation retain their existing semantics.
   
   ### How was this patch tested?
   
   - 20 deterministic regression cases on H2, MySQL 8 and PostgreSQL 13, plus 
relevant table, column, role, user, group and membership service tests.
   - 44 relevant unit tests and Spotless checks passed.
   - Mutation checks fail with the former split reads, including all four 
updater-input regressions; the privilege-row identity regression also fails 
with logical-key deduplication.
   - EXPLAIN ANALYZE on MySQL/PostgreSQL with 45,000 column-history rows 
(target: 1,000 columns across 20 versions) confirms targeted history 
aggregation and existing-index row lookup. This is a query-plan check, not a 
throughput benchmark.
   


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