* Create initial `mempool::Crawler` type The mempool crawler is responsible for periodically asking peers for transactions to insert into the local mempool. This initial implementation will periodically ask for transactions, but won't do anything with them yet. Also, the crawler is currently configured to be always enabled, but this should be fixed to avoid crawling while Zebra is still syncing the chain. * Add a timeout to peer responses Prevent the crawler from getting stuck if there's communication with a peer that takes too long to respond. * Run the mempool crawler in Zebra Spawn a task for the crawler when Zebra starts. * Test if the crawler is sending requests Create a mock for the `PeerSet` service to intercept requests and verify that the transaction requests are sent periodically. * Use `full` Tokio features when testing Make it simpler to select the features for test builds. Co-authored-by: teor <teor@riseup.net> * Link to the issue for crawler activation Make it easy to navigate from the `TODO` comment to the current project planning. Co-authored-by: teor <teor@riseup.net> * Link to the issue for downloading transactions Make it easy to navigate from the `TODO` comment to the current project planning. Co-authored-by: teor <teor@riseup.net> Co-authored-by: teor <teor@riseup.net> |
||
|---|---|---|
| .. | ||
| bin/zebrad | ||
| commands | ||
| components | ||
| application.rs | ||
| commands.rs | ||
| components.rs | ||
| config.rs | ||
| lib.rs | ||
| prelude.rs | ||
| sentry.rs | ||