Class used to report CLONE progress via Performance Schema.
More...
#include <clone0monitor.h>
Class used to report CLONE progress via Performance Schema.
◆ anonymous enum
Enumerator |
---|
NOT_STARTED | |
ESTIMATE_WORK | |
COMPLETE_WORK | |
◆ Clone_Monitor()
Clone_Monitor::Clone_Monitor |
( |
| ) |
|
|
inline |
◆ ~Clone_Monitor()
Clone_Monitor::~Clone_Monitor |
( |
| ) |
|
|
inline |
◆ add_estimate()
void Clone_Monitor::add_estimate |
( |
uint64_t |
size | ) |
|
|
inline |
Update the work estimated for the clone operation.
- Parameters
-
[in] | size | size in bytes that needs to transferred across. |
◆ change_phase()
void Clone_Monitor::change_phase |
( |
| ) |
|
|
inline |
Change from one phase to the other.
◆ convert_bytes_to_work()
uint64_t Clone_Monitor::convert_bytes_to_work |
( |
uint64_t |
size, |
|
|
bool |
is_estimate |
|
) |
| |
|
inlineprivate |
Translate bytes to work unit.
- Parameters
-
[in] | size | size in bytes that needs to be converted to the |
[in] | is_estimate | if called during estimation corresponding work unit. |
- Returns
- the number of PFS chunks that the size constitutes.
◆ get_estimate()
uint64_t Clone_Monitor::get_estimate |
( |
| ) |
|
|
inline |
- Returns
- estimated work in bytes
◆ init_state()
void Clone_Monitor::init_state |
( |
PSI_stage_key |
key, |
|
|
bool |
enable |
|
) |
| |
|
inline |
Initialize all monitoring data.
- Parameters
-
[in] | key | PFS key to register stage event |
[in] | enable | if true, enable PFS trackig. |
◆ is_estimation_phase()
bool Clone_Monitor::is_estimation_phase |
( |
| ) |
const |
|
inline |
- Returns
- true if in estimation phase
◆ update_work()
void Clone_Monitor::update_work |
( |
uint |
size | ) |
|
|
inline |
Update the progress of the clone operation.
param[in] size size in bytes that is being transferred across.
enum { ... } Clone_Monitor::m_cur_phase |
◆ m_estimate
uint64_t Clone_Monitor::m_estimate |
|
private |
◆ m_estimate_bytes_left
uint64_t Clone_Monitor::m_estimate_bytes_left |
|
private |
◆ m_pfs_data_chunk_size
uint Clone_Monitor::m_pfs_data_chunk_size |
|
private |
◆ m_progress
◆ m_work_bytes_left
uint64_t Clone_Monitor::m_work_bytes_left |
|
private |
◆ m_work_done
uint64_t Clone_Monitor::m_work_done |
|
private |
◆ PFS_DATA_CHUNK_SIZE_POW2
const int Clone_Monitor::PFS_DATA_CHUNK_SIZE_POW2 = 20 |
|
staticprivate |
The documentation for this class was generated from the following file: