filecoin-station / spark

💥 Storage Provider Retrieval Checker as a Filecoin Station Module 🛰️
https://filspark.com
Other
9 stars 2 forks source link

add a client side max duration timeout #99

Open BigLep opened 1 hour ago

BigLep commented 1 hour ago

This is coming out of timeout discussion in https://www.notion.so/protocollabs/Spark-Request-Based-Non-Committee-Global-Retrieval-Success-Rate-4c5e8c47c45f467f80392d00cac2aae4#cb14139c56b2457c9bdd750503f41b51

The reason for doing this is partly to protect clients from keeping too many requests open and to prevent SPs being able to go into "ghost mode" where they don’t get any retrieval results reported, regardless if they actually are or aren’t retrievable. They accomplish this by keeping retrieval connections open for longer than the round by making a “byte of progress every 60 seconds”. This is because Spark checkers currently only have a “progress timeout”, not a “max request duration” timeout.

BigLep commented 1 hour ago

I created this issue because I wanted to resolve this comment which had been open for over a week: https://www.notion.so/Spark-Request-Based-Non-Committee-Global-Retrieval-Success-Rate-4c5e8c47c45f467f80392d00cac2aae4?d=128837df73d480b3b108001cc60c9eb7&pvs=4#6ad4d22cf1ff4cae9458c8e9db526469