Skip to content

test: transfer process state machine in multiple replicas - #6115

Merged
wolf4ood merged 1 commit into
eclipse-edc:mainfrom
wolf4ood:test/6105_multi_replica_transfer_state_machine
Oct 19, 2026
Merged

wolf4ood merged 1 commit into
eclipse-edc:mainfrom
wolf4ood:test/6105_multi_replica_transfer_state_machine

Conversation

@wolf4ood

@wolf4ood wolf4ood commented Oct 16, 2026 •

Copy link
Copy Markdown
Contributor

What this PR changes/adds

New TransferProcessStateMachineMultiReplicaTest (transfer-process-store-sql, @ComponentTest, Postgres):

  • Setup. It starts three real poll-based state machines (TransferProcessManagerImpl with
    TransferProcessorsImpl) as replicas, each with its own SqlTransferProcessStore and lease holder, over the same
    database. It uses the production LocalTransactionContext, so FOR UPDATE SKIP LOCKED applies.
  • Assertion. It seeds 60 transfer processes in REQUESTING and checks that each one reaches REQUESTED and that its
    TransferRequestMessage is sent exactly once across the replicas.

Why it does that

The existing concurrency tests (Sql*StoreConcurrencyTest) imitate the state machine with hand-written loops of
nextNotLeased and save. This test runs the real manager, processors and retry processor, so a change that breaks
the exactly-once processing between replicas (leasing, saving, lease release) is caught where it matters.

Further notes

List other areas of code that have changed but are not necessarily linked to the main feature. This could be method
signature changes, package declarations, bugs that were encountered and were fixed inline, etc.

Who will sponsor this feature?

Please @-mention the committer that will sponsor your feature.

Linked Issue(s)

Relates to #6105

Please be sure to take a look at the contributing guidelines and our etiquette for pull requests.

@wolf4ood
wolf4ood force-pushed the test/6105_multi_replica_transfer_state_machine branch from 9f442d6 to 5addf0b Compare October 16, 2026 13:08
@wolf4ood wolf4ood self-assigned this Oct 16, 2026
@wolf4ood wolf4ood added the enhancement New feature or request label Oct 16, 2026
@wolf4ood
wolf4ood marked this pull request as ready for review October 16, 2026 13:43
@wolf4ood
wolf4ood requested a review from a team as a code owner October 16, 2026 13:43
@wolf4ood
wolf4ood merged commit 5e017ca into eclipse-edc:main Oct 19, 2026
24 of 25 checks passed
@wolf4ood
wolf4ood deleted the test/6105_multi_replica_transfer_state_machine branch October 19, 2026 06:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants