-
Notifications
You must be signed in to change notification settings - Fork 21
Open
Labels
Stellar WaveIssues in the Stellar wave programIssues in the Stellar wave program
Description
π Overview
Blockchain data ingestion must be idempotent by design.
This issue focuses on ensuring that re-running the indexer β intentionally or accidentally β never corrupts backend state.
π― Objectives
Guarantee that:
- Events are processed once
- Duplicate executions are harmless
- Backend state remains deterministic
π§ Problem Context
Indexers can restart due to:
- Deployments
- Crashes
- Network issues
Without idempotency:
- Balances drift
- Rewards double-count
- Trust is broken
π§© Technical Scope
1οΈβ£ Event Uniqueness
Define uniqueness constraints using:
txHashlogIndexblockNumber
Enforce at DB level.
2οΈβ£ Processing Guards
- Check existence before writes
- Use transactional writes where needed
- Fail safely on conflicts
3οΈβ£ Restart Safety
- Indexer can resume from last processed block
- Reprocessing same range produces same DB state
β Acceptance Criteria
- Re-running indexer produces identical state
- Duplicate events are ignored safely
- DB constraints enforce uniqueness
- Tests cover replay scenarios
β³ Complexity & Effort
Complexity: Medium
Estimated Effort: ~0.5 day
π·οΈ Labels
backendblockchain-syncidempotencymedium-complexitydrips-wave
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
Stellar WaveIssues in the Stellar wave programIssues in the Stellar wave program