Refactor for query plan capture with initial threshold micros - part 2

This commit is contained in:
rob bygrave
2019-12-24 00:29:46 +13:00
parent 6fcac27dfe
commit 8a263d243c
25 changed files with 431 additions and 227 deletions
@@ -20,12 +20,16 @@ public interface SpiQueryBindCapture {
boolean collectFor(long timeMicros);
/**
* Set the bind capture and the related query execution time.
* Set the captured bind values that we can use later to collect a query plan.
*
* @param bindCapture The bind values of the query
* @param queryTimeMicros The query execution time
* @param startNanos The nanos start of this bind capture
*/
void setBind(BindCapture bindCapture, long timeMicros, long startNanos);
void setBind(BindCapture bindCapture, long queryTimeMicros, long startNanos);
/**
* Collect the query execution plan usually executing the query to do so.
* Update the threshold micros triggering the bind capture.
*/
void collectQueryPlan(QueryPlanRequest request);
void queryPlanInit(long thresholdMicros);
}