42#if defined(MYSQL_SERVER)
177 uint
const source_column_count,
uchar const *
const row_data,
179 uchar const **
const row_image_end_p,
180 uchar const *
const event_end,
182 bool event_has_value_options,
bool only_seek);
203 const uchar *raw_data,
MY_BITMAP const *column_image,
size_t column_count,
205 bool replica_has_gipk);
214template <
typename T,
typename UT>
264 void set(
bool set_to_on) {
268 if (bit_within_byte == 0)
294 return (
m_ptr[
byte] & (1 << bit_within_byte)) != 0;
Auxiliary class to read or write a stream of bits to a memory location.
Definition: rpl_record.h:280
bool get()
Read the next bit and move the read position one bit forward.
Definition: rpl_record.h:290
Bit_reader(const uchar *ptr)
Definition: rpl_record.h:284
Bit_reader(const char *ptr=nullptr)
Definition: rpl_record.h:282
Template base class of Bit_reader / Bit_writer.
Definition: rpl_record.h:215
T * m_ptr
Pointer to beginning of buffer where bits are read or written.
Definition: rpl_record.h:218
uint m_current_bit
Current position in buffer.
Definition: rpl_record.h:220
uint tell() const
Definition: rpl_record.h:241
void set_ptr(UT *ptr)
Set the buffer pointer, using an unsigned datatype.
Definition: rpl_record.h:238
void set_ptr(T *ptr)
Set the buffer pointer.
Definition: rpl_record.h:233
void dbug_print(const char *str) const
Print all the bits before the current position to the debug trace.
Definition: rpl_record.cc:62
Bit_stream_base(T *ptr)
Construct a new Bit_stream (either reader or writer).
Definition: rpl_record.h:227
Auxiliary class to write a stream of bits to a memory location.
Definition: rpl_record.h:255
void set(bool set_to_on)
Write the next bit and move the write position one bit forward.
Definition: rpl_record.h:264
Bit_writer(uchar *ptr)
Definition: rpl_record.h:258
Bit_writer(char *ptr=nullptr)
Definition: rpl_record.h:257
Definition: rpl_rli.h:206
A table definition from the master.
Definition: rpl_utility.h:249
unsigned char byte
Blob class.
Definition: common.h:151
Some integer typedefs for easier portability.
unsigned long long int ulonglong
Definition: my_inttypes.h:56
unsigned char uchar
Definition: my_inttypes.h:52
std::string str(const mysqlrouter::ConfigGenerator::Options::Endpoint &ep)
Definition: config_generator.cc:1105
static PFS_engine_table_share_proxy table
Definition: pfs.cc:61
enum_row_image_type
Definition: rpl_record.h:40
const uchar * translate_beginning_of_raw_data(const uchar *raw_data, MY_BITMAP const *column_image, size_t column_count, Bit_reader &null_bits, table_def *tabledef, bool source_has_gipk, bool replica_has_gipk)
Return a pointer within a row event's row data, to the data of the first column that exists on the re...
Definition: rpl_record.cc:781
bool unpack_row(Relay_log_info const *rli, TABLE *table, uint const source_column_count, uchar const *const row_data, MY_BITMAP const *column_image, uchar const **const row_image_end_p, uchar const *const event_end, enum_row_image_type row_image_type, bool event_has_value_options, bool only_seek)
Unpack a row image (either before-image or after-image) into table->record[0].
Definition: rpl_record.cc:448
int prepare_record(TABLE *const table, const MY_BITMAP *cols, const bool check)
Fills table->record[0] with default values.
Definition: rpl_record.cc:811
size_t pack_row(TABLE *table, MY_BITMAP const *cols, uchar *row_data, const uchar *data, enum_row_image_type row_image_type, ulonglong value_options=0)
Pack a record of data for a table into a format suitable for the binary log.
Definition: rpl_record.cc:270
Definition: my_bitmap.h:43