Skip to content

Check receiver batch boundaries with generated histories - #10

Open
jeregrine wants to merge 1 commit into
add-local-model-propertiesfrom
test-receiver-batch-boundaries
Open

Check receiver batch boundaries with generated histories#10
jeregrine wants to merge 1 commit into
add-local-model-propertiesfrom
test-receiver-batch-boundaries

Conversation

@jeregrine

Copy link
Copy Markdown
Member

Problem

The local command model settles after each operation, so it cannot detect receiver behavior that changes with replication batch boundaries. Matching ETS indexes alone also cannot establish that the resulting contents or lifecycle events are correct.

Fix

Generate ordered registry and PG histories and deliver each history through several legal batch partitions: singleton, buffer-minus-one, buffer, buffer-plus-one, and whole-history messages. Compare every partition against an independent map-based oracle for settled entries and per-key event order, including metadata and removal reasons.

Add a shared fixture that creates fresh supervisors, owners, and a mailbox-preserving observer for every example and shrink attempt. Explicit barriers settle event delivery, and teardown stops subscribers before Registry.

Supporting information

Stacked on #8; this is the first follow-up in the batch boundaries → cluster isolation → fairness → TTL stack. #7 remains independent.

These are controlled receiver-protocol scenarios using real local owner PIDs. They do not traverse Erlang distribution or exercise sender batching. Production behavior is unchanged.

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