JingsongLi opened a new pull request, #10491:
URL: https://github.com/apache/paimon/pull/10491

   ### Purpose
   
   Add the REST table commit lease protocol and catalog client APIs as an 
independently buildable foundation for coordinated snapshot publication.
   
   `POST .../commit-lock` and `POST .../commit-lock/renew` use a stable table 
UUID and the exact `commitUser`. A successful grant returns the authoritative 
snapshot head and lease duration. `rest.commit.lock-enabled` is the table 
capability flag and defaults to false; callers explicitly acquire and renew 
leases through the catalog API.
   
   The snapshot commit request is unchanged. Servers must check the owner 
together with the authenticated caller in the same transaction as snapshot 
publication, including for writers that never acquire leases. A new successful 
publication clears the lease atomically; an abandoned lease expires when 
renewal stops. There is no separate unlock RPC. This is owner admission, not a 
fencing token, so snapshot UUID CAS and file conflict validation remain 
required.
   
   This PR contains the request/response models, REST paths and client calls, 
Catalog methods and delegate forwarding, the REST capability option, protocol 
documentation and wire tests. Automatic renewal scopes, `commit.lock-on-retry`, 
and writer retry integration remain in the follow-up #10489.
   
   ### Tests
   
   - `mvn -o -pl paimon-core -am -DfailIfNoTests=false -DwildcardSuites=none 
-Dtest=CommitLockProtocolTest,CatalogSnapshotCommitTest test`
   - REST OpenAPI validation with `docs/scripts/validate-rest-openapi.js`.
   
   The wire test covers acquire/renew ownership, the granted snapshot head, and 
preserving the existing snapshot commit payload without a lock token. Maven 
validation includes formatting, Checkstyle and enforcer checks.
   


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