Skip to content

Conversation

@Kubik42
Copy link
Contributor

@Kubik42 Kubik42 commented Jan 20, 2026

Parametrized tests reuse the cluster defined in the parent class. This means that every test case beyond the first doesn't actually perform a rolling upgrade, but rather starts from an upgraded state.

This PR addresses that. It removes @ParameterFactory and replaces it with getTemplates(). The parent class calls getTemplates() to perform indexing and verifications for each template at every stage of the test. In other words, templates are all tested against an old cluster, then a mixed cluster, and finally an upgraded cluster.

Furthermore, to prevent issues like this from happening again, I've added a cluster version check into the @Before call.

…ametrized tests not performing a rolling upgrade
@Kubik42 Kubik42 force-pushed the rolling-upgrade-serverless-tests-bug-fix branch from 4a49c2a to 0f7ad85 Compare January 20, 2026 23:35
@Kubik42 Kubik42 marked this pull request as ready for review January 21, 2026 00:40
@elasticsearchmachine
Copy link
Collaborator

Pinging @elastic/es-storage-engine (Team:StorageEngine)

Copy link
Member

@martijnvg martijnvg left a comment

Choose a reason for hiding this comment

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

LGTM 👍 I just think we need to make a modification to make this work for serverless CI.

@Kubik42 Kubik42 force-pushed the rolling-upgrade-serverless-tests-bug-fix branch from 4834d21 to 4176457 Compare January 21, 2026 15:15
@Kubik42 Kubik42 force-pushed the rolling-upgrade-serverless-tests-bug-fix branch from 9f7f099 to 3fa836e Compare January 21, 2026 15:24
@Kubik42 Kubik42 enabled auto-merge (squash) January 21, 2026 17:32
@Kubik42 Kubik42 disabled auto-merge January 21, 2026 17:32
@Kubik42 Kubik42 merged commit de093d4 into elastic:main Jan 21, 2026
34 of 35 checks passed
@Kubik42 Kubik42 deleted the rolling-upgrade-serverless-tests-bug-fix branch January 21, 2026 17:32
szybia added a commit to szybia/elasticsearch that referenced this pull request Jan 21, 2026
…-tests

* upstream/main: (104 commits)
  Partition time-series source (elastic#140475)
  Mute org.elasticsearch.xpack.esql.heap_attack.HeapAttackSubqueryIT testManyRandomKeywordFieldsInSubqueryIntermediateResultsWithSortManyFields elastic#141083
  Reindex relocation: skip nodes marked for shutdown (elastic#141044)
  Make fails on fixture caching not fail image building (elastic#140959)
  Add multi-project tests for get and list reindex (elastic#140980)
  Painless docs overhaul (reference) (elastic#137211)
  Panama vector implementation of codePointCount (elastic#140693)
  Enable PromQL in release builds (elastic#140808)
  Update rest-api-spec for Jina embedding task (elastic#140696)
  [CI] ShardSearchPhaseAPMMetricsTests testUniformCanMatchMetricAttributesWhenPlentyOfDocumentsInIndex failed (elastic#140848)
  Combine hash computation with bloom filter writes/reads (elastic#140969)
  Refactor posting iterators to provide more information (elastic#141058)
  Wait for cluster to recover to yellow before checking index health (elastic#141057) (elastic#141065)
  Fix repo analysis read count assertions (elastic#140994)
  Fixed a bug in logsdb rolling upgrade sereverless tests involving par… (elastic#141022)
  Fix readiness edge case on startup (elastic#140791)
  PromQL: fix quantile function (elastic#141033)
  ignore `mmr` command for check (in development) (elastic#140981)
  Use Double.compare to compare doubles in tdigest.Sort (elastic#141049)
  Migrate third party module tests using legacy test clusters framework (elastic#140991)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants