-
Notifications
You must be signed in to change notification settings - Fork 25.2k
Test upgrading to the default distribution #30431
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
Conversation
Adds scenarios to the rolling restart and full cluster restart upgrade test cases to test case involving the default distribution that we believe will be fairly common. Before this we'd just test upgrading from the OSS distribution to the OSS distribution. Now we'll test `OSS -> OSS` and `Default -> Default`, and, if the version we're upgrading from is *before* x-pack was part of the default distribution, then we'll also test `OSS -> Default` because we believe that'll be somewhat more common. In fact, we believe that this is the only time when it'll be common to significantly change the configuration of Elasticsearch *and* upgrade at the same time. Such upgrades come with extra risk because you are changing two things at once so we want to be super, mega, ultra sure that we test it.
I've opened this as a WIP because I'd like to get CI running on it. I have to step away for a bit but I'll come back and self review before removing the label. |
Pinging @elastic/es-core-infra |
I believe this is ready for review now. |
I'm apprehensive about doubling the number of tests run for full cluster and rolling restart. When we had discussed testing of OSS vs default distributions before, we had agreed to adding a flag to the build which would mean "run qa with oss build" and have the default be the default distribution. Right now, the qa tests override the default explicitly to use the oss distribution. I think if we update this to use the default distribution (by default) then we automatically get this testing. Then with the flag controlling using oss, we would have another CI job which sets this flag to test oss only. |
It triples sometimes.
We wouldn't get the I don't like the additional build time either but I don't know what to do about it that doesn't make me feel terrible. |
Why wouldn't we? 6.3.0 would be default, 6.2.0 would be oss (as it must be, as there was no distribution including xpack there). |
Ah! I see now. I'd confused myself. zip and oss-zip are the same for the pre-6.3 stuff which makes sense. Then we're missing upgrading x-pack basic to the default distribution. We kind of have it in That still leaves us with the doubling of test runs. I'm happy to do whatever you think is right for the |
So it has been a few days and I still think this is a blocker for 6.3 so we should talk this through. What I've proposed lets you opt in to OSS or default upgrades and by default will run both. We can use it to parallelize bwc testing if we'd like. And it doesn't make the OSS distribution into a second class citizen. |
I talked to @rjernst on Friday and we came up with something that makes us both happy. It is basically what he wanted all along but I didn't understand. I'm going to test it locally and close this PR when I open a working one for the new solution. |
I'm closing this in favor of #30591. |
Adds scenarios to the rolling restart and full cluster restart upgrade
test cases to test case involving the default distribution that we
believe will be fairly common. Before this we'd just test upgrading from
the OSS distribution to the OSS distribution. Now we'll test
OSS -> OSS
andDefault -> Default
, and, if the version we'reupgrading from is before x-pack was part of the default distribution,
then we'll also test
OSS -> Default
because we believe that'll besomewhat more common. In fact, we believe that this is the only time
when it'll be common to significantly change the configuration of
Elasticsearch and upgrade at the same time. Such upgrades come with
extra risk because you are changing two things at once so we want to be
super, mega, ultra sure that we test it.