mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 12:02:42 +01:00
0d3f926a1c
Factoring out pack_row() and unpack_row() into new files rpl_record.{cc,h}. libmysqld/Makefile.am: Adding file rpl_record.cc sql/CMakeLists.txt: Adding file rpl_record.cc sql/Makefile.am: Adding file rpl_record.cc and rpl_record.h sql/log_event.cc: Moving implementation of unpack_row() into "rpl_record.cc". Adding inclusion of header file "rpl_record.h". sql/log_event_old.cc: Signature of do_prepare_row() changed. sql/log_event_old.h: Adding copyright. sql/rpl_record_old.cc: Signature of do_prepare_row() changed. sql/rpl_record_old.h: Adding copyright. Signature of do_prepare_row() changed. sql/sql_class.cc: Moving implementation THD::pack_row() into "rpl_record.cc" and rewriting it to be a global function. Adding inclusion of header file "rpl_record.h". sql/sql_class.h: Removing pack_row() as THD member function. sql/rpl_record.cc: New BitKeeper file ``sql/rpl_record.cc'' sql/rpl_record.h: New BitKeeper file ``sql/rpl_record.h''
127 lines
3.8 KiB
C++
127 lines
3.8 KiB
C++
/* Copyright 2007 MySQL AB. All rights reserved.
|
|
|
|
This program is free software; you can redistribute it and/or modify
|
|
it under the terms of the GNU General Public License as published by
|
|
the Free Software Foundation; version 2 of the License.
|
|
|
|
This program is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with this program; if not, write to the Free Software
|
|
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
|
|
|
|
#ifndef LOG_EVENT_OLD_H
|
|
#define LOG_EVENT_OLD_H
|
|
|
|
/*
|
|
Need to include this file at the proper position of log_event.h
|
|
*/
|
|
|
|
|
|
class Write_rows_log_event_old : public Write_rows_log_event
|
|
{
|
|
public:
|
|
enum
|
|
{
|
|
/* Support interface to THD::binlog_prepare_pending_rows_event */
|
|
TYPE_CODE = PRE_GA_WRITE_ROWS_EVENT
|
|
};
|
|
|
|
#if !defined(MYSQL_CLIENT)
|
|
Write_rows_log_event_old(THD *thd, TABLE *table, ulong table_id,
|
|
MY_BITMAP const *cols, bool is_transactional)
|
|
: Write_rows_log_event(thd, table, table_id, cols, is_transactional)
|
|
{
|
|
}
|
|
#endif
|
|
#if defined(HAVE_REPLICATION)
|
|
Write_rows_log_event_old(const char *buf, uint event_len,
|
|
const Format_description_log_event *descr)
|
|
: Write_rows_log_event(buf, event_len, descr)
|
|
{
|
|
}
|
|
#endif
|
|
|
|
private:
|
|
virtual Log_event_type get_type_code() { return (Log_event_type)TYPE_CODE; }
|
|
|
|
#if !defined(MYSQL_CLIENT) && defined(HAVE_REPLICATION)
|
|
virtual int do_prepare_row(THD*, RELAY_LOG_INFO const*, TABLE*,
|
|
char const *row_start, char const **row_end);
|
|
#endif
|
|
};
|
|
|
|
|
|
class Update_rows_log_event_old : public Update_rows_log_event
|
|
{
|
|
public:
|
|
enum
|
|
{
|
|
/* Support interface to THD::binlog_prepare_pending_rows_event */
|
|
TYPE_CODE = PRE_GA_UPDATE_ROWS_EVENT
|
|
};
|
|
|
|
#if !defined(MYSQL_CLIENT)
|
|
Update_rows_log_event_old(THD *thd, TABLE *table, ulong table_id,
|
|
MY_BITMAP const *cols, bool is_transactional)
|
|
: Update_rows_log_event(thd, table, table_id, cols, is_transactional)
|
|
{
|
|
}
|
|
#endif
|
|
#if defined(HAVE_REPLICATION)
|
|
Update_rows_log_event_old(const char *buf, uint event_len,
|
|
const Format_description_log_event *descr)
|
|
: Update_rows_log_event(buf, event_len, descr)
|
|
{
|
|
}
|
|
#endif
|
|
|
|
private:
|
|
virtual Log_event_type get_type_code() { return (Log_event_type)TYPE_CODE; }
|
|
|
|
#if !defined(MYSQL_CLIENT) && defined(HAVE_REPLICATION)
|
|
virtual int do_prepare_row(THD*, RELAY_LOG_INFO const*, TABLE*,
|
|
char const *row_start, char const **row_end);
|
|
#endif /* !defined(MYSQL_CLIENT) && defined(HAVE_REPLICATION) */
|
|
};
|
|
|
|
|
|
class Delete_rows_log_event_old : public Delete_rows_log_event
|
|
{
|
|
public:
|
|
enum
|
|
{
|
|
/* Support interface to THD::binlog_prepare_pending_rows_event */
|
|
TYPE_CODE = PRE_GA_DELETE_ROWS_EVENT
|
|
};
|
|
|
|
#if !defined(MYSQL_CLIENT)
|
|
Delete_rows_log_event_old(THD *thd, TABLE *table, ulong table_id,
|
|
MY_BITMAP const *cols, bool is_transactional)
|
|
: Delete_rows_log_event(thd, table, table_id, cols, is_transactional)
|
|
{
|
|
}
|
|
#endif
|
|
#if defined(HAVE_REPLICATION)
|
|
Delete_rows_log_event_old(const char *buf, uint event_len,
|
|
const Format_description_log_event *descr)
|
|
: Delete_rows_log_event(buf, event_len, descr)
|
|
{
|
|
}
|
|
#endif
|
|
|
|
private:
|
|
virtual Log_event_type get_type_code() { return (Log_event_type)TYPE_CODE; }
|
|
|
|
#if !defined(MYSQL_CLIENT) && defined(HAVE_REPLICATION)
|
|
virtual int do_prepare_row(THD*, RELAY_LOG_INFO const*, TABLE*,
|
|
char const *row_start, char const **row_end);
|
|
#endif
|
|
};
|
|
|
|
|
|
#endif
|
|
|