Details
Description
It's needed to add tracingĀ of SQL queries based on the tracing framework that was added as part of theĀ IGNITE-13060
Tracing of SQL queries must show phases of query execution, their duration, errors and additional information describing each of the phases, such as the number of rows requested from a remote node, SQL query mapping, and so on.
For the first step of implementation Its proposed to distinguish the following phases of queries execution:
- The overall execution of SQL query.
- Opening SQL query cursor.
- Closing SQL query cursor.
- Cancellation SQL query cursor.
- Parsing SQL query.
- Processing SQL query execution request.
- Processing SQL next result page request.
- Processing mapped node response with requested SQL result page.
- Execution SQL query by H2.
- Reading rows from cursor and preparing result page.
- Processing SQL query fail response.
- Processing DML query request.
- Processing DML query response.
- Processing query cancellation request.
- Opening cursor iterator.
- Opening cursor iterator.
- Fetching SQL query result page.
- Waiting for SQL query results page to be received.
- Processing SQL index range request.
- Processing SQL index range response.
- Execution of SQL DML query.
- Execution of SQL command query which either DDL SQL queries or Ignite native SQL commands.
- SQL query partitions reservation.
- Update of cache as a result of the SQL DML query.
- Processing of incoming batch.
And keeps the following info:
- SQL query text
- SQL query schema
- Number of rows that result page contains.
- Number of rows that index range response contains.
- Name of SQL table.
- Number of cache entries to be updated as a result of DML query.
Attachments
Issue Links
- is a child of
-
IGNITE-13060 Tracing: initial implementation
- Resolved
- is related to
-
IGNITE-13477 Fix NPE in SQL tracing implementation.
- Resolved
- links to