QUEUE-143: restack maintenance foundations after QUEUE-146 - #1745
peter-lawrey wants to merge 28 commits into
Conversation
114fca8 to
c5507e9
Compare
|
Reviewer follow-up for the corrected, separately tracked QUEUE-143 Queue unit: Implemented:
Deliberately not implemented:
The literal descendant #1746 passes full |
c5507e9 to
2897c11
Compare
|
Restack/review update for exact head Tracking/ancestry is intentional: this remains a separate QUEUE-143 PR and is a literal descendant of the current QUEUE-146 stack ending at #1741 Implemented here:
Not implemented here:
The affected Queue suite and exact Q143/Q144 focused composition pass locally. The entire Queue suite was not rerun after the final metadata fixture updates; TeamCity is pending, so please review this as a tracking/restack head rather than a ready-to-merge claim. |
2897c11 to
d08d933
Compare
|
Restack review update Exact head: d08d933. It is a literal descendant of QUEUE-146 #1741 at 20ee4ec. Implemented:
Deliberately not implemented:
Fresh exact-head CI and review are still required. |
d08d933 to
8bbdc3a
Compare
|
Reviewer handoff for exact head Implemented:
Not done:
So the semantic fail-closed fix is present and |
5728a9c to
b123fcd
Compare
0a0ca1d to
e6595c1
Compare
e6595c1 to
2657f47
Compare
2657f47 to
a162423
Compare
ee2ec3c to
2b653a2
Compare
b2f43a4 to
9d2832d
Compare
This is the single maintenance-foundation delivery owner after #1741. Older #1724 is retained as source/reference and must not become a competing delivery stack. #1746 owns the complete listener lifecycle above this PR.
Review table access/lock policy, passive introspection and mutating parking/naming policy as separate decisions within this stack. Preserve the inseparable read-only pairing: mapped metadata tables report read-only truthfully and retain persisted directory bounds; only the no-metadata fallback selects a filesystem listing. Keep current-capacity scans and restoration of all four cursors/limits together.
Snapshots preserve raw case variants and distinguishable legacy names. Parking requires consistent validation, replicated-name refusal, quiescence and explicit backlog/resume guidance. Reconcile #1731's older all-deleted scenarios with authoritative-current-roll retention before importing tests.
This restructuring leaves head
2238ed5af92863d820d96753bd07ed9f89f13b0aunchanged; it selects the delivery owner and records the old/new semantic boundary.Existing implementation and validation receipt (restructuring changes only the review map)
Purpose
QUEUE-143 maintenance foundations as a literal descendant of the QUEUE-146 stack. Keep this feature separately tracked and draft for independent review.
Scope owned by this PR
cycleForFile().Q1 destination selection, Q2 ordinary EOF retry, Q3 exact recovery, fresh physical enumeration and normalization are inherited from #1739/#1740/#1741, not introduced again here. Maintenance must retain the current/latest roll and satisfy the documented quiescence and recovery-exclusion requirements. Complete Queue deletion is a separate offline operation.
Review corrections and evidence
//!; the read-only constructor decision retains its adjacent behavioral justification.cycleForFileUsesPersistedNonZeroEpochAfterRestartwrites cycles 0 and 2 with non-zero daily, hourly and named-weekly epochs, closes the Queue, and reopens without supplying roll/epoch settings. It verifies the persisted geometry and both parsed cycle numbers. The existing format/rejection test remains.Exact ancestry and local validation
d1d639b7b190506a5175e078ead8b29af24c2108.2238ed5af92863d820d96753bd07ed9f89f13b0a.mvn verifyon Linux/OpenJDK 21.0.12 passed: 1,240 reported tests, zero failures/errors, 52 skipped, retries disabled. Checkstyle, Javadocs, packaging and binary compatibility passed.2026.10-SNAPSHOTwas rebuilt from merged Remove automatic roll shrinking code #1280 commit3dd7fe5983c0133703ee72f57bced9a25270eb6f; runtime JAR SHA-25692803fb011f5071900f5c3b1b637cf39f6254e86b4e29f77f1256ecc96dde755.Merge gates
Keep draft. Require the reviewed/stable lower stack, fresh exact-head source/evidence review, green supported-platform TeamCity results or explicit human disposition, the merged Wire #1280 source and immutable release dependency coordinates. The staged coordinate delta remains isolated in #1750. Local Linux validation does not dispose of these gates or explain generic TeamCity failures.