imbajin opened a new pull request, #3329:
URL: https://github.com/apache/hugegraph/pull/3329

   ## Purpose of the PR
   
   Graphs created after startup could miss RPC cache invalidation registration, 
leaving other Server instances with stale cached data. Register and export each 
graph before publishing it, and retain ownership when cleanup needs a retry.
   
   Source PR: https://github.com/hugegraph/hugegraph/pull/303.
   
   ## Main Changes
   
   - Serialize RPC export and removal for the same service, and clean up only 
the owned resources.
   - Use the existing administrative scope for internal lazy publication while 
preserving public RPC ADMIN checks.
   - Retain the original graph and local bindings after pre-delete cleanup 
failure. Non-clearing removal drains and closes before removing ownership; 
later clear, metadata or close failures do not promise rollback or a healthy 
graph.
   
   Existing HugeGraph implementations remain compatible.
   
   ## Verifying these changes
   
   - [ ] Trivial rework / code cleanup without any test coverage. (No Need)
   - [ ] Already covered by existing tests.
   - [x] Need tests and can be verified as follows:
     - Java 17 formatting and complete reactor compilation; complete Server 
unit suite and relevant Commons RPC tests.
     - Native controls for lazy authorization, concurrent export/removal, 
factory replacement and cleanup retry, plus three independent final reviews.
   
   Current-head CI remains under validation on both repositories. Real 
PD/shared-backend cross-Server DML and complete HTTP authentication remain 
release validation tasks.
   
   ## Does this PR potentially affect the following parts?
   
   - [ ] Dependencies
   - [ ] Modify configurations
   - [ ] The public API
   - [x] Other affects (graph publication, removal and RPC cache lifecycle)
   - [ ] Nope
   
   ## Documentation Status
   
   - [ ] `Doc - TODO`
   - [x] `Doc - Done`
   - [ ] `Doc - No Need`
   
   Runtime and retry boundaries: 
[docs/server-runtime.md](https://github.com/hugegraph/hugegraph/blob/fix/server-rpc-late-graph/docs/server-runtime.md).
   
   ![Cache RPC 
lifecycle](https://github.com/user-attachments/assets/bfc3fd33-ea63-498e-a521-12a22c013c18)
   
   Conceptual lifecycle; the runtime document defines the failure and retry 
boundaries.
   


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


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to