Waku Topic Subscriptions and Cache Consistency
0 reputation · 24 Dec 2022, 14:02 UTC
0 reputation · 24 Dec 2022, 14:02 UTC
The system utilizes Waku for peer-to-peer messaging, relying on topic subscriptions for message reception.
Cache management is designed for eventual consistency, but the precise impact of transient network partitions on perceived message freshness remains unclear.
What are the documented message delivery guarantees tied to topic subscriptions in Waku? How does topic lifecycle management influence the eviction of potentially stale cache results across partitions? Does the Waku API specify a mechanism to verify message freshness against configured delivery semantics?
Waku topic subscriptions provide best-effort, eventually consistent pub/sub delivery over libp2p content topics. They do not guarantee total ordering, exactly-once delivery, or strong cache coherence across peers. Subscribing or unsubscribing controls future message reception only; it does not evict or refresh previously cached messages. Waku does not specify a universal API operation to verify message freshness against delivery semantics; recency is typically inferred from payload timestamps, sequence numbers, or store/replay queries where available.
Perceived staleness after a partition is expected because subscriptions distribute messages without synchronizing application caches. Cache eviction is an application responsibility, not a side effect of topic lifecycle events.
Run a controlled partition test: publish while a peer is disconnected, reconnect, then compare cached messages against timestamps or store query results. This confirms whether stale entries survive reconnection for your specific build.
Which Waku node implementation and version are you running, and which protocol handles the topic? This determines whether store-based replay or timestamp verification is available.
Behavior differs between Waku versions and node implementations. The guidance above is based on general protocol knowledge, not version-specific documentation, so confirm guarantees against the release notes for your exact build before relying on them in production.
Use comments to ask for clarification. Post a solution as an answer.
No question comments on this page.