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

feat: add experimental optimistic provide #9753

Merged
merged 2 commits into from
Apr 6, 2023
Merged

Conversation

guseggert
Copy link
Contributor

@guseggert guseggert commented Mar 25, 2023

This adds the ability to enable "optimistic provide" to the default
DHT client, which enables faster provides and reprovides.

For more information about optimistic provide, see:

https://protocollabs.notion.site/Optimistic-Provide-2c79745820fa45649d48de038516b814

Note that this feature only works when using non-custom router
types. This does not include the ability to enable optimistic provide
on custom routers for now, to minimize the footprint of this
experimental feature. We intend on continuing to test this and improve
the UX, which may or may not involve adding configuration for it to
custom routers. We also plan on refactoring/redesigning custom routers
more broadly so I don't want this to add more effort for maintainers
and confusion for users.

@guseggert guseggert force-pushed the feat/optimistic-provide branch 2 times, most recently from 296ed70 to 892ed83 Compare March 25, 2023 01:12
@guseggert guseggert self-assigned this Mar 25, 2023
@guseggert guseggert force-pushed the feat/optimistic-provide branch 6 times, most recently from d730530 to b895119 Compare April 5, 2023 12:06
@guseggert guseggert changed the title feat: add optimistic provide feat: add experimental optimistic provide Apr 5, 2023
@guseggert guseggert force-pushed the feat/optimistic-provide branch 2 times, most recently from 5857021 to a455c98 Compare April 5, 2023 12:17
@guseggert guseggert marked this pull request as ready for review April 5, 2023 12:27
@guseggert guseggert requested a review from Jorropo April 5, 2023 12:29
@guseggert guseggert marked this pull request as draft April 5, 2023 12:30
@guseggert
Copy link
Contributor Author

This needs docs in docs/experimental-features.md and a changelog entry

@BigLep BigLep mentioned this pull request Apr 6, 2023
@guseggert guseggert marked this pull request as ready for review April 6, 2023 14:51
Copy link
Contributor

@BigLep BigLep left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Aprovig because:

  1. Logically the changes made sense to me.
  2. This is an experimental feature
  3. The docs looked fine
  4. I know others have looked at this too

@BigLep
Copy link
Contributor

BigLep commented Apr 6, 2023

A few other thoughts:

  1. I assume you'll add to the changelog in docs: preparing 0.20 changelog for release #9799
  2. Are there other issues or PR's we should link to (e.g., Optimistic Provide libp2p/go-libp2p-kad-dht#783 )
  3. Also, in the experimental feature docs maybe get links to more info like https://protocollabs.notion.site/Optimistic-Provide-2c79745820fa45649d48de038516b814 and DHT Optimistic Provide libp2p/notes#25

@guseggert guseggert force-pushed the feat/optimistic-provide branch 2 times, most recently from befd39f to c580cda Compare April 6, 2023 20:44
This adds the ability to enable "optimistic provide" to the default
DHT client, which enables faster provides and reprovides.

For more information about optimistic provide, see:

https://protocollabs.notion.site/Optimistic-Provide-2c79745820fa45649d48de038516b814

Note that this feature only works when using non-custom router
types. This does not include the ability to enable optimistic provide
on custom routers for now, to minimize the footprint of this
experimental feature. We intend on continuing to test this and improve
the UX, which may or may not involve adding configuration for it to
custom routers. We also plan on refactoring/redesigning custom routers
more broadly so I don't want this to add more effort for maintainers
and confusion for users.
@guseggert guseggert merged commit cb2e109 into master Apr 6, 2023
@guseggert guseggert deleted the feat/optimistic-provide branch April 6, 2023 20:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
No open projects
Archived in project
Development

Successfully merging this pull request may close these issues.

4 participants