You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
IPLD can hang if the data is requested for the second time and it is not yet stored.
Steps to reproduce:
Request shares by namespaces for the first time. The data has not been stored before, so we fall to the IPLD getter and request it through the bitswap;
Request the same shares one more time. This time, we can expect to get the data from the store directly. If the data has not been stored yet, then we are falling to the IPLD getter and it hangs.
Hmmm. The deeper issue here seems to be that IPLD is hanging on the second time (if we give store long enough to store, it gets from StoreGetter)
Our ideas here are:
Bitswap peers maybe have an anti-spam mechanism where the same block will not be served twice to the same peer, which is fine, but:
These blocks should be cached on the blockstore level and not actually rerequested from the network. This makes it seem like the caching mechanism from IPLD retrieval isn't actually working.
Can confirm that even when a full node is retrieving data over IPLD, Put is not being called on our blockstore, so nothing is even being inserted into the cache atm. Still unclear whether this is a swamp quirk or not
IPLD can hang if the data is requested for the second time and it is not yet stored.
Steps to reproduce:
was found during running blob module test #2909
The text was updated successfully, but these errors were encountered: