Skip to content
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

clay: print download progress for desk updates #6873

Draft
wants to merge 20 commits into
base: develop
Choose a base branch
from
Draft

Conversation

yosoyubik
Copy link
Contributor

@yosoyubik yosoyubik commented Dec 10, 2023

WIP
rate

(Note: possible alternative version of #6867; instead of scrying the rate out of %ames we rely on %ames notifying any subscribers for a %keen—In this case %clay, which will just send the %rate %gift to %kiln. Leaving as a draft so we can compare what approach is more ergonomic and also to consider a better UI for displaying the progress)

This connects %hood to the console and, although not currently
used, adds the sole-id to %kiln, for possible later use in printing
more fine-grained information about desks' state. Another option
could be to have a separate console-enabled agent that manages
any information that needs to be printed, and then %kiln or the
related strandio threads can just poke it (this will possible end up
recreating the state stored in %kiln)
@yosoyubik
Copy link
Contributor Author

rate-2

This connects %hood to the console and, although not currently
used, adds the sole-id to %kiln, for possible later use in printing
more fine-grained information about desks' state. Another option
could be to have a separate console-enabled agent that manages
any information that needs to be printed, and then %kiln or the
related strandio threads can just poke it (this will possible end up
recreating the state stored in %kiln)

This let us download date that takes longer than the ~m5
scry-timeout using %fine, and not falling back to %ames
Currently this only supports the view of how many paths are in flight.
The facilities for knowing the the size of any/all paths in the desk are
in place but are still a work in progress.

There is also a thread (-whit) that calculates the size of data at a path
based on the number of fragments and the size of each, as sent by the
publisher.
@yosoyubik
Copy link
Contributor Author

rate-all

Currently this only supports the view of how many paths are in flight.
The facilities for knowing the the size of any/all paths in the desk are
in place but are still a work in progress.

There is also a thread (-whit) that calculates the size of data at a path
based on the number of fragments and the size of each, as sent by the
publisher.

@yosoyubik
Copy link
Contributor Author

demo of usage of global progress rate:

rate-size

@yosoyubik
Copy link
Contributor Author

yosoyubik commented Dec 21, 2023

Bandwidth demo:

rate-bar

@jalehman
Copy link
Member

This is really great work! A thought that comes to mind:

Having this in the dojo as toggle-able behavior is desirable. It'll also be the case that many applications that eventually leverage fine for pulling content from other nodes will also want to be able to display download bandwidth/progress.

Providing documentation on how it works as a guide in the docs should accompany its release.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants