Skip to content

Run 25_id_generation with and without synthetic id#142770

Merged
burqen merged 4 commits intoelastic:mainfrom
burqen:ap/2026.02.20-synthetic-id-yml-hard-coded-ids
Feb 24, 2026
Merged

Run 25_id_generation with and without synthetic id#142770
burqen merged 4 commits intoelastic:mainfrom
burqen:ap/2026.02.20-synthetic-id-yml-hard-coded-ids

Conversation

@burqen
Copy link
Copy Markdown
Contributor

@burqen burqen commented Feb 20, 2026

Intention is to

  • make tsdb/25_id_generation.yml not fail when enabling index.mapping.synthetic_id by default
  • run the tests from tsdb/25_id_generation.yml both with and without index.mapping.synthetic_id

tsdb/25_id_generation.yml has a lot of hard coded ids. When enabling index.mapping.synthetic_id, the id generation changes and those hard coded ids are no longer valid. We completely skip 25_id_generation if cluster has synthetic id feature.

If the cluster has synthetic id feature we run both and 26_id_generation_synthetic_id_false and 27_id_generation_synthetic_id_true. Both of which are copies of 25_id_generation but with synthetic_id explicitly set to false/true. In 27_id_generation_synthetic_id_true, the ids are updated to fit the new synthetic ids.

Add the feature flag to ClientYamlTestSuiteIT.

Add 25_id_generation_synthetic_id.yml as copy of 25_id_generation.yml
but with index.mapping.synthetic_id=true and updated expected id value.

Add synthetic id feature flag to ClientYamlTestSuiteIT

Harden 25_id_generation.yml to use synthetic_id=false
@burqen burqen added >test Issues or PRs that are addressing/adding tests :StorageEngine/TSDB You know, for Metrics v9.4.0 labels Feb 20, 2026
@elasticsearchmachine
Copy link
Copy Markdown
Collaborator

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

@burqen burqen requested review from fcofdez and tlrx February 20, 2026 15:47
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

I have no idea if the number in the file name has any significance. Will look into it.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

The number is significant because it affect the order of the tests. They are ordered before being shuffled for predictability. Will rename this to 26_ instead.
https://github.com/elastic/elasticsearch/blob/main/test/yaml-rest-runner/src/main/java/org/elasticsearch/test/rest/yaml/ESClientYamlSuiteTestCase.java#L337

Because tsdb/25_id_generation also runs in mixed and backwards
compatible cluster we cannot use synthetic_id setting at all unless the
cluster has cluster_features: "index.time_series_synthetic_id".

Introduce tsdb/26_id_generation_synthetic_id_false that specifically set
 the setting to false and otherwise keep the behaviour from
 25_generation_id.

26_id_generation_synthetic_id.yml is renamed to
27_id_generation_synthetic_id_true.yml

TL;DR:
Version <9.4 run 25_id_generation.yml
Version >=9.4 run 26_id_generation_synthetic_id_synthetic_false.yml and
27_id_generation_synthetic_id_true.yml
Copy link
Copy Markdown
Member

@tlrx tlrx left a comment

Choose a reason for hiding this comment

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

LGTM

Copy link
Copy Markdown
Contributor

@fcofdez fcofdez left a comment

Choose a reason for hiding this comment

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

LGTM

@burqen burqen merged commit 4490219 into elastic:main Feb 24, 2026
35 checks passed
sidosera pushed a commit to sidosera/elasticsearch that referenced this pull request Feb 24, 2026
* Run 25_id_generation with and without synthetic id

Add 25_id_generation_synthetic_id.yml as copy of 25_id_generation.yml
but with index.mapping.synthetic_id=true and updated expected id value.

Add synthetic id feature flag to ClientYamlTestSuiteIT

Harden 25_id_generation.yml to use synthetic_id=false

* Rename 25_id_generation_synthetic_id -> 26_id_...

* yaml tsdb/25_id_generation backwards compatible

Because tsdb/25_id_generation also runs in mixed and backwards
compatible cluster we cannot use synthetic_id setting at all unless the
cluster has cluster_features: "index.time_series_synthetic_id".

Introduce tsdb/26_id_generation_synthetic_id_false that specifically set
 the setting to false and otherwise keep the behaviour from
 25_generation_id.

26_id_generation_synthetic_id.yml is renamed to
27_id_generation_synthetic_id_true.yml

TL;DR:
Version <9.4 run 25_id_generation.yml
Version >=9.4 run 26_id_generation_synthetic_id_synthetic_false.yml and
27_id_generation_synthetic_id_true.yml
szybia added a commit to szybia/elasticsearch that referenced this pull request Feb 24, 2026
…on-sliced-reindex

* upstream/main:
  Activity logging improvements (elastic#142901)
  Fix serialization of NodeGpuStatsResponse when no GPU is present (elastic#142937)
  Add doc on master elections in DistributedArchitectureGuide (elastic#142435)
  ESQL: Account for missing StubRelation due to SurrogateExpressions replacement (elastic#142882)
  Add BulkByScrollTask Serialization Tests (elastic#142697)
  Rebalance CI test partitions to reduce Part3 bottleneck (elastic#142930)
  Mute org.elasticsearch.xpack.esql.qa.multi_node.EsqlClientYamlIT test {p0=esql/40_tsdb/to_aggregate_metric_double with multi_values} elastic#142964
  Bump OpenTelemetry dependencies (elastic#142323)
  SQL: add support for API key to JDBC and CLI (elastic#142021)
  Ensure requested capability exists (elastic#142695)
  Warn and fall back to local branches.json (elastic#142606)
  [CI] Mute testWithFetchFailures, testAddCompletionListenerScheduleErr… (elastic#142926)
  ESQL: Add support for ORC file format (elastic#142900)
  Update wolfi (versioned) (elastic#142948)
  Add BulkByScrollResponse Serialization Tests (elastic#142688)
  Run 25_id_generation with and without synthetic id (elastic#142770)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

:StorageEngine/TSDB You know, for Metrics Team:StorageEngine >test Issues or PRs that are addressing/adding tests v9.4.0

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants