You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Mirza Aliev (Jira)" <ji...@apache.org> on 2023/03/03 14:15:00 UTC
[jira] [Updated] (IGNITE-18954) Design a language for parsing of a filter expression
[ https://issues.apache.org/jira/browse/IGNITE-18954?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Mirza Aliev updated IGNITE-18954:
---------------------------------
Description:
{*}Motivation{*}:
We need to parse and be able to use filters, that user set for the distribution zone
*Definition of done:*
* Filters are parsed and it is possible to filter arbitrary set of attributes
* Validator is implemented, so we can validate a string representation of a filter expression
*Implementation details:*
Language must allow to perform simple operations, like
* “ “ – default empty filter, means that all nodes match
* () expressions with parentheses
* “A” && “B”, () && ()
* “A” || “B”, () || ()
* !“A”, !()
Attributes representation must look like key -> value pairs, like
{noformat}
(region = EU || region = US) && (storage != HDD || storage = SSD)
{noformat}
was:
{*}Motivation{*}:
We need to parse and be able to use filters, that user set for the distribution zone
*Definition of done:*
* Filters are parsed and it is possible to filter arbitrary set of attributes
*Implementation details:*
Language must allow to perform simple operations, like
* “ “ – default empty filter, means that all nodes match
* () expressions with parentheses
* “A” && “B”, () && ()
* “A” || “B”, () || ()
* !“A”, !()
Attributes representation must look like key -> value pairs, like
{noformat}
(region = EU || region = US) && (storage != HDD || storage = SSD)
{noformat}
> Design a language for parsing of a filter expression
> ----------------------------------------------------
>
> Key: IGNITE-18954
> URL: https://issues.apache.org/jira/browse/IGNITE-18954
> Project: Ignite
> Issue Type: Improvement
> Reporter: Mirza Aliev
> Priority: Major
> Labels: ignite-3
>
> {*}Motivation{*}:
> We need to parse and be able to use filters, that user set for the distribution zone
> *Definition of done:*
>
> * Filters are parsed and it is possible to filter arbitrary set of attributes
> * Validator is implemented, so we can validate a string representation of a filter expression
> *Implementation details:*
> Language must allow to perform simple operations, like
> * “ “ – default empty filter, means that all nodes match
> * () expressions with parentheses
> * “A” && “B”, () && ()
> * “A” || “B”, () || ()
> * !“A”, !()
> Attributes representation must look like key -> value pairs, like
> {noformat}
> (region = EU || region = US) && (storage != HDD || storage = SSD)
> {noformat}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)