[ 
https://issues.apache.org/jira/browse/IGNITE-21562?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Iurii Gerzhedovich updated IGNITE-21562:
----------------------------------------
    Epic Link: IGNITE-20729

> Improve test coverage for SQL metrics
> -------------------------------------
>
>                 Key: IGNITE-21562
>                 URL: https://issues.apache.org/jira/browse/IGNITE-21562
>             Project: Ignite
>          Issue Type: Improvement
>          Components: sql
>            Reporter: Iurii Gerzhedovich
>            Priority: Major
>              Labels: ignite-3
>
> During implementation of metrics for SQL were added set of tests. However 
> added set of tests is insufficient.
> Let's add the following test scenarios:
> For plan cache metrics:
>  * repeat for multiple queries that run concurrently. Check that metric 
> increased expected times. (check for plans cache hit and plans cache miss)
> SQL API:
>  * start a query, call close on the ResultSet multiple times (the metric be 
> updated after the first close operation).
>  * start a query, start another query (the metric should increase by 2). 
> Close the ResultSet of the second query (the metric should decrease by 1). 
> Close the first ResultSet (the metric should return to its initial value).
>  * run metric checks for multiple concurrent operations.
>  * check that the metric returns to its initial value after a timeout (final 
> part is missing - see testMetricsDuringTimeouts).
>  * check that closing the session returns the metric to its initial value (no 
> standalone tests for this, tested in pre/post run checks).
> JDBC API:
>  * For queries (execute, executeQuery methods of Statement/PreparedStatement):
>  ** start a query (the metric should increase), obtain ResultSet, close it 
> (the metric should decrease).
>  ** start a query, start another query (the metric should increase by 2). 
> Obtain ResultSet for both. Close the ResultSet of the second query (the 
> metric should decrease by 1). Close the first ResultSet (the metric should 
> return to its initial value).
>  ** run metric checks for multiple queries concurrently.
>  ** check that the metric returns to its initial value when a query returns 
> an error.
>  ** check that the metric returns to its initial value after a timeout.
>  * For DML statements (via execute, executeUpdate, executeBatch methods of 
> Statement/PreparedStatement):
>  **  execute DML statement (the metric should increase), close the statement 
> (the metric should return to its initial value). 
>  ** execute DML statement (the metric should increase), run another command 
> using the same statement, close the statement (the metric should return to 
> its initial value). 
>  ** repeat for multiple DML operations that run concurrently.
>  ** run metric checks for multiple DML operations concurrently.
>  ** check that the metric returns to its initial value when a DML operation 
> returns an error.
>  ** check that the metric returns to its initial value after a timeout.
> * Check check closing Statement/Connection also affects the metric and 
> returns it to its initial value.



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

Reply via email to