[jira] [Commented] (IGNITE-14914) Support in() clause in IndexQuery.

2022-08-17 Thread Taras Ledkov (Jira)


[ 
https://issues.apache.org/jira/browse/IGNITE-14914?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17580737#comment-17580737
 ] 

Taras Ledkov commented on IGNITE-14914:
---

[~timonin.maksim], the patch is OK with me.

> Support in() clause in IndexQuery.
> --
>
> Key: IGNITE-14914
> URL: https://issues.apache.org/jira/browse/IGNITE-14914
> Project: Ignite
>  Issue Type: New Feature
>Reporter: Maksim Timonin
>Assignee: Maksim Timonin
>Priority: Major
>  Labels: IEP-71, ise
> Fix For: 2.14
>
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> IndexQuery should support IN criterion:
> {{IndexQuery.setCriteria(in("A", Arrays.asList(1, 2 ,3)));}}
>  # IN criterion accepts collection of values to find. This collections is 
> transformed to {{SortedSet(1, 2, 3)}} because IndexQuery provides to user 
> sorted result.
>  # When IN applies on first indexed field - IN(A0, A1) for index (A, B) - it 
> converts to multiple {{eq}} operations are joint with OR operation: 
> {{{}EQ(A0) or EQ(A1){}}}.
>  # Other range criteria for other fields are applied to every such separate 
> operation:
> {{IN(A0, A1) and GT(B)}} converts to {{{}(EQ(A0) and GT(B)) or (EQ(A1) and 
> GT(B)){}}}.
>  # When IN applies to non-leading indexed field - IN(B0, B1) for index (A, B) 
> - it works like a filter for prepared range:
> {{GTE(A) and IN(B0, B1)}} converts to range {{[[A, B0]; [A, B1]]}} and every 
> cache entry within this range is checked for being included to SortedSet(B0, 
> B1).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-14914) Support in() clause in IndexQuery.

2022-08-16 Thread Ignite TC Bot (Jira)


[ 
https://issues.apache.org/jira/browse/IGNITE-14914?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17580365#comment-17580365
 ] 

Ignite TC Bot commented on IGNITE-14914:


