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(spanner): attempt DirectPath by default #3516

Merged
merged 5 commits into from Jan 14, 2021

Conversation

@mohanli-ml
Copy link
Contributor

@mohanli-ml mohanli-ml commented Jan 8, 2021

Update client to attempt DirectPath by default.

Note that it doesn't mean that after this change client will just use DirectPath, but will call the DirectPath codepath by default.

The actually enablement of DirectPath is controlled by service owner via ACL config. For now, after this change, although all users will attempt DirectPath, but they will all just fallback to the original CFE path.

Copy link
Collaborator

@tbpg tbpg left a comment

Would this have latency implications for users who don't have access to DirecPath?

Loading

@mohanli-ml
Copy link
Contributor Author

@mohanli-ml mohanli-ml commented Jan 11, 2021

Not sure I 100% understand the question:

  1. If the user's client library version is old and client does not attempt DirectPath, then the user will directly use CFE, which is what it currently is.
  2. If the user's client attempt DirectPath (after this PR gets merged), the request will be checked by ACLs set at grpclb. For now there is no Allow ALCs, so traffic will fallback to CFE, and the latency will be sending a RPC request to the grpclb, and waiting for the response. The latency can be affected by many factors, such as if the client and grpclb are in the same cell, but normally it should be at the level of sub milliseconds. In the worst case, however, the client may wait up to 10 seconds for the response.

Loading

@tbpg
Copy link
Collaborator

@tbpg tbpg commented Jan 13, 2021

I guess my question is if this will disrupt users without DirectPath access. Would their requests make an extra round trip? Is that something we should call out prominently in the changelog? I bring it up because users tend to care about network changes (we get issues pretty frequently about various network things).

I don't know -- this may have already been talked about. Up to @skuruppu.

Loading

@mohanli-ml
Copy link
Contributor Author

@mohanli-ml mohanli-ml commented Jan 13, 2021

Users without DirectPath access should not be disrupted. The traffic will fallback to CFE as what is currently is, and users are not supposed to know this.

Loading

tbpg
tbpg approved these changes Jan 13, 2021
Copy link
Collaborator

@tbpg tbpg left a comment

Got it. Thanks! Please wait for @skuruppu.

Loading

@skuruppu
Copy link
Contributor

@skuruppu skuruppu commented Jan 14, 2021

Loading

@gcf-merge-on-green
Copy link
Contributor

@gcf-merge-on-green gcf-merge-on-green bot commented Jan 14, 2021

Merge-on-green attempted to merge your PR for 6 hours, but it was not mergeable because either one of your required status checks failed, one of your required reviews was not approved, or there is a do not merge label. Learn more about your required status checks here: https://help.github.com/en/github/administering-a-repository/enabling-required-status-checks. You can remove and reapply the label to re-run the bot.

Loading

@tbpg tbpg added the automerge label Jan 14, 2021
@gcf-merge-on-green gcf-merge-on-green bot merged commit bbc61ed into googleapis:master Jan 14, 2021
3 checks passed
Loading
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

3 participants