diff options
author | guilhem@mysql.com <> | 2004-01-30 00:05:34 +0100 |
---|---|---|
committer | guilhem@mysql.com <> | 2004-01-30 00:05:34 +0100 |
commit | e71325caf95afbaaacac3581f38b0eafd2116620 (patch) | |
tree | 86a549cfea46d66ac122b39922323a8bd8a9e317 /include/heap.h | |
parent | 5ce227e78a2bc0530c3cab2cbebdd4672a0c40c1 (diff) | |
download | mariadb-git-e71325caf95afbaaacac3581f38b0eafd2116620.tar.gz |
Fix for BUG#2477 "Slave stop with error after master reboot if use HEAP tables":
when we open the HEAP table for the first time since server restart,
in hp_open(), we set a flag to propagate this info to the handler level
which then writes a DELETE FROM this_heap_table to the binlog.
It is not a perfect solution for the bug, because between the server start and
the first open of the table, the slave still had old data in his table so
a SELECT on the slave may show wrong content. But if there is a --init-file
to populate the HEAP table on master as startup, then this is a safe fix
(I'll put a note about init-file in the HEAP section of the manual).
Diffstat (limited to 'include/heap.h')
-rw-r--r-- | include/heap.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/heap.h b/include/heap.h index 02b04e2b3ec..ed023133469 100644 --- a/include/heap.h +++ b/include/heap.h @@ -47,6 +47,7 @@ typedef struct st_heapinfo /* Struct from heap_info */ ulong index_length; uint reclength; /* Length of one record */ int errkey; + my_bool implicit_emptied; } HEAPINFO; @@ -126,6 +127,7 @@ typedef struct st_heap_info int mode; /* Mode of file (READONLY..) */ uint opt_flag,update; byte *lastkey; /* Last used key with rkey */ + my_bool implicit_emptied; #ifdef THREAD THR_LOCK_DATA lock; #endif |