Process inv with mixed item types #1768
Labels
A-rust
Area: Updates to Rust code
C-bug
Category: This is a bug
C-cleanup
Category: This is a cleanup
C-enhancement
Category: This is an improvement
Projects
Work In Progress
Is your feature request related to a problem?
Some of my mainnet and testnet Zebra instances occasionally log messages like:
Describe the solution you'd like
Process inventory (
inv
) messages with mixed item types by splitting them into an internal ZebraResponse
for each type of item:peer_rx
stream inHandshake
, before the inventory collector runs on the streamInv
messages byInventoryHash
typeInv
messages into a series of single block messagesCleanup the handshake code (this should be a separate PR):
peer_rx
closures into separate functionshandshake
, and move them to that fileconnection
explaining thatHandshake
setup also changes connection messagesThis will be easier when we upgrade to the latest tower and tokio (#2200), because they implement more trait bounds like Sync and Send.
Describe alternatives you've considered
inv
with mixed item types, and continue logging warningsAdditional context
I don't know if we need these messages for normal operation - we might be missing out on some gossiped blocks or transactions, or we might be missing out on some responses that were merged into the same
inv
message.This is a low priority, until it actually affects Zebra, or the messages become much more frequent.
The text was updated successfully, but these errors were encountered: