mirror of
https://github.com/Stirling-Tools/Stirling-PDF.git
synced 2026-09-03 05:10:16 +03:00
21 lines
1.1 KiB
Gherkin
21 lines
1.1 KiB
Gherkin
@multinode @processor
|
|||
|
|
Feature: Processor pipeline and exactly-once ledger
|
||
|
|
|
||
|
|
A shared processed-file ledger with an atomic (identity_hash, policy_id) primary key ensures exactly-once processing when several nodes race the same scheduled policy; depends on the seeded "Compress incoming PDFs" policy.
|
||
|
|
|
||
|
|
@slow
|
||
|
|
Scenario: Files dropped in the source are processed across the cluster when both
|
||
|
|
nodes trigger the policy at the same instant
|
||
|
|
Given the multi-node stack is running
|
||
|
|
And I am logged in as admin
|
||
|
|
And the processor workspace is clean
|
||
|
|
When I drop 5 PDF file(s) into the S3 source under "incoming/"
|
||
|
|
And I trigger the policy "Compress incoming PDFs" on every node simultaneously
|
||
|
|
Then within 90s every dropped file should be processed across the cluster
|
||
|
|
|
||
|
|
Scenario: The ledger's atomic claim enforces exactly-once
|
||
|
|
Given the multi-node stack is running
|
||
|
|
Then a duplicate ledger claim for the same file and policy is rejected
|
||
|
|
|
||
|
|
# Note: output lands in the source's own bucket so it can be re-ingested; too flaky to assert under consume-mode pruning.
|