{panel:title=Branch: [pull/10195/head] Base: [master] : No blockers 
found!|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}{panel}
{panel:title=Branch: [pull/10195/head] Base: [master] : New Tests 
(58)|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}
{color:#8b}Index Query API{color} [[tests 
58|https://ci.ignite.apache.org/viewLog.html?buildId=6733518]]
* {color:#013220}IndexQueryTestSuite: 
IndexQueryInCriterionDescTest.testSingleValueInCriterion - PASSED{color}
* {color:#013220}IndexQueryTestSuite: 
IndexQueryInCriterionDescTest.testSingleInCriterionOnSecondField - PASSED{color}
* {color:#013220}IndexQueryTestSuite: 
IndexQueryInCriterionDescTest.testMultipleInWithRangeCrossCriterionOnSecondField
 - PASSED{color}
* {color:#013220}IndexQueryTestSuite: 
IndexQueryInCriterionDescTest.testSingleInWithSingleRangeCriterion - 
PASSED{color}
* {color:#013220}IndexQueryTestSuite: 
IndexQueryInCriterionDescTest.testTwoValuesInCriterion - PASSED{color}
* {color:#013220}IndexQueryTestSuite: 
IndexQueryInCriterionDescTest.testSingleInWithMultipleRangeCriterion - 
PASSED{color}
* {color:#013220}IndexQueryTestSuite: 
IndexQueryInCriterionDescTest.testMultipleInWithSingleRangeCriterionCrossing - 
PASSED{color}
* {color:#013220}IndexQueryTestSuite: 
IndexQueryInCriterionDescTest.testMultipleInCriteriaAndRangeCriteriaNoCross - 
PASSED{color}
* {color:#013220}IndexQueryTestSuite: 
IndexQueryInCriterionTest.testExplcitiInCriterionWithNullVal - PASSED{color}
* {color:#013220}IndexQueryTestSuite: 
IndexQueryInCriterionTest.testDuplicatedInCriterionFailure - PASSED{color}
* {color:#013220}IndexQueryTestSuite: 
IndexQueryInCriterionDescTest.testMultipleInCriterion - PASSED{color}
... and 47 new tests

{panel}
[TeamCity *-- Run :: All* 
Results|https://ci.ignite.apache.org/viewLog.html?buildId=6731947buildTypeId=IgniteTests24Java8_RunAll]

> Support in() clause in IndexQuery.
> --
>
> Key: IGNITE-14914
> URL: https://issues.apache.org/jira/browse/IGNITE-14914
> Project: Ignite
>  Issue Type: New Feature
>Reporter: Maksim Timonin
>Assignee: Maksim Timonin
>Priority: Major
>  Labels: IEP-71, ise
> Fix For: 2.14
>
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> IndexQuery should support IN criterion:
> {{IndexQuery.setCriteria(in("A", Arrays.asList(1, 2 ,3)));}}
>  # IN criterion accepts collection of values to find. This collections is 
> transformed to {{SortedSet(1, 2, 3)}} because IndexQuery provides to user 
> sorted result.
>  # When IN applies on first indexed field - IN(A0, A1) for index (A, B) - it 
> converts to multiple {{eq}} operations are joint with OR operation: 
> {{{}EQ(A0) or EQ(A1){}}}.
>  # Other range criteria for other fields are applied to every such separate 
> operation:
> {{IN(A0, A1) and GT(B)}} converts to {{{}(EQ(A0) and GT(B)) or (EQ(A1) and 
> GT(B)){}}}.
>  # When IN applies to non-leading indexed field - IN(B0, B1) for index (A, B) 
> - it works like a filter for prepared range:
> {{GTE(A) and IN(B0, B1)}} converts to range {{[[A, B0]; [A, B1]]}} and every 
> cache entry within this range is checked for being included to SortedSet(B0, 
> B1).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-14914) Support in() clause in IndexQuery.

2022-08-16 Thread Taras Ledkov (Jira)


[ 
https://issues.apache.org/jira/browse/IGNITE-14914?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17580197#comment-17580197
 ] 

Taras Ledkov commented on IGNITE-14914:
---

[~timonin.maksim] , please file tickets for .NET, c++, python thin client to 
support new feature.

> Support in() clause in IndexQuery.
> --
>
> Key: IGNITE-14914
> URL: https://issues.apache.org/jira/browse/IGNITE-14914
> Project: Ignite
>  Issue Type: New Feature
>Reporter: Maksim Timonin
>Assignee: Maksim Timonin
>Priority: Major
>  Labels: IEP-71, ise
> Fix For: 2.14
>
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> IndexQuery should support IN criterion:
> {{IndexQuery.setCriteria(in("A", Arrays.asList(1, 2 ,3)));}}
>  # IN criterion accepts collection of values to find. This collections is 
> transformed to {{SortedSet(1, 2, 3)}} because IndexQuery provides to user 
> sorted result.
>  # When IN applies on first indexed field - IN(A0, A1) for index (A, B) - it 
> converts to multiple {{eq}} operations are joint with OR operation: 
> {{{}EQ(A0) or EQ(A1){}}}.
>  # Other range criteria for other fields are applied to every such separate 
> operation:
> {{IN(A0, A1) and GT(B)}} converts to {{{}(EQ(A0) and GT(B)) or (EQ(A1) and 
> GT(B)){}}}.
>  # When IN applies to non-leading indexed field - IN(B0, B1) for index (A, B) 
> - it works like a filter for prepared range:
> {{GTE(A) and IN(B0, B1)}} converts to range {{[[A, B0]; [A, B1]]}} and every 
> cache entry within this range is checked for being included to SortedSet(B0, 
> B1).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (IGNITE-14914) Support in() clause in IndexQuery.

2022-08-16 Thread Ignite TC Bot (Jira)


[ 
https://issues.apache.org/jira/browse/IGNITE-14914?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17580165#comment-17580165
 ] 

Ignite TC Bot commented on IGNITE-14914:


{panel:title=Branch: [pull/10195/head] Base: [master] : No blockers 
found!|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}{panel}
{panel:title=Branch: [pull/10195/head] Base: [master] : New Tests 
(58)|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}
{color:#8b}Index Query API{color} [[tests 
58|https://ci.ignite.apache.org/viewLog.html?buildId=6731885]]
* {color:#013220}IndexQueryTestSuite: 
IndexQueryInCriterionDescTest.testSingleValueInCriterion - PASSED{color}
* {color:#013220}IndexQueryTestSuite: 
IndexQueryInCriterionDescTest.testSingleInCriterionOnSecondField - PASSED{color}
* {color:#013220}IndexQueryTestSuite: 
IndexQueryInCriterionDescTest.testMultipleInWithRangeCrossCriterionOnSecondField
 - PASSED{color}
* {color:#013220}IndexQueryTestSuite: 
IndexQueryInCriterionDescTest.testSingleInWithSingleRangeCriterion - 
PASSED{color}
* {color:#013220}IndexQueryTestSuite: 
IndexQueryInCriterionDescTest.testTwoValuesInCriterion - PASSED{color}
* {color:#013220}IndexQueryTestSuite: 
IndexQueryInCriterionDescTest.testSingleInWithMultipleRangeCriterion - 
PASSED{color}
* {color:#013220}IndexQueryTestSuite: 
IndexQueryInCriterionDescTest.testMultipleInWithSingleRangeCriterionCrossing - 
PASSED{color}
* {color:#013220}IndexQueryTestSuite: 
IndexQueryInCriterionDescTest.testMultipleInCriteriaAndRangeCriteriaNoCross - 
PASSED{color}
* {color:#013220}IndexQueryTestSuite: 
IndexQueryInCriterionTest.testExplcitiInCriterionWithNullVal - PASSED{color}
* {color:#013220}IndexQueryTestSuite: 
IndexQueryInCriterionTest.testDuplicatedInCriterionFailure - PASSED{color}
* {color:#013220}IndexQueryTestSuite: 
IndexQueryInCriterionDescTest.testMultipleInCriterion - PASSED{color}
... and 47 new tests

{panel}
[TeamCity *-- Run :: All* 
Results|https://ci.ignite.apache.org/viewLog.html?buildId=6731947buildTypeId=IgniteTests24Java8_RunAll]

> Support in() clause in IndexQuery.
> --
>
> Key: IGNITE-14914
> URL: https://issues.apache.org/jira/browse/IGNITE-14914
> Project: Ignite
>  Issue Type: New Feature
>Reporter: Maksim Timonin
>Assignee: Maksim Timonin
>Priority: Major
>  Labels: IEP-71, ise
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)