Uh oh!
There was an error while loading. Please reload this page.
[fix](ES Catalog)Only like on keyword can be applied to wildcard query - #41176
Merged
Conversation
doris-robot
commented
Sep 23, 2024
Thank you for your contribution to Apache Doris. Since 2024-03-18, the Document has been moved to doris-website. |
qidaye
commented
Sep 23, 2024
ContributorAuthor
run buildall |
xiaokang
left a comment
Contributor
There was a problem hiding this comment.
Do you have a end to end testcase for text_field LIKE xxx ?
Uh oh!
There was an error while loading. Please reload this page.
qidaye
commented
Sep 25, 2024
ContributorAuthor
run buildall |
Contributor
PR approved by at least one committer and no changes requested. |
Contributor
PR approved by anyone and no changes requested. |
qidaye
commented
Sep 26, 2024
ContributorAuthor
run buildall |
qidayeforce-pushed
the
fix_es_catalog_like
branch
from
October 8, 2024 02:46
b20d14d to
97e5c2fCompareqidaye
commented
Oct 8, 2024
ContributorAuthor
run buildall |
We map `text` and `keyword` both to `string` type in Doris. When enable `like_push_down`, we translate like to wildcard query in ES, which will lead unexpected result in `text` field. We should stick to `keyword` with wildcard query. 1. Add `column2typeMap` in `EsTable` to save the mapping of column_name to ES field data type. 2. Add new class `EsSchemaCacheValue` to get schema and column to type map 2. Init `column2typeMap` when cache init and build query process of ES external table
2. Add end to end test case for like.
qidayeforce-pushed
the
fix_es_catalog_like
branch
from
November 5, 2024 07:18
97e5c2f to
e7dc509Compareqidaye
commented
Nov 5, 2024
ContributorAuthor
run buildall |
Contributor
PR approved by at least one committer and no changes requested. |
github-actionsBot
pushed a commit
that referenced
this pull request
Nov 7, 2024
#41176) ## Proposed changes We map `text` and `keyword` both to `string` type in Doris. When enable `like_push_down`, we translate like to wildcard query in ES, which will lead unexpected result in `text` field. We should stick to `keyword` with wildcard query. 1. Add `column2typeMap` in `EsTable` to save the mapping of column_name to ES field data type. 2. Add new class `EsSchemaCacheValue` to get schema and column to type map 3. Init `column2typeMap` when cache init and build query process of ES external table 4. Support LIKE functionCallExpr for Nereids planner. 5. Add end to end like predicate test cases and UTs
github-actionsBot
pushed a commit
that referenced
this pull request
Nov 7, 2024
#41176) ## Proposed changes We map `text` and `keyword` both to `string` type in Doris. When enable `like_push_down`, we translate like to wildcard query in ES, which will lead unexpected result in `text` field. We should stick to `keyword` with wildcard query. 1. Add `column2typeMap` in `EsTable` to save the mapping of column_name to ES field data type. 2. Add new class `EsSchemaCacheValue` to get schema and column to type map 3. Init `column2typeMap` when cache init and build query process of ES external table 4. Support LIKE functionCallExpr for Nereids planner. 5. Add end to end like predicate test cases and UTs
qidaye added a commit
to qidaye/incubator-doris
that referenced
this pull request
Nov 7, 2024
apache#41176) We map `text` and `keyword` both to `string` type in Doris. When enable `like_push_down`, we translate like to wildcard query in ES, which will lead unexpected result in `text` field. We should stick to `keyword` with wildcard query. 1. Add `column2typeMap` in `EsTable` to save the mapping of column_name to ES field data type. 2. Add new class `EsSchemaCacheValue` to get schema and column to type map 3. Init `column2typeMap` when cache init and build query process of ES external table 4. Support LIKE functionCallExpr for Nereids planner. 5. Add end to end like predicate test cases and UTs
airborne12 pushed a commit
that referenced
this pull request
Nov 8, 2024
HappenLee pushed a commit
to HappenLee/incubator-doris
that referenced
this pull request
Apr 24, 2026
apache#41176) ## Proposed changes We map `text` and `keyword` both to `string` type in Doris. When enable `like_push_down`, we translate like to wildcard query in ES, which will lead unexpected result in `text` field. We should stick to `keyword` with wildcard query. 1. Add `column2typeMap` in `EsTable` to save the mapping of column_name to ES field data type. 2. Add new class `EsSchemaCacheValue` to get schema and column to type map 3. Init `column2typeMap` when cache init and build query process of ES external table 4. Support LIKE functionCallExpr for Nereids planner. 5. Add end to end like predicate test cases and UTs
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for freeto join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Proposed changes
We map
textandkeywordboth tostringtype in Doris. When enablelike_push_down, we translate like to wildcard query in ES, which will lead unexpected result intextfield. We should stick tokeywordwith wildcard query.column2typeMapinEsTableto save the mapping of column_name to ES field data type.EsSchemaCacheValueto get schema and column to type mapcolumn2typeMapwhen cache init and build query process of ES external table