-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add api for transfer diagnostics #7759
Conversation
Codecov Report
@@ Coverage Diff @@
## master #7759 +/- ##
==========================================
- Coverage 39.51% 39.40% -0.11%
==========================================
Files 654 654
Lines 70049 70170 +121
==========================================
- Hits 27678 27651 -27
- Misses 37615 37756 +141
- Partials 4756 4763 +7
Continue to review full report at Codecov.
|
go.mod
Outdated
@@ -66,7 +66,7 @@ require ( | |||
github.com/icza/backscanner v0.0.0-20210726202459-ac2ffc679f94 | |||
github.com/influxdata/influxdb1-client v0.0.0-20200827194710-b269163b24ab | |||
github.com/ipfs/bbloom v0.0.4 | |||
github.com/ipfs/go-bitswap v0.3.4 | |||
github.com/ipfs/go-bitswap v0.4.1-0.20211029155204-92d1e7aaf1dd |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should use a tagged version
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
blocked by the context thing
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
blocked on the darn context data store change -- there is no tagged version between 0.3.4 and the context change that includes the independent updates needed (tied to update go-peertaskqueue)
Add API + CLI for inspecting in depth diagnostics on graphsync transfers with a given peer
4e9566e
to
1078dff
Compare
Goals
We've done some work in data transfer and go-graphsync to expose detailed diagnostic information for what's going on with data transfers over graphsync.
This PR adds an API endpoint + CLI for accessing that information in Lotus.
Implementation
NewProviderDAGServiceDataTransfer
as this should have been renamed a while agoSample output of what this command produces (it's just JSON for now):
For Discussion
This is primarily to support Project Lightning and the test miner we run.
However, it maybe useful for other miners as well. That's why I'm actually PR'ing this.
BUT: while technically these methods are public on graphsync and data transfer, as you can see from the code they're public on some concrete types, and there's some forced casting here. That's cause they're not really "done" -- we expect them to change a few times over the next few months. So if we expose this in Lotus master, miners need to be aware they can expecting changing behavior over time.