You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@geode.apache.org by "Mario Kevo (Jira)" <ji...@apache.org> on 2021/05/17 08:06:00 UTC
[jira] [Updated] (GEODE-9281) No results for the query with
multiple indexes used
[ https://issues.apache.org/jira/browse/GEODE-9281?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Mario Kevo updated GEODE-9281:
------------------------------
Description:
While running a basic query which is using 2 indexes, there are no results displayed.
{code:java}
gfsh>query --query="<trace>SELECT value FROM /example-region.entrySet WHERE value.ExpiredTime >= 0 AND value.ExpiredTime < 1719592199000L AND (value.status = 'SUSPENDED' or value.status = 'REGISTERED')"
Result : true
Limit : 100
Rows : 0
Query Trace : Query Executed in 29.131016 ms; indexesUsed(2):ExpiredTimeIndex(Results: 500),StatusIndex(Results: 250){code}
While using just one index it works correctly.
{code:java}
gfsh>query --query="<trace>SELECT value FROM /example-region.entrySet WHERE value.ExpiredTime >= 0 AND value.ExpiredTime < 1719592199000L"
Result : true
Limit : 100
Rows : 100
Query Trace : Query Executed in 15.422983 ms; indexesUsed(1):ExpiredTimeIndex(Results: 500){code}
Steps to reproduce the issue:
# start locator --name=locator1
# configure pdx --read-serialized=true --disk-store
# start server --name=server1 --server-port=0
# start server --name=server2 --server-port=0
# create region --name=example-region --type=PARTITION_PERSISTENT --redundant-copies=1
# put entries
# create index --name=ExpiredTimeIndex --expression=value.ExpiredTime --region="/example-region.entrySet" --type=range
# create index --name=StatusIndex --expression=value.Status --region="/example-region.entrySet" --type=range
# query --query="<trace>SELECT value FROM /example-region.entrySet WHERE value.ExpiredTime >= 0 AND value.ExpiredTime < 1719592199000L AND (value.Status = 'SUSPENDED' or value.Status = 'REGISTERED')"
was:
While running a basic query which is using 2 indexes, there are no results displayed.
{code:java}
gfsh>query --query="<trace>SELECT value FROM /example-region.entrySet WHERE value.ExpiredTime >= 0 AND value.ExpiredTime < 1719592199000L AND (value.status = 'SUSPENDED' or value.status = 'REGISTERED')"
Result : true
Limit : 100
Rows : 0
Query Trace : Query Executed in 29.131016 ms; indexesUsed(2):ExpiredTimeIndex(Results: 500),StatusIndex(Results: 250){code}
While using just one index it works correctly.
{code:java}
gfsh>query --query="<trace>SELECT value FROM /example-region.entrySet WHERE value.ExpiredTime >= 0 AND value.ExpiredTime < 1719592199000L"
Result : true
Limit : 100
Rows : 100
Query Trace : Query Executed in 15.422983 ms; indexesUsed(1):ExpiredTimeIndex(Results: 500){code}
> No results for the query with multiple indexes used
> ---------------------------------------------------
>
> Key: GEODE-9281
> URL: https://issues.apache.org/jira/browse/GEODE-9281
> Project: Geode
> Issue Type: Bug
> Components: querying
> Reporter: Mario Kevo
> Assignee: Mario Kevo
> Priority: Major
>
> While running a basic query which is using 2 indexes, there are no results displayed.
> {code:java}
> gfsh>query --query="<trace>SELECT value FROM /example-region.entrySet WHERE value.ExpiredTime >= 0 AND value.ExpiredTime < 1719592199000L AND (value.status = 'SUSPENDED' or value.status = 'REGISTERED')"
> Result : true
> Limit : 100
> Rows : 0
> Query Trace : Query Executed in 29.131016 ms; indexesUsed(2):ExpiredTimeIndex(Results: 500),StatusIndex(Results: 250){code}
> While using just one index it works correctly.
> {code:java}
> gfsh>query --query="<trace>SELECT value FROM /example-region.entrySet WHERE value.ExpiredTime >= 0 AND value.ExpiredTime < 1719592199000L"
> Result : true
> Limit : 100
> Rows : 100
> Query Trace : Query Executed in 15.422983 ms; indexesUsed(1):ExpiredTimeIndex(Results: 500){code}
>
> Steps to reproduce the issue:
> # start locator --name=locator1
> # configure pdx --read-serialized=true --disk-store
> # start server --name=server1 --server-port=0
> # start server --name=server2 --server-port=0
> # create region --name=example-region --type=PARTITION_PERSISTENT --redundant-copies=1
> # put entries
> # create index --name=ExpiredTimeIndex --expression=value.ExpiredTime --region="/example-region.entrySet" --type=range
> # create index --name=StatusIndex --expression=value.Status --region="/example-region.entrySet" --type=range
> # query --query="<trace>SELECT value FROM /example-region.entrySet WHERE value.ExpiredTime >= 0 AND value.ExpiredTime < 1719592199000L AND (value.Status = 'SUSPENDED' or value.Status = 'REGISTERED')"
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)