Skip to content

Store raw pattern text fields in binary doc values#140191

Merged
Kubik42 merged 8 commits intoelastic:mainfrom
Kubik42:pattern-text-binary-doc-values
Jan 15, 2026
Merged

Store raw pattern text fields in binary doc values#140191
Kubik42 merged 8 commits intoelastic:mainfrom
Kubik42:pattern-text-binary-doc-values

Conversation

@Kubik42
Copy link
Copy Markdown
Contributor

@Kubik42 Kubik42 commented Jan 5, 2026

@elasticsearchmachine
Copy link
Copy Markdown
Collaborator

Hi @Kubik42, I've created a changelog YAML for you.

@Kubik42 Kubik42 force-pushed the pattern-text-binary-doc-values branch 3 times, most recently from 0e9ff30 to ba79a47 Compare January 6, 2026 17:34
@elasticsearchmachine
Copy link
Copy Markdown
Collaborator

Hi @Kubik42, I've created a changelog YAML for you.

@Kubik42 Kubik42 force-pushed the pattern-text-binary-doc-values branch 6 times, most recently from 897ebc1 to 90697ab Compare January 13, 2026 17:53
@Kubik42 Kubik42 marked this pull request as ready for review January 13, 2026 19:32
@elasticsearchmachine
Copy link
Copy Markdown
Collaborator

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

@elasticsearchmachine
Copy link
Copy Markdown
Collaborator

Hi @Kubik42, I've created a changelog YAML for you.

Copy link
Copy Markdown
Contributor

@parkertimmins parkertimmins left a comment

Choose a reason for hiding this comment

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

Looks really good overall! Just a few comments.

@Kubik42 Kubik42 force-pushed the pattern-text-binary-doc-values branch from 55cc672 to 50d2a23 Compare January 14, 2026 19:20
@Kubik42 Kubik42 force-pushed the pattern-text-binary-doc-values branch 3 times, most recently from 4bcf941 to 2c6bb56 Compare January 15, 2026 00:40
Copy link
Copy Markdown
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.

Left minor comments, LGTM otherwise.


public class PatternTextRollingUpgradeIT extends AbstractStringTypeLogsdbRollingUpgradeTestCase {

private static final String MIN_VERSION = "gte_v9.2.0";
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Shouldn't this be gte_v9.3.0? But maybe we should use a cluster feature instead?

Copy link
Copy Markdown
Contributor Author

@Kubik42 Kubik42 Jan 15, 2026

Choose a reason for hiding this comment

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

I used the same version as in the existing rolling upgrade test.

Would cluster feature make a big difference? The feature check is the same function call for both version and specific feature isn't it?

…used

# Conflicts:
#	rest-api-spec/build.gradle
#	server/src/test/java/org/elasticsearch/index/mapper/blockloader/TextFieldBlockLoaderTests.java
#	test/framework/src/main/java/org/elasticsearch/index/mapper/BlockLoaderTestCase.java
# Conflicts:
#	libs/swisshash/src/main/java/module-info.java
#	x-pack/plugin/logsdb/qa/rolling-upgrade/src/javaRestTest/java/org/elasticsearch/xpack/logsdb/KeywordRollingUpgradeIT.java
# Conflicts:
#	server/src/main/java/org/elasticsearch/index/IndexVersions.java
#	server/src/main/java/org/elasticsearch/index/mapper/MultiValuedBinaryDocValuesField.java
#	server/src/main/java/org/elasticsearch/index/mapper/TextFieldMapper.java

# Conflicts:
#	server/src/main/java/org/elasticsearch/index/IndexVersions.java
# Conflicts:
#	server/src/main/java/org/elasticsearch/index/IndexVersions.java

# Conflicts:
#	server/src/main/java/org/elasticsearch/index/IndexVersions.java

# Conflicts:
#	server/src/main/java/org/elasticsearch/index/IndexVersions.java
@Kubik42 Kubik42 force-pushed the pattern-text-binary-doc-values branch from 2c6bb56 to 56d60ca Compare January 15, 2026 20:15
@Kubik42 Kubik42 merged commit 9923fe9 into elastic:main Jan 15, 2026
34 of 35 checks passed
@Kubik42 Kubik42 deleted the pattern-text-binary-doc-values branch January 15, 2026 23:06
spinscale pushed a commit to spinscale/elasticsearch that referenced this pull request Jan 21, 2026
* Use stored fallback fields when time series doc values format is not used

# Conflicts:
#	rest-api-spec/build.gradle
#	server/src/test/java/org/elasticsearch/index/mapper/blockloader/TextFieldBlockLoaderTests.java
#	test/framework/src/main/java/org/elasticsearch/index/mapper/BlockLoaderTestCase.java

* testing

* Migrate TextRollingUpgradeIT to run in serverless

# Conflicts:
#	libs/swisshash/src/main/java/module-info.java
#	x-pack/plugin/logsdb/qa/rolling-upgrade/src/javaRestTest/java/org/elasticsearch/xpack/logsdb/KeywordRollingUpgradeIT.java

* Store fallback text fields in binary doc values

# Conflicts:
#	server/src/main/java/org/elasticsearch/index/IndexVersions.java
#	server/src/main/java/org/elasticsearch/index/mapper/MultiValuedBinaryDocValuesField.java
#	server/src/main/java/org/elasticsearch/index/mapper/TextFieldMapper.java

# Conflicts:
#	server/src/main/java/org/elasticsearch/index/IndexVersions.java

* Store fallback match only text fields in binary doc values

* Use binary doc values instead of stored fields for pattern text

# Conflicts:
#	server/src/main/java/org/elasticsearch/index/IndexVersions.java

# Conflicts:
#	server/src/main/java/org/elasticsearch/index/IndexVersions.java

# Conflicts:
#	server/src/main/java/org/elasticsearch/index/IndexVersions.java

* Renamed usesBinaryDocValues to be more clear what its used for

* Use simple BinaryDocValues
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.

4 participants