33#ifndef CLONE_MONITOR_H
34#define CLONE_MONITOR_H
96 uint64_t ret_estimate = 0;
101 return (ret_estimate);
177 bytes_left =
size - aligned_size;
Class used to report CLONE progress via Performance Schema.
Definition: clone0monitor.h:46
void change_phase()
Change from one phase to the other.
Definition: clone0monitor.h:136
@ NOT_STARTED
Definition: clone0monitor.h:198
@ COMPLETE_WORK
Definition: clone0monitor.h:198
@ ESTIMATE_WORK
Definition: clone0monitor.h:198
~Clone_Monitor()
Destructor.
Definition: clone0monitor.h:60
void update_work(uint size)
Update the progress of the clone operation.
Definition: clone0monitor.h:123
uint64_t m_estimate_bytes_left
Definition: clone0monitor.h:192
void add_estimate(uint64_t size)
Update the work estimated for the clone operation.
Definition: clone0monitor.h:107
uint64_t m_work_done
Definition: clone0monitor.h:186
enum Clone_Monitor::@197 m_cur_phase
bool is_estimation_phase() const
Definition: clone0monitor.h:92
void init_state(PSI_stage_key key, bool enable)
Initialize all monitoring data.
Definition: clone0monitor.h:71
uint64_t m_estimate
Definition: clone0monitor.h:183
uint64_t m_work_bytes_left
Definition: clone0monitor.h:195
PSI_stage_progress * m_progress
Definition: clone0monitor.h:189
uint64_t get_estimate()
Definition: clone0monitor.h:95
Clone_Monitor()
Constructor.
Definition: clone0monitor.h:49
uint64_t convert_bytes_to_work(uint64_t size, bool is_estimate)
Translate bytes to work unit.
Definition: clone0monitor.h:172
static const int PFS_DATA_CHUNK_SIZE_POW2
Definition: clone0monitor.h:201
uint m_pfs_data_chunk_size
Definition: clone0monitor.h:204
std::function< int()> Clone_Alert_Func
Function to alert caller for long wait.
Definition: clone0monitor.h:43
unsigned int PSI_stage_key
Instrumented stage key.
Definition: psi_stage_bits.h:43
#define mysql_set_stage(K)
Set the current stage.
Definition: mysql_stage.h:80
#define mysql_end_stage
End the last stage.
Definition: mysql_stage.h:86
#define mysql_stage_set_work_completed(P1, P2)
Definition: mysql_stage.h:115
#define mysql_stage_set_work_estimated(P1, P2)
Definition: mysql_stage.h:140
Instrumentation helpers for stages.
size_t size(const char *const c)
Definition: base64.h:46
required string key
Definition: replication_asynchronous_connection_failover.proto:60
Interface for an instrumented stage progress.
Definition: psi_stage_bits.h:63
Version control for database, common definitions, and include files.
static uint64_t ut_uint64_align_down(uint64_t n, ulint align_no)
Rounds a 64-bit integer downward to a multiple of a power of 2.
Debug utilities for Innobase.
#define ut_ad(EXPR)
Debug assertion.
Definition: ut0dbg.h:105
static uint32_t ut_2_exp(uint32_t n)
Calculates 2 to power n.
#define PSI_NOT_INSTRUMENTED
Definition: validate_password_imp.cc:44