Iurii Gerzhedovich created IGNITE-21534:
-------------------------------------------

             Summary: Sql. Improve test coverage for Indexes
                 Key: IGNITE-21534
                 URL: https://issues.apache.org/jira/browse/IGNITE-21534
             Project: Ignite
          Issue Type: Improvement
          Components: sql
            Reporter: Iurii Gerzhedovich


During implementation support of indexes were added set of tests. However added 
set of tests is insufficient.
Let's add the following test scenarios:
Integration tests:

* Ensuring validation errors for creating indexes with wrong type (not HASH and 
SORTED)
* Ensuring query conditions on indexed columns transform to valid scan bounds.

 
{code:java}
For each supported column type and sorting order:

Create a sorted index on a column of given type. Run a query with various 
supported range conditions. Check correct index bounds are passed to the index 
scan method.
For each supported column type:

Create a hash index on a column of given type. Run a query with equality 
conditions on the indexed column. Check correct index bounds are passed to the 
index lookup method.
For composite indexes of multiple columns of some types, do similar checks.

Hash index should support lookup. Sorted index should support scan by range 
condition and also scan by a prefix condiion{code}
*Ensuring query plans can use indexes


 
{code:java}
1. Check that plans for a query with an `ORDER BY` clause on indexed column(s) 
can utilize the sorted index.
2. Check that plans for a query with equality condition on indexed column(s) 
can utilize the hash/sorted index.
3. Check that plans for a query with range conditions on indexed column(s) can 
utilize the sorted index.
4. Check that plans for a query with conditions on indexed column(s) prefix can 
utilize the sorted index.
5. Check that plans with JOINS on indexed column(s) can utilize the index. 6. 
Check that plans with GROUP BY on indexed column(s) can utilize the index.  
{code}
* Ensuring columns of supported types can be indexed.

 
{code:java}
For each index type and for each supported column type:

Create an index on a column of checking type. Put/update/drop some data and 
check index scan returns the correct data. {code}



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

Reply via email to