Commit 802c94dd authored by mats@mysql.com's avatar mats@mysql.com

Merge mysql.com:/home/bkroot/mysql-5.1-new

into  mysql.com:/home/bk/w3023-mysql-5.1-new
parents 89f3b9b2 4a40438e
...@@ -1230,15 +1230,23 @@ class handler :public Sql_alloc ...@@ -1230,15 +1230,23 @@ class handler :public Sql_alloc
uint get_index(void) const { return active_index; } uint get_index(void) const { return active_index; }
virtual int open(const char *name, int mode, uint test_if_locked)=0; virtual int open(const char *name, int mode, uint test_if_locked)=0;
virtual int close(void)=0; virtual int close(void)=0;
virtual int ha_write_row(byte * buf);
virtual int ha_update_row(const byte * old_data, byte * new_data); /*
virtual int ha_delete_row(const byte * buf); These functions represent the public interface to *users* of the
handler class, hence they are *not* virtual. For the inheritance
interface, see the (private) functions write_row(), update_row(),
and delete_row() below.
*/
int ha_write_row(byte * buf);
int ha_update_row(const byte * old_data, byte * new_data);
int ha_delete_row(const byte * buf);
/* /*
If the handler does it's own injection of the rows, this member function If the handler does it's own injection of the rows, this member function
should return 'true'. should return 'true'.
*/ */
virtual bool is_injective() const { return false; } virtual bool is_injective() const { return false; }
/* /*
SYNOPSIS SYNOPSIS
start_bulk_update() start_bulk_update()
...@@ -1611,28 +1619,27 @@ class handler :public Sql_alloc ...@@ -1611,28 +1619,27 @@ class handler :public Sql_alloc
{ return COMPATIBLE_DATA_NO; } { return COMPATIBLE_DATA_NO; }
private: private:
friend int ndb_add_binlog_index(THD *, void *);
/* /*
Row-level primitives for storage engines. Row-level primitives for storage engines. These should be
These should be overridden by the storage engine class. To call overridden by the storage engine class. To call these methods, use
these methods, use the corresponding 'ha_*' method above. the corresponding 'ha_*' method above.
*/ */
friend int ndb_add_binlog_index(THD *, void *); virtual int write_row(byte *buf __attribute__((unused)))
{
virtual int write_row(byte *buf __attribute__((unused))) return HA_ERR_WRONG_COMMAND;
{
return HA_ERR_WRONG_COMMAND;
} }
virtual int update_row(const byte *old_data __attribute__((unused)), virtual int update_row(const byte *old_data __attribute__((unused)),
byte *new_data __attribute__((unused))) byte *new_data __attribute__((unused)))
{ {
return HA_ERR_WRONG_COMMAND; return HA_ERR_WRONG_COMMAND;
} }
virtual int delete_row(const byte *buf __attribute__((unused))) virtual int delete_row(const byte *buf __attribute__((unused)))
{ {
return HA_ERR_WRONG_COMMAND; return HA_ERR_WRONG_COMMAND;
} }
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment