Rangsh commented on PR #12173:
URL: https://github.com/apache/seatunnel/pull/12173#issuecomment-5595572198

   Thanks @SEZ9 for the careful re-review on `991e67b`. Addressed in 
`1de359ef9` on this PR branch:
   
   ### Issue 1 (Critical) — durability coverage
   Agreed: `FileMapStore.store` is `void` and does not fail the measured put 
when the underlying WAL `boolean` is false, so “write-through put returned ⇒ 
durable” was the wrong premise for dropping every iteration reload.
   
   Updated fixture:
   - every iteration still checks **resident** growth (now the **whole batch**, 
not only the last key);
   - **sampled** MapStore reload on the first iteration and every 4th iteration 
(interval chosen because `loadAll` always replays the full WAL);
   - trial tear-down still reloads the **full last growth batch**;
   - cleanup / fixture-close failures are attached with `addSuppressed` and no 
longer replace a durability failure.
   
   ### Issue 2 — merge atomicity
   `storeFinishedPipelineMetrics` now takes the IMap key lock around get → 
merge → single TTL `put`, so concurrent callers for the same `jobId` are 
serialized without referencing `JobMaster#metricsLock`.
   
   ### Issue 3 — trial sample scope
   Trial (and sampled) durability now reloads / verifies **every key in the 
growth batch**. Same WAL cost as a single-key `loadAll`, better coverage.
   
   ### Issue 4 — docs
   `docs/en|zh/engines/zeta/benchmark.md` now describe unique keys, resident 
checks, and light durable sampling vs per-sample full WAL replay.
   
   ### Issue 5 — Javadoc
   Rewrote the method contract (current IMap value, TTL put, `@param`); removed 
PR-history / `computeIfAbsent` wording and the private-field reference.
   
   ### Issue 6 — tests
   Dropped `never().computeIfAbsent(...)`. Added null-metrics rejection and 
distinct-tag merge coverage. `JobHistoryServiceFinishedMetricsTest`: 4 tests 
green locally.
   
   ### Evidence still in flight
   Fork Diagnostics for `completedJobHistoryGrowth` @ 
`initialStoredJobCount=1000` on this head: 
https://github.com/Rangsh/seatunnel/actions/runs/34309225279  
   Will follow with the matching `dev` before run (one-at-a-time on the fork 
runner), then post the before/after frames on #12063.


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

Reply via email to