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

   ## Purpose of the PR
   
   Fix worker failure reporting and sort/shuffle resource ownership after the 
Java 17 upgrade, while reusing existing implementations and preserving external 
compatibility.
   
   ## Main Changes
   
   | Trigger | Before | After |
   | --- | --- | --- |
   | An algorithm worker or commit callback fails | The job can miss the 
failure, retry its callback, or leave a producer blocked | Shared consumers 
report the failure, run completion once, and release blocked producers |
   | A small Store shuffle or repeated iterator probe | Results can be unsorted 
or records can be skipped | Both memory and disk paths respect the comparator 
and iterator contract |
   | A shuffle read or cleanup fails | Truncated input can look like EOF; 
readers and spill files can remain open | Read failures propagate and owned 
resources close, preserving the first failure |
   | PD connection waits are interrupted or snapshots are synced | Interrupts 
are lost and ZIP metadata can be written after sync | Interrupted work is 
cancelled with the flag retained; the complete archive is synced |
   
   Also replace deprecated task reflection with constructor reflection, 
preserve errors without messages, use JDK stream/cleanup APIs, and remove 
duplicated deprecated compiler configuration. Commons keeps its Java 11 
bytecode target. REST/Gremlin APIs, configuration, RPC definitions and 
persisted formats are unchanged.
   
   ## Verifying these changes
   
   - [ ] Trivial rework / code cleanup without any test coverage. (No Need)
   - [x] Existing consumer, traversal and task-scheduler regressions pass.
   - [x] Added regression coverage for algorithm failure/interrupt handling, PD 
waits and archive checksums, shuffle ordering, malformed records, and 
reader/filter cleanup.
   
   Validated with Java 17: repository formatting, full `clean compile`, focused 
Server unit tests, PD core test selection and Store core test selection. An 
independent review found no remaining blocking issue. Multi-node cluster 
validation is not included.
   
   ## Does this PR potentially affect the following parts?
   
   - [ ] Dependencies
   - [ ] Modify configurations
   - [ ] The public API
   - [x] Other affects: error propagation, cancellation and resource cleanup
   - [ ] Nope
   
   ## Documentation Status
   
   - [ ] `Doc - TODO`: required documentation is pending; complete it before 
merging.
   - [x] `Doc - Done`: documentation is included here.
   - [ ] `Doc - No Need`: no user-visible documentation is affected.
   
   Documentation: [storage lifecycle 
contracts](../blob/master/docs/storage-lifecycle.md), including algorithm 
workers, Store shuffles, PD waits and snapshot I/O. No website configuration or 
API reference changes are required.
   


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