Skip to content

feat(DLR): Persist and replay unpushed SMPP DLRs#219

Open
lykakis wants to merge 1 commit into
mainfrom
feat/handleUnpushedDLRs
Open

feat(DLR): Persist and replay unpushed SMPP DLRs#219
lykakis wants to merge 1 commit into
mainfrom
feat/handleUnpushedDLRs

Conversation

@lykakis
Copy link
Copy Markdown
Collaborator

@lykakis lykakis commented May 21, 2026

Add persistent storage for DLRs that cannot be pushed while an SMPP client is disconnected. Store unpushed DLRs in MVStore using a native-image-safe DTO and replay them when the matching systemId reconnects. Also add systemId-indexed lookup for efficient replay, cleanup after successful enqueue, restart persistence coverage, and native E2E smoke coverage for DLR replay after container restart.

@lykakis lykakis requested a review from a team May 21, 2026 13:25
Comment thread sendium-core/src/main/java/gr/cytech/sendium/core/worker/InMemoryDlrService.java Outdated
Comment thread sendium-core/src/main/java/gr/cytech/sendium/core/worker/InMemoryDlrService.java Outdated
@lykakis lykakis force-pushed the feat/handleUnpushedDLRs branch from f440734 to 20851e5 Compare May 22, 2026 07:30
Add persistent storage for DLRs that cannot be pushed while an SMPP client is disconnected. Store unpushed DLRs in MVStore using a native-image-safe DTO and replay them when the matching systemId reconnects.
Also add systemId-indexed lookup for efficient replay, cleanup after successful enqueue, restart persistence coverage, and native E2E smoke coverage for DLR replay after container restart.

Signed-off-by: pavlos <pavlos@cytech.gr>
@lykakis lykakis force-pushed the feat/handleUnpushedDLRs branch from 20851e5 to 952b1de Compare May 22, 2026 09:22
@lykakis lykakis requested a review from JChrist May 22, 2026 09:39
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.

2 participants