-
Notifications
You must be signed in to change notification settings - Fork 24.9k
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
EQL: Add support for existing functions #51556
Comments
Pinging @elastic/es-search (:Search/EQL) |
I have updated the initial description with check boxes, as we go through the functions once #53688 gets merged, we should mark them as done and indicate the relevant ticket. I think the string functions are the first ones to be addressed as they are widely used. The operators one can be easily promoted into functions and so I would do them last as there is a workaround for them. |
Looks like this can be closed, with #54568 as a follow-up. |
We need to add support for the subset of functions that EQL supports. Some of these may already exist from SQL, and we may need to create additional ones.
The full list is below:
elasticsearch/x-pack/plugin/eql/src/main/java/org/elasticsearch/xpack/eql/parser/EqlParser.java
Lines 134 to 153 in 6f1890b
Math functions were created before EQL had math operators. These should be easy to do, and can probably be done together
(number, number) -> number
EQL: implement math functions: add, divide, module, multiply, subtract #54846(number, number) -> number
EQL: implement math functions: add, divide, module, multiply, subtract #54846(number, number) -> number
EQL: implement math functions: add, divide, module, multiply, subtract #54846(number, number) -> number
EQL: implement math functions: add, divide, module, multiply, subtract #54846(number, number) -> number
EQL: implement math functions: add, divide, module, multiply, subtract #54846Tracking remaining functions to be implemented
(str, str, str [, bool, bool]) -> str
EQL: implement between function #54135(ip, static cidr, ...) -> bool
(convert to IP field match) EQL: implement cidrMatch function #54132(object, ...) -> str
EQL: implement concat function #55185(str, str) -> bool
EQL: implement endsWith function #53854(str, str [, int]) -> int|null
EQL: implement indexOf function #53856(str | array) -> int
EQL: implement length function #53853(str, static str, ...) -> bool
EQL: Add match function implementation #55182(str, [int]) -> number
EQL: implement number function #54471(str, str) -> bool
EQL: implement startsWith function #53855(object) -> str
EQL: Add string function #54470(str, str) -> bool
EQL: implement stringContains function #54136(str, int [, int]) -> str)
(we may need to adjust for EQL's zero and negative-indexing into strings)EQL: Add Substring function with Python semantics #53688(str, static str, ...) -> bool
(convert to Likes) -EQL: Convert wildcards to LIKE in analyzer #51901and EQL: Add wildcard function #54020The text was updated successfully, but these errors were encountered: