OmniSciDB
a5dc49c757
|
Stores info pertaining to a single request made to ExecutorResourceMgr
, including its request_id
, min and max possible resource grants, actual resource_grant, and various timing stats.
More...
#include <ExecutorResourceMgr.h>
Public Member Functions | |
RequestStats (const RequestId request_id, const RequestInfo &request_info, const ResourceGrant &min_resource_grant, const ResourceGrant &max_resource_grant, const std::chrono::steady_clock::time_point &enqueue_time, const size_t queue_length_at_entry, const size_t device_type_queue_length_at_entry, const size_t timeout_in_ms) | |
Public Attributes | |
const RequestId | request_id |
const RequestInfo | request_info |
const ResourceGrant | min_resource_grant |
const ResourceGrant | max_resource_grant |
ResourceGrant | actual_resource_grant |
std::chrono::steady_clock::time_point | enqueue_time |
std::chrono::steady_clock::time_point | deque_time |
std::chrono::steady_clock::time_point | execution_finished_time |
size_t | queue_length_at_entry |
size_t | device_type_queue_length_at_entry |
bool | finished_queueing {false} |
bool | finished_executing {false} |
size_t | queue_time_ms {0} |
size_t | execution_time_ms {0} |
size_t | total_time_ms {0} |
size_t | timeout_in_ms {0} |
bool | timed_out {false} |
std::optional< std::string > | error |
Stores info pertaining to a single request made to ExecutorResourceMgr
, including its request_id
, min and max possible resource grants, actual resource_grant, and various timing stats.
In future work it is planned to use these stats to allow the ExecutorResourceMgr
to learn from query patterns and timings over time to enable more efficient query scheduling.
Definition at line 83 of file ExecutorResourceMgr.h.
|
inline |
Definition at line 105 of file ExecutorResourceMgr.h.
ResourceGrant ExecutorResourceMgr_Namespace::RequestStats::actual_resource_grant |
Definition at line 88 of file ExecutorResourceMgr.h.
Referenced by ExecutorResourceMgr_Namespace::ExecutorResourceMgr::request_resources_with_timeout().
std::chrono::steady_clock::time_point ExecutorResourceMgr_Namespace::RequestStats::deque_time |
Definition at line 90 of file ExecutorResourceMgr.h.
Referenced by ExecutorResourceMgr_Namespace::ExecutorResourceMgr::mark_request_dequed(), and ExecutorResourceMgr_Namespace::ExecutorResourceMgr::mark_request_finished().
size_t ExecutorResourceMgr_Namespace::RequestStats::device_type_queue_length_at_entry |
Definition at line 93 of file ExecutorResourceMgr.h.
std::chrono::steady_clock::time_point ExecutorResourceMgr_Namespace::RequestStats::enqueue_time |
Definition at line 89 of file ExecutorResourceMgr.h.
Referenced by ExecutorResourceMgr_Namespace::ExecutorResourceMgr::mark_request_dequed(), and ExecutorResourceMgr_Namespace::ExecutorResourceMgr::mark_request_finished().
std::optional<std::string> ExecutorResourceMgr_Namespace::RequestStats::error |
Definition at line 103 of file ExecutorResourceMgr.h.
Referenced by ExecutorResourceMgr_Namespace::ExecutorResourceMgr::request_resources_with_timeout().
std::chrono::steady_clock::time_point ExecutorResourceMgr_Namespace::RequestStats::execution_finished_time |
Definition at line 91 of file ExecutorResourceMgr.h.
Referenced by ExecutorResourceMgr_Namespace::ExecutorResourceMgr::mark_request_finished().
size_t ExecutorResourceMgr_Namespace::RequestStats::execution_time_ms {0} |
Definition at line 97 of file ExecutorResourceMgr.h.
Referenced by ExecutorResourceMgr_Namespace::ExecutorResourceMgr::mark_request_finished().
bool ExecutorResourceMgr_Namespace::RequestStats::finished_executing {false} |
Definition at line 95 of file ExecutorResourceMgr.h.
Referenced by ExecutorResourceMgr_Namespace::ExecutorResourceMgr::mark_request_finished().
bool ExecutorResourceMgr_Namespace::RequestStats::finished_queueing {false} |
Definition at line 94 of file ExecutorResourceMgr.h.
Referenced by ExecutorResourceMgr_Namespace::ExecutorResourceMgr::mark_request_dequed(), and ExecutorResourceMgr_Namespace::ExecutorResourceMgr::mark_request_timed_out().
const ResourceGrant ExecutorResourceMgr_Namespace::RequestStats::max_resource_grant |
Definition at line 87 of file ExecutorResourceMgr.h.
const ResourceGrant ExecutorResourceMgr_Namespace::RequestStats::min_resource_grant |
Definition at line 86 of file ExecutorResourceMgr.h.
size_t ExecutorResourceMgr_Namespace::RequestStats::queue_length_at_entry |
Definition at line 92 of file ExecutorResourceMgr.h.
size_t ExecutorResourceMgr_Namespace::RequestStats::queue_time_ms {0} |
Definition at line 96 of file ExecutorResourceMgr.h.
Referenced by ExecutorResourceMgr_Namespace::ExecutorResourceMgr::mark_request_dequed().
const RequestId ExecutorResourceMgr_Namespace::RequestStats::request_id |
Definition at line 84 of file ExecutorResourceMgr.h.
const RequestInfo ExecutorResourceMgr_Namespace::RequestStats::request_info |
Definition at line 85 of file ExecutorResourceMgr.h.
Referenced by ExecutorResourceMgr_Namespace::ExecutorResourceMgr::mark_request_dequed(), ExecutorResourceMgr_Namespace::ExecutorResourceMgr::mark_request_finished(), and ExecutorResourceMgr_Namespace::ExecutorResourceMgr::mark_request_timed_out().
bool ExecutorResourceMgr_Namespace::RequestStats::timed_out {false} |
Definition at line 100 of file ExecutorResourceMgr.h.
Referenced by ExecutorResourceMgr_Namespace::ExecutorResourceMgr::mark_request_timed_out().
size_t ExecutorResourceMgr_Namespace::RequestStats::timeout_in_ms {0} |
Definition at line 99 of file ExecutorResourceMgr.h.
Referenced by ExecutorResourceMgr_Namespace::ExecutorResourceMgr::mark_request_timed_out().
size_t ExecutorResourceMgr_Namespace::RequestStats::total_time_ms {0} |
Definition at line 98 of file ExecutorResourceMgr.h.
Referenced by ExecutorResourceMgr_Namespace::ExecutorResourceMgr::mark_request_finished().