MySQL 8.0.39
Source Code Documentation
anonymous_namespace{ha_mock.cc}::Mock_execution_context Class Reference

Execution context class for the MOCK engine. More...

Inheritance diagram for anonymous_namespace{ha_mock.cc}::Mock_execution_context:
[legend]

Public Member Functions

 Mock_execution_context ()
 
bool BestPlanSoFar (const JOIN &join, double cost)
 Checks if the specified cost is the lowest cost seen so far for executing the given JOIN. More...
 
- Public Member Functions inherited from Secondary_engine_execution_context
virtual ~Secondary_engine_execution_context ()=default
 Destructs the secondary engine execution context object. More...
 

Private Attributes

std::unique_ptr< char[]> m_data
 
const JOINm_current_join {nullptr}
 The JOIN currently being optimized. More...
 
double m_best_cost
 The cost of the best plan seen so far for the current JOIN. More...
 

Detailed Description

Execution context class for the MOCK engine.

It allocates some data on the heap when it is constructed, and frees it when it is destructed, so that LeakSanitizer and Valgrind can detect if the server doesn't destroy the object when the query execution has completed.

Constructor & Destructor Documentation

◆ Mock_execution_context()

anonymous_namespace{ha_mock.cc}::Mock_execution_context::Mock_execution_context ( )
inline

Member Function Documentation

◆ BestPlanSoFar()

bool anonymous_namespace{ha_mock.cc}::Mock_execution_context::BestPlanSoFar ( const JOIN join,
double  cost 
)
inline

Checks if the specified cost is the lowest cost seen so far for executing the given JOIN.

Member Data Documentation

◆ m_best_cost

double anonymous_namespace{ha_mock.cc}::Mock_execution_context::m_best_cost
private

The cost of the best plan seen so far for the current JOIN.

◆ m_current_join

const JOIN* anonymous_namespace{ha_mock.cc}::Mock_execution_context::m_current_join {nullptr}
private

The JOIN currently being optimized.

◆ m_data

std::unique_ptr<char[]> anonymous_namespace{ha_mock.cc}::Mock_execution_context::m_data
private

The documentation for this class was generated from the following file: