mirror of
https://github.com/Kingsrook/qqq.git
synced 2025-07-17 20:50:44 +00:00
re-set queryStat startTimestamp to just before executeQuery, to avoid including time spent aquiring db connection
This commit is contained in:
@ -25,6 +25,7 @@ package com.kingsrook.qqq.backend.module.rdbms.actions;
|
||||
import java.io.Serializable;
|
||||
import java.sql.Connection;
|
||||
import java.sql.ResultSet;
|
||||
import java.time.Instant;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
@ -116,6 +117,14 @@ public class RDBMSAggregateAction extends AbstractRDBMSAction implements Aggrega
|
||||
actionTimeoutHelper = new ActionTimeoutHelper(aggregateInput.getTimeoutSeconds(), TimeUnit.SECONDS, new StatementTimeoutCanceller(statement, sql));
|
||||
actionTimeoutHelper.start();
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// to avoid counting time spent acquiring a connection, re-set the queryStat startTimestamp here //
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
if(queryStat != null)
|
||||
{
|
||||
queryStat.setStartTimestamp(Instant.now());
|
||||
}
|
||||
|
||||
QueryManager.executeStatement(statement, sql, ((ResultSet resultSet) ->
|
||||
{
|
||||
/////////////////////////////////////////////////////////////////////////
|
||||
|
@ -25,6 +25,7 @@ package com.kingsrook.qqq.backend.module.rdbms.actions;
|
||||
import java.io.Serializable;
|
||||
import java.sql.Connection;
|
||||
import java.sql.ResultSet;
|
||||
import java.time.Instant;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
@ -96,6 +97,14 @@ public class RDBMSCountAction extends AbstractRDBMSAction implements CountInterf
|
||||
actionTimeoutHelper = new ActionTimeoutHelper(countInput.getTimeoutSeconds(), TimeUnit.SECONDS, new StatementTimeoutCanceller(statement, sql));
|
||||
actionTimeoutHelper.start();
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// to avoid counting time spent acquiring a connection, re-set the queryStat startTimestamp here //
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
if(queryStat != null)
|
||||
{
|
||||
queryStat.setStartTimestamp(Instant.now());
|
||||
}
|
||||
|
||||
QueryManager.executeStatement(statement, sql, ((ResultSet resultSet) ->
|
||||
{
|
||||
/////////////////////////////////////////////////////////////////////////
|
||||
|
@ -28,6 +28,7 @@ import java.sql.PreparedStatement;
|
||||
import java.sql.ResultSet;
|
||||
import java.sql.ResultSetMetaData;
|
||||
import java.sql.SQLException;
|
||||
import java.time.Instant;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.LinkedHashMap;
|
||||
@ -165,6 +166,14 @@ public class RDBMSQueryAction extends AbstractRDBMSAction implements QueryInterf
|
||||
actionTimeoutHelper = new ActionTimeoutHelper(queryInput.getTimeoutSeconds(), TimeUnit.SECONDS, new StatementTimeoutCanceller(statement, sql));
|
||||
actionTimeoutHelper.start();
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// to avoid counting time spent acquiring a connection, re-set the queryStat startTimestamp here //
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
if(queryStat != null)
|
||||
{
|
||||
queryStat.setStartTimestamp(Instant.now());
|
||||
}
|
||||
|
||||
//////////////////////////////////////////////
|
||||
// execute the query - iterate over results //
|
||||
//////////////////////////////////////////////
|
||||
|
Reference in New Issue
Block a user