fhan688 commented on PR #20472:
URL: https://github.com/apache/hudi/pull/20472#issuecomment-6516935283
@danny0405 Thanks again for the review. While addressing the comments, I
did another self-review and found three related correctness issues plus two
hardening opportunities.
### Correctness fixes
1. **Incomplete contracts could still hide concurrency risk**
Concurrency evidence is now assessed independently before contract
early returns. A missing or invalid contract remains `INCOMPLETE`, while `NBCC`
can still return `UNSUPPORTED`, and
relevant single-writer evidence keeps reconciliation `UNVERIFIED`.
2. **Multi-writer reconciliation emitted a contradictory deployment check**
`confirm_single_writer` is now emitted only for single-writer designs.
Multi-writer designs rely on the bounded Writer Contract deployment checks.
3. **Declared topology was conflated with the active-writer snapshot**
`active_writers` is now treated as a time-sensitive subset of declared
writer IDs. Inactive declared writers are allowed, undeclared active writers
remain conflicts, and cross-field
contradictions are reported only when the facts share an evidence
source.
### Hardening
1. **Concurrency evidence enums were not bounded**
Unknown concurrency modes and lock-consistency values are now rejected
as `FLINK_EXISTING_EVIDENCE_INVALID` instead of entering reconciliation as
arbitrary strings.
2. **Writer version and diagnostic determinism needed hardening**
Additional Flink writers are now checked against the design’s Flink
version, and validation iterates contract fields deterministically so
aggregated error messages remain stable.
Regression coverage and the corresponding references have been updated.
These changes remain assessment-only and do not make the multi-writer path
executable.
--
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]