bee
bee copied to clipboard
pushsync improvments
- shallow receipt check should be moved to pushsync (and removed from the pusher). When a shallow receipt is received, pushsync should retry. For light node, in the case that pushsync returns topology.ErrNotFound, if a shallow receipt was received previously, then no error should be returned. For full nodes, if pushsync runs out of peers, it returns errWantSelf (if no receipt was received previously).
- in pushsync, a peer should be added to the global skiplist ONLY on error (including shallow receipts). A temporary skiplist per request should be kept to prevent the request from going to the same peer on retries (similar to how the retrieval protocol does it).
closes https://github.com/ethersphere/bee/issues/4683