#include <hash_join_chunk.h>
◆ HashJoinChunk() [1/3]
HashJoinChunk::HashJoinChunk |
( |
| ) |
|
|
default |
◆ HashJoinChunk() [2/3]
◆ HashJoinChunk() [3/3]
◆ ~HashJoinChunk()
HashJoinChunk::~HashJoinChunk |
( |
| ) |
|
◆ Init()
Initialize this HashJoinChunk.
- Parameters
-
tables | The tables to store row data from. Which column we store in the chunk file is determined by each tables read set. |
uses_match_flags | Whether each row should be prefixed with a match flag, saying whether the row had a matching row. |
- Returns
- true if the initialization failed.
◆ LoadRowFromChunk()
bool HashJoinChunk::LoadRowFromChunk |
( |
String * |
buffer, |
|
|
bool * |
matched |
|
) |
| |
Read a row from the HashJoinChunk and put it in the record buffer.
The function will read a row from file on disk and put it in the record buffers (table->record[0]) in the provided tables. The file on disk should already be pointing to the start of a row.
- Parameters
-
| buffer | a buffer that is used when copying data from the chunk file to the tables. Note that any existing data in "buffer" is overwritten. |
[out] | matched | whether this row has seen a matching row from the other input. The flag is only restored if 'm_uses_match_flags' is set, and if the row comes from the probe input. |
- Return values
-
◆ num_rows()
ha_rows HashJoinChunk::num_rows |
( |
| ) |
const |
|
inline |
- Returns
- the number of rows in this HashJoinChunk
◆ operator=()
◆ Rewind()
bool HashJoinChunk::Rewind |
( |
| ) |
|
Flush the file buffer, and prepare the file for reading.
- Return values
-
◆ WriteRowToChunk()
bool HashJoinChunk::WriteRowToChunk |
( |
String * |
buffer, |
|
|
bool |
matched |
|
) |
| |
Write a row to the HashJoinChunk.
Read the row that lies in the record buffer (record[0]) of the given tables and write it out to the underlying file. If the QEP_TAB signals that the row ID should be kept, it is also written out. Note that TABLE::read_set is used to signal which columns that should be written to the chunk.
- Parameters
-
buffer | a buffer that is used when copying data from the tables to the chunk file. Note that any existing data in "buffer" is overwritten. |
matched | whether this row has seen a matching row from the other input. The flag is only written if 'm_uses_match_flags' is set, and if the row comes from the probe input. |
- Return values
-
◆ m_file
◆ m_num_rows
ha_rows HashJoinChunk::m_num_rows {0} |
|
private |
◆ m_tables
◆ m_uses_match_flags
bool HashJoinChunk::m_uses_match_flags {false} |
|
private |
The documentation for this class was generated from the following files: