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

distsql: ensure backward compatibility during upgrade #17277

Closed
RaduBerinde opened this issue Jul 28, 2017 · 5 comments
Closed

distsql: ensure backward compatibility during upgrade #17277

RaduBerinde opened this issue Jul 28, 2017 · 5 comments
Assignees
Labels
C-enhancement Solution expected to add code/behavior + preserve backward-compat (pg compat issues are exception) S-2-temp-unavailability Temp crashes or other availability problems. Can be worked around or resolved by restarting.
Milestone

Comments

@RaduBerinde
Copy link
Member

The RFC in #16977 describes a mechanism for upgrade without downtime. DistSQL went through some backward incompatible changes; we need to go back through them and fix distsqlrun to provide backward-compatibility, as well as gate use of new features in the planner.

CC @spencerkimball

@RaduBerinde RaduBerinde added this to the 1.1 milestone Jul 28, 2017
@RaduBerinde
Copy link
Member Author

An alternative is to get the changes to tolerate SetupFlow failures by rescheduling the flow on the gateway (#15637). However this is not ideal because during upgrade DistSQL queries might run on a small number of nodes - in the worst case, if 1 node is upgraded, any queries processed by that node will run all the flows on that same node - causing potential query regressions (in terms of how long they take to run, or even if they run at all due to memory usage).

@cuongdo
Copy link
Contributor

cuongdo commented Aug 22, 2017

@RaduBerinde please triage

@RaduBerinde
Copy link
Member Author

Andrei is handling this, PR #17497

@andreimatei
Copy link
Contributor

We're now not planning DistSQL flows on nodes that are running an incompatible version. This should be good for now; I'll defer the fallback stuff for later since it proved to not be so easy.

@andreimatei andreimatei modified the milestones: Later, 1.1 Aug 24, 2017
@knz knz added C-enhancement Solution expected to add code/behavior + preserve backward-compat (pg compat issues are exception) S-2-temp-unavailability Temp crashes or other availability problems. Can be worked around or resolved by restarting. labels Apr 27, 2018
@jordanlewis
Copy link
Member

I think the solution we have in place is already good enough.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-enhancement Solution expected to add code/behavior + preserve backward-compat (pg compat issues are exception) S-2-temp-unavailability Temp crashes or other availability problems. Can be worked around or resolved by restarting.
Projects
None yet
Development

No branches or pull requests

5 participants