MySQL  8.0.20
Source Code Documentation
Sort_result Class Reference

#include <sql_sort.h>

Public Member Functions

 Sort_result ()
 
bool has_result_in_memory () const
 
bool has_result () const
 

Public Attributes

IO_CACHEio_cache {nullptr}
 
bool sorted_result_in_fsbuf {false}
 If the entire result fits in memory, we skip the merge phase. More...
 
unique_ptr_my_free< ucharsorted_result {nullptr}
 
ucharsorted_result_end {nullptr}
 
ha_rows found_records {0}
 How many records in sort. More...
 

Constructor & Destructor Documentation

◆ Sort_result()

Sort_result::Sort_result ( )
inline

Member Function Documentation

◆ has_result()

bool Sort_result::has_result ( ) const
inline

◆ has_result_in_memory()

bool Sort_result::has_result_in_memory ( ) const
inline

Member Data Documentation

◆ found_records

ha_rows Sort_result::found_records {0}

How many records in sort.

◆ io_cache

IO_CACHE* Sort_result::io_cache {nullptr}

◆ sorted_result

unique_ptr_my_free<uchar> Sort_result::sorted_result {nullptr}

◆ sorted_result_end

uchar* Sort_result::sorted_result_end {nullptr}

◆ sorted_result_in_fsbuf

bool Sort_result::sorted_result_in_fsbuf {false}

If the entire result fits in memory, we skip the merge phase.

We may leave the result in the parent Filesort_info's filesort_buffer (indicated by sorted_result_in_fsbuf), or we may strip away the sort keys, and copy the sorted result into a new buffer. Unique always uses the latter. This new buffer is [sorted_result ... sorted_result_end]

See also
save_index()

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