nwaku/waku/waku_store
Ivan FB 3e65cc18f6
REST store: get msgs from self node when store is mounted and no peerAddr is passed (#2387)
A node that handles REST-Store requests normally acts as a 
Store-client and therefore it retrieved the messages from another
Store-node.
With these changes, we allow a node with Store mounted, to retrieve
its messages. In other words, the node can act as a Store-server of
its messages.

* test_rest_store.nim: add a new test to validate that the self-node can
retrieve its messages to the REST client.

* rest/store/client.nim: add new proc to allow making a GET store
request without peerAddr.

* rest/store/handle.nim: add logic to handle requests that don't
provide peerAddr but the self/local node has Store mounted. In this case,
the self/local node will retrieve its locally stored messages.

* waku_store/self_req_handler.nim: logic to handle "store" requests
allowing the REST-store node to act as a Store-server node. The
'self_req_handler.nim' helps to bypass the store protocol and directly
retrieve the messages from the local/self node. I added this logic in
a separate file from 'protocol.nim' because it doesn't participate in
any libp2p communication.

* waku_store/protocol.nim: make 'queryHandler' attribute public so that
it can be used from the 'self_req_handler.nim' module.
2024-01-31 17:43:59 +01:00
..
README.md chore: remove references to v2 (#1898) 2023-08-09 18:11:50 +01:00
client.nim refactor(store): HistoryQuery.direction (#2263) 2023-12-19 15:10:27 +01:00
common.nim refactor(store): HistoryQuery.direction (#2263) 2023-12-19 15:10:27 +01:00
protocol.nim REST store: get msgs from self node when store is mounted and no peerAddr is passed (#2387) 2024-01-31 17:43:59 +01:00
protocol_metrics.nim chore: remove references to v2 (#1898) 2023-08-09 18:11:50 +01:00
rpc.nim refactor(store): HistoryQuery.direction (#2263) 2023-12-19 15:10:27 +01:00
rpc_codec.nim refactor(store): HistoryQuery.direction (#2263) 2023-12-19 15:10:27 +01:00
self_req_handler.nim REST store: get msgs from self node when store is mounted and no peerAddr is passed (#2387) 2024-01-31 17:43:59 +01:00

README.md

Waku Store protocol

The store protocol implements historical message support. See https://rfc.vac.dev/spec/13/ for more information.