Interface RunTimeStatistics
-
- All Known Implementing Classes:
RunTimeStatisticsImpl
public interface RunTimeStatistics
A RunTimeStatistics object is a representation of the query execution plan and run time statistics for a java.sql.ResultSet. A query execution plan is a tree of execution nodes. There are a number of possible node types. Statistics are accumulated during execution at each node. The types of statistics include the amount of time spent in specific operations (if STATISTICS TIMING is SET ON), the number of rows passed to the node by its child(ren) and the number of rows returned by the node to its parent. (The exact statistics are specific to each node type.)RunTimeStatistics is most meaningful for DML statements (SELECT, INSERT, DELETE and UPDATE).
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
acceptFromTopResultSet(XPLAINVisitor v)
Initiate a visit of the ResultSetStatistics tree from the top.java.sql.Timestamp
getBeginCompilationTimestamp()
Get the timestamp for the beginning of query compilation.java.sql.Timestamp
getBeginExecutionTimestamp()
Get the timestamp for the beginning of query execution.long
getBindTimeInMillis()
Get the bind time for the associated query in milliseconds.long
getCompileTimeInMillis()
Get the total compile time for the associated query in milliseconds.java.sql.Timestamp
getEndCompilationTimestamp()
Get the timestamp for the end of query compilation.java.sql.Timestamp
getEndExecutionTimestamp()
Get the timestamp for the end of query execution.double
getEstimatedRowCount()
Get the estimated row count for the number of rows returned by the associated query or statement.long
getExecuteTimeInMillis()
Get the execute time for the associated query in milliseconds.long
getGenerateTimeInMillis()
Get the generate time for the associated query in milliseconds.long
getOptimizeTimeInMillis()
Get the optimize time for the associated query in milliseconds.long
getParseTimeInMillis()
Get the parse time for the associated query in milliseconds.java.lang.String
getScanStatisticsText()
Get a String representation of the information on the nodes relating to table and index scans from the execution plan for the associated query or statement.java.lang.String
getScanStatisticsText(java.lang.String tableName)
Get a String representation of the information on the nodes relating to table and index scans from the execution plan for the associated query or statement for a particular table.java.lang.String
getSPSName()
Get the name of the Stored Prepared Statement used for the statement.java.lang.String
getStatementExecutionPlanText()
Get a String representation of the execution plan for the associated query or statement.java.lang.String
getStatementName()
Get the name of the associated query or statement.java.lang.String
getStatementText()
Get the text for the associated query or statement.
-
-
-
Method Detail
-
getCompileTimeInMillis
long getCompileTimeInMillis()
Get the total compile time for the associated query in milliseconds. Compile time can be divided into parse, bind, optimize and generate times.0 is returned if STATISTICS TIMING is not SET ON.
- Returns:
- The total compile time for the associated query in milliseconds.
-
getParseTimeInMillis
long getParseTimeInMillis()
Get the parse time for the associated query in milliseconds.0 is returned if STATISTICS TIMING is not SET ON.
- Returns:
- The parse time for the associated query in milliseconds.
-
getBindTimeInMillis
long getBindTimeInMillis()
Get the bind time for the associated query in milliseconds.- Returns:
- The bind time for the associated query in milliseconds.
-
getOptimizeTimeInMillis
long getOptimizeTimeInMillis()
Get the optimize time for the associated query in milliseconds.0 is returned if STATISTICS TIMING is not SET ON.
- Returns:
- The optimize time for the associated query in milliseconds.
-
getGenerateTimeInMillis
long getGenerateTimeInMillis()
Get the generate time for the associated query in milliseconds.0 is returned if STATISTICS TIMING is not SET ON.
- Returns:
- The generate time for the associated query in milliseconds.
-
getExecuteTimeInMillis
long getExecuteTimeInMillis()
Get the execute time for the associated query in milliseconds.0 is returned if STATISTICS TIMING is not SET ON.
- Returns:
- The execute time for the associated query in milliseconds.
-
getBeginCompilationTimestamp
java.sql.Timestamp getBeginCompilationTimestamp()
Get the timestamp for the beginning of query compilation.A null is returned if STATISTICS TIMING is not SET ON.
- Returns:
- The timestamp for the beginning of query compilation.
-
getEndCompilationTimestamp
java.sql.Timestamp getEndCompilationTimestamp()
Get the timestamp for the end of query compilation.A null is returned if STATISTICS TIMING is not SET ON.
- Returns:
- The timestamp for the end of query compilation.
-
getBeginExecutionTimestamp
java.sql.Timestamp getBeginExecutionTimestamp()
Get the timestamp for the beginning of query execution.A null is returned if STATISTICS TIMING is not SET ON.
- Returns:
- The timestamp for the beginning of query execution.
-
getEndExecutionTimestamp
java.sql.Timestamp getEndExecutionTimestamp()
Get the timestamp for the end of query execution.A null is returned if STATISTICS TIMING is not SET ON.
- Returns:
- The timestamp for the end of query execution.
-
getStatementName
java.lang.String getStatementName()
Get the name of the associated query or statement. (This will be an internally generated name if the user did not assign a name.)- Returns:
- The name of the associated query or statement.
-
getSPSName
java.lang.String getSPSName()
Get the name of the Stored Prepared Statement used for the statement. This method returns a value only for EXECUTE STATEMENT statements; otherwise, returns null.Note that the name is returned in the schema.name format (e.g. APP.MYSTMT).
- Returns:
- The Stored Prepared Statement name of the associated statement, or null if it is not an EXECUTE STATEMENT statement.
-
getStatementText
java.lang.String getStatementText()
Get the text for the associated query or statement.- Returns:
- The text for the associated query or statement.
-
getStatementExecutionPlanText
java.lang.String getStatementExecutionPlanText()
Get a String representation of the execution plan for the associated query or statement.- Returns:
- The execution plan for the associated query or statement.
-
getScanStatisticsText
java.lang.String getScanStatisticsText()
Get a String representation of the information on the nodes relating to table and index scans from the execution plan for the associated query or statement.- Returns:
- The nodes relating to table and index scans from the execution plan for the associated query or statement.
-
getScanStatisticsText
java.lang.String getScanStatisticsText(java.lang.String tableName)
Get a String representation of the information on the nodes relating to table and index scans from the execution plan for the associated query or statement for a particular table.- Parameters:
tableName
- The table for which user desires statistics.- Returns:
- The nodes relating to table and index scans from the execution plan for the associated query or statement.
-
getEstimatedRowCount
double getEstimatedRowCount()
Get the estimated row count for the number of rows returned by the associated query or statement.- Returns:
- The estimated number of rows returned by the associated query or statement.
-
acceptFromTopResultSet
void acceptFromTopResultSet(XPLAINVisitor v)
Initiate a visit of the ResultSetStatistics tree from the top.- Parameters:
v
- the visitor that wishes to visit the tree.
-
-