Skip to content

QUEUE-144: source branch for split context-listener PRs [do not merge] - #1718

Draft
peter-lawrey wants to merge 37 commits into
developfrom
feature/QUEUE-144-rollFileListener
Draft

peter-lawrey wants to merge 37 commits into
developfrom
feature/QUEUE-144-rollFileListener

Conversation

@peter-lawrey

@peter-lawrey peter-lawrey commented Jul 30, 2026

Copy link
Copy Markdown
Member

This draft is the original mixed QUEUE-143/QUEUE-144 source branch. It is retained for commit provenance only and must not be merged.

Work already split out:

The OSS cleanup CLI decision is complete: it ships independently in #1716 with cycle-number retention semantics. Remaining QUEUE-144 lifecycle and Enterprise integration commits will be mined into focused PRs based on the split stack; they will not be rebased through this umbrella branch.

A typo'd path passed to analyse(File)/removableRollFileCandidatesByTailerPosition
was silently mkdir'd and given a metadata.cq4t queue skeleton that later sweeps
discovered as a real, empty queue. Guard with IllegalArgumentException before the
builder can create anything.
An empty --park value (e.g. an unset shell variable expanding to --park "")
silently degraded to a plain sweep and bypassed the one-shot guard; it is now a
usage error. checkFreeDisk deduped filesystems by FileStore.name(), which
collides across same-typed mounts (tmpfs/overlay/NFS), skipping a distinct
filesystem that may be filling; dedupe by the FileStore itself, whose platform
equals() compares device identity.
Document that the reserved .lock/.version tailer-id rejection is a deliberate
breaking change required for non-overlapping metadata key namespaces, that a
tableStoreGet miss is always a full scan because a named tailer can be
registered without notice, and that TableStore.acquireOrGetValueFor's default
throws UnsupportedOperationException for createIfAbsent=false unless overridden.
Note that custom RollCycles are unsupported (the tool infers the cycle from the
file-name format), that a pretoucher-pre-created next cycle should be counted in
--keep, that --fail-on-warn with --interval stops the loop on the first warning
so needs a supervisor, and that the reserved tailer-id suffixes are a breaking
change; soften the park-preflight claim to what the code guarantees.
@peter-lawrey peter-lawrey changed the title Feature/queue 144 roll file listener QUEUE-144: source branch for split context-listener PRs [do not merge] Aug 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant