Commit b25d5cff authored by Shubhangi Garg's avatar Shubhangi Garg

Bug#16607258 :Linker Errors Due To Inclusion Of An Implementation File

                           In log_event.h
      
DESCRIPTION:
Due to inclusion of an implementation file, namely 'rpl_tblmap.cc'
in a header file, namely 'log_event.h'; linker errors occur if
log_event.h is included in an application containing multiple source
files, such as in the case of Binlog API.
      
Binlog API requires including log_event.h in its source files;
which leads to multiple definition errors, for functions defined
in rpl_tblmap.cc for class 'table_mapping'.
            
FIX:
Change the inclusion from header file(log_event.h) to source files
using this header and have flag MYSQL_CLIENT set. The only file in
the current server repository is mysqlbinlog.cc.

client/mysqlbinlog.cc:
  Pulled in code of rpl_tblmap.cc
sql/log_event.h:
  Removed inclusion of the implementation file from this header file
parent 0d31c13e
...@@ -2225,3 +2225,4 @@ int main(int argc, char** argv) ...@@ -2225,3 +2225,4 @@ int main(int argc, char** argv)
#include "log_event.cc" #include "log_event.cc"
#include "log_event_old.cc" #include "log_event_old.cc"
#include "rpl_utility.cc" #include "rpl_utility.cc"
#include "rpl_tblmap.cc"
...@@ -40,7 +40,6 @@ ...@@ -40,7 +40,6 @@
#include "rpl_utility.h" #include "rpl_utility.h"
#include "hash.h" #include "hash.h"
#include "rpl_tblmap.h" #include "rpl_tblmap.h"
#include "rpl_tblmap.cc"
#endif #endif
#ifdef MYSQL_SERVER #ifdef MYSQL_SERVER
......
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