1
0
mirror of https://github.com/MariaDB/server.git synced 2025-12-07 17:42:39 +03:00
Commit Graph

2594 Commits

Author SHA1 Message Date
unknown
baaa102de5 BUG#23171 (Illegal slave restart group position):
Second patch to fix skipping code. Moving relay and binary log 
position changing code from do_apply_event [old exec_event()] into
do_update_pos() and doing other changes necessary to support that.

Fixing a bug that can cause deadlock if rotating binary log when committing
a changes to a transactional table that is not inside a transaction and
cause a rotate log.


sql/log.cc:
  Changing condition in binlog_commit() to skip calling
  binlog_end_trans() twice to match condition in binlog_end_trans().
sql/log_event.cc:
  Name change: apply_event_impl() -> do_apply_event()
  Name change: advance_coord_impl() -> do_update_pos()
  
  do_apply_event() now uses pointer to constant RELAY_LOG_INFO to prevent
  inadvertandly changing the position in the code. Doing this would make
  the skipping code loose track of where it is. All position changing code
  shall now be in do_update_pos().
  
  Factoring out relay and binary log position updating code from
  do_apply_event() [previously exec_event()] into do_update_pos().
  Using a safe approach to make it work: will refine the refactoring
  when the skipping code is implemented.
  
  Adding const casts where needed.
  
  Changing signature to use pointers to constant objects where needed.
sql/rpl_rli.cc:
  Making cached_charset_compare() const to work with constant instances of RELAY_LOG_INFO.
  
  Debriding code.
sql/rpl_rli.h:
  Making cached_charset_compare() const to work with constant instances of RELAY_LOG_INFO.
  
  Debriding code.
sql/rpl_utility.cc:
  Using pointer to const RELAY_LOG_INFO to make it work with other code.
sql/rpl_utility.h:
  Using pointer to const RELAY_LOG_INFO to make it work with other code.
sql/slave.cc:
  Using pointer to const RELAY_LOG_INFO to make it work with other code.
  
  Adding const cast where necessary.
sql/slave.h:
  Using pointer to const RELAY_LOG_INFO to make it work with other code.
2006-11-10 15:10:41 +01:00
mats@romeo.(none)
1fb9105ebd BUG#23171 (Illegal slave restart group position):
Second patch to fix skipping code. Moving relay and binary log 
position changing code from do_apply_event [old exec_event()] into
do_update_pos() and doing other changes necessary to support that.

Fixing a bug that can cause deadlock if rotating binary log when committing
a changes to a transactional table that is not inside a transaction and
cause a rotate log.
2006-11-10 15:10:41 +01:00
unknown
3763edd393 Merge mysql.com:/users/lthalmann/bkroot/mysql-5.1-new-rpl
into  mysql.com:/users/lthalmann/bk/MERGE/mysql-5.1-merge


BitKeeper/etc/collapsed:
  auto-union
include/m_ctype.h:
  Auto merged
mysql-test/r/binlog_row_mix_innodb_myisam.result:
  Auto merged
mysql-test/r/ctype_utf8.result:
  Auto merged
mysql-test/r/view.result:
  Auto merged
mysql-test/t/disabled.def:
  Auto merged
mysql-test/t/view.test:
  Auto merged
sql/Makefile.am:
  Auto merged
sql/field.cc:
  Auto merged
sql/handler.cc:
  Auto merged
sql/log.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_show.cc:
  Auto merged
sql/sql_view.cc:
  Auto merged
unittest/mytap/tap.c:
  Auto merged
sql/log_event.cc:
  manual merge
sql/sql_class.cc:
  manual merge
2006-11-07 19:26:31 +01:00
lars/lthalmann@dl145h.mysql.com
3776e9622b Merge mysql.com:/users/lthalmann/bkroot/mysql-5.1-new-rpl
into  mysql.com:/users/lthalmann/bk/MERGE/mysql-5.1-merge
2006-11-07 19:26:31 +01:00
unknown
5bf5ccff63 Merge romeo.(none):/home/bkroot/mysql-5.1-new-rpl
into  romeo.(none):/home/bk/b23171-mysql-5.1-new-rpl


sql/log.cc:
  Auto merged
sql/log_event.cc:
  Auto merged
2006-11-04 21:10:01 +01:00
mats@romeo.(none)
edb7045353 Merge romeo.(none):/home/bkroot/mysql-5.1-new-rpl
into  romeo.(none):/home/bk/b23171-mysql-5.1-new-rpl
2006-11-04 21:10:01 +01:00
unknown
cf6ec1040d Merge alik.:/mnt/raid/alik/MySQL/devel/5.1-monty
into  alik.:/mnt/raid/alik/MySQL/devel/5.1-rt-merged


mysql-test/mysql-test-run.pl:
  Auto merged
sql/ha_ndbcluster.cc:
  Auto merged
sql/handler.cc:
  Auto merged
sql/log.cc:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/sp_head.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_view.cc:
  Auto merged
sql/table.cc:
  Auto merged
server-tools/instance-manager/guardian.cc:
  Manual merged.
server-tools/instance-manager/instance.cc:
  Manual merged.
server-tools/instance-manager/mysql_connection.cc:
  Manual merged.
2006-11-03 14:00:35 +03:00
anozdrin/alik@alik.
18fb4abff4 Merge alik.:/mnt/raid/alik/MySQL/devel/5.1-monty
into  alik.:/mnt/raid/alik/MySQL/devel/5.1-rt-merged
2006-11-03 14:00:35 +03:00
unknown
b5d53f2031 After merge fix for BUG#18908 ERROR 1406 (22001): Data too long for column :: using utf8
strings/ctype-utf8.c:
  Fix for compilation warning -
  forgot to add a new structure member
  in one of the previous changes.
2006-11-03 10:18:13 +04:00
bar@mysql.com/bar.intranet.mysql.r18.ru
45ac13658b After merge fix for BUG#18908 ERROR 1406 (22001): Data too long for column :: using utf8 2006-11-03 10:18:13 +04:00
unknown
07d8be4544 Fixed a lot of compiler warnings (Mainly in mysqld and instance manager)
Fixed some possible fatal wrong arguments to printf() style functions
Initialized some not initialized variables
Fixed bug in stored procedure and continue handlers
(Fixes Bug#22150)


include/mysql/plugin.h:
  Remove compiler warning
mysql-test/mysql-test-run.pl:
  Ensure that --extern works on a clean tree (when 'var' directory doesn't exists)
server-tools/instance-manager/commands.cc:
  Fixed possible use of unitialized variable
server-tools/instance-manager/guardian.cc:
  Fixed wrong arguments to log_info() that could cause crashes
server-tools/instance-manager/instance.cc:
  Fixed wrong arguments to log_info() and log_error() that could cause crashes
server-tools/instance-manager/instance_options.cc:
  Fixed wrong arguments to log_error() that could cause crashes
server-tools/instance-manager/mysql_connection.cc:
  Fixed wrong arguments to log_info()
server-tools/instance-manager/parse.cc:
  Fixed possible use of unitialized variable
server-tools/instance-manager/user_map.cc:
  Fixed wrong arguments to log_error() that could cause crashes
sql/Makefile.am:
  Fix for bison 1.875
  (It write an __attribute__() tag that was causing compiler failures)
sql/ha_ndbcluster.cc:
  Fixed wrong snprintf() arguments
  Remoed not used variables
sql/ha_ndbcluster_binlog.cc:
  Fixed compiler warning (unsigned/signed comparision)
sql/handler.cc:
  Fixed wrong parameter to hton->binlog_func()
sql/item_cmpfunc.cc:
  Removed compiler warnings
sql/item_timefunc.cc:
  Removed compiler warnings
sql/log.cc:
  fixed wrong argument to snprintf()
sql/mysqld.cc:
  Removed compiler warnings
  Fixed wrong arguments to printf()
sql/partition_info.cc:
  Removed compiler warnings
sql/protocol.cc:
  reset is_fatal_error for stored procedures
  (Fix for Bug#22150)
sql/sp_head.cc:
  More DBUG information
  Reset is_fatal_error in case of continue handler.
  (Fix for Bug#22150)
sql/sql_base.cc:
  Removed compiler warnings
sql/sql_class.h:
  More DBUG information
sql/sql_insert.cc:
  Removed compiler warnings
  Initialize not initialized variable (fatal bug)
sql/sql_parse.cc:
  Added DBUG_ASSERT to detect if stored procedure code returns with a wrong state
  Removed compiler warning
sql/sql_plugin.cc:
  Fied wrong aruguments to printf() (Fatal bug)
sql/sql_select.cc:
  Initailize not initialized variable.
  Remove compiler warnings
  Fixed wrong argument to printf() (Possible fatal error)
sql/sql_view.cc:
  Removed compiler warnings
sql/table.cc:
  Fixed wrong argument to printf() (Possible fatal)
2006-11-01 19:41:09 +02:00
monty@mysql.com/nosik.monty.fi
ca99516cc7 Fixed a lot of compiler warnings (Mainly in mysqld and instance manager)
Fixed some possible fatal wrong arguments to printf() style functions
Initialized some not initialized variables
Fixed bug in stored procedure and continue handlers
(Fixes Bug#22150)
2006-11-01 19:41:09 +02:00
unknown
c078453f92 BUG#23171 (Illegal slave restart group position):
First patch preparing for restructuring the event execution and event
skipping. This patch renames the existing (virtual) function exec_event()
to be a primitive for implementing the real patch. Also, the virtual function
advance_coord_impl() is added to advance the binary/relay log coordinates,
and two non-virtual functions exec_event() [sic] and skip_event() is added
that will contain the business logic for executing and skipping events
respectively.


sql/log.cc:
  Renaming exec_event()
sql/log_event.cc:
  Renaming exec_event()
sql/log_event.h:
  Renaming exec_event() to apply_event_impl()
  Addng new non-virtual exec_event() that will contain business logic
  for event execution.
  Adding new non-virtual skip_event() that will contain business logic
  for skipping an event.
  Adding new virtual advance_coord_impl() as primitive to advance
  binary/relay log coordinates according to the event's needs.
2006-11-01 15:35:37 +01:00
mats@romeo.(none)
9372c38c6b BUG#23171 (Illegal slave restart group position):
First patch preparing for restructuring the event execution and event
skipping. This patch renames the existing (virtual) function exec_event()
to be a primitive for implementing the real patch. Also, the virtual function
advance_coord_impl() is added to advance the binary/relay log coordinates,
and two non-virtual functions exec_event() [sic] and skip_event() is added
that will contain the business logic for executing and skipping events
respectively.
2006-11-01 15:35:37 +01:00
unknown
e4bacda5b2 fix test failures in the runtime tree
sql/log.cc:
  NULL table pointer during initilization
sql/sql_table.cc:
  don't lock the destination table with table lock, but use name lock instead
2006-10-25 12:54:59 +04:00
petr/cps@mysql.com/owlet.local
f01df1fd0a fix test failures in the runtime tree 2006-10-25 12:54:59 +04:00
unknown
5aa81b561e Merge pchardin@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  mysql.com:/home/cps/mysql/devel/5.1-rename-bug


mysql-test/r/log_tables.result:
  Auto merged
mysql-test/t/log_tables.test:
  Auto merged
sql/handler.cc:
  Auto merged
sql/handler.h:
  Auto merged
sql/log.h:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/sql_delete.cc:
  Auto merged
sql/sql_rename.cc:
  Auto merged
sql/table.cc:
  Auto merged
storage/csv/ha_tina.cc:
  Auto merged
storage/myisam/ha_myisam.cc:
  Auto merged
sql/log.cc:
  manual merge
sql/share/errmsg.txt:
  manual merge
sql/sql_table.cc:
  manual merge
2006-10-24 17:00:23 +04:00
petr/cps@owlet.local
eda71e24c3 Merge pchardin@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  mysql.com:/home/cps/mysql/devel/5.1-rename-bug
2006-10-24 17:00:23 +04:00
unknown
9438b98519 Fix for Bug #17544 "Cannot do atomic log rotate",
Bug #21785 "Server crashes after rename of the log table" and
Bug #21966 "Strange warnings on create like/repair of the log
            tables"

According to the patch, from now on, one should use RENAME to
perform a log table rotation (this should also be reflected in
the manual).

Here is a sample:

use mysql;
CREATE TABLE IF NOT EXISTS general_log2 LIKE general_log;
RENAME TABLE general_log TO general_log_backup, general_log2 TO general_log;

The rules for Rename of the log tables are following:
      IF   1. Log tables are enabled
      AND  2. Rename operates on the log table and nothing is being
              renamed to the log table.
      DO   3. Throw an error message.
      ELSE 4. Perform rename.
 
The very RENAME query will go the the old (backup) table. This is
consistent with the behavoiur we have with binlog ROTATE LOGS
statement.

Other problems, which are solved by the patch are:

1) Now REPAIR of the log table is exclusive operation (as it should be), this
   also eliminates lock-related warnings. and
2) CREATE LIKE TABLE now usese usual read lock on the source table rather
   then name lock, which is too restrictive. This way we get rid of another
   log table-related warning, which occured because of the above fact
   (as a side-effect, name lock resulted in a warning).


mysql-test/r/log_tables.result:
  update result file
mysql-test/t/log_tables.test:
  Add tests for the bugs
sql/handler.cc:
  update comment
sql/handler.h:
  update function to reflect changes in log tables
  locking logic.
sql/lock.cc:
  Now we allow locking of the log tables for "privileged" threads
  Privileged thread must explicitly close and lock log tables. This
  is required for admin operations such as REPAIR.
sql/log.cc:
  Changes to the file:
  1) Add checks for table schema. It's more important now,
     as we allow rename of the log tables. Since we should
     check for schema when writing to a log table.
     E.g. if one created a table with one-only comlumn and
     renamed it to general_log, the server should cope with
     it.
  2) refactor LOGGER::flush(), so that we can now use the same
     machinery as we use in FLUSH LOGS in other statements:
     whenever we have to perform  a serious operation on the log
     tables, we have to
     (a) lock logger, which blocks other concurrent statements (such 
     as selects) (b) close logs. Then perform an
     exclusive operation, c) reenable logs and d) unlock logger.
  3) Add a function to check if a given table is a log table.
  4) Add support for "privileged" thread
  5) merge is_[general/slow]_log_table_enabled() into one function.
  6) Add new function: reopen _log_tables, which reopens the tables,
     which were enabled (after temporary close, required for admin
     operation)
sql/log.h:
  1) add a new call close_n_lock_tables(). Now we use it instead of
     LOGGER::flush() in FLUSH LOGS implementation.
  2) add a prototype for the function to check if a given
     table is a log table;
  3) add privileged table flag to table logger
  4) merge is_[general/slow]_log_table_enabled()
     into one function.
sql/mysql_priv.h:
  move log table defines to log.h
sql/sql_delete.cc:
  use new function check_if_log_table() instead of direct strcmp
sql/sql_rename.cc:
  Traverse the list of tables in mysql_rename_tables
  to make sure that log tables are processed correctly
  (that is, according to the rules specified in the
  main CS comment)
sql/sql_table.cc:
  1) mysql_admin_table() should disable logs if it performs
     exclusive admin operation on a log table. This way we
     also eliminate warning on REPAIR of the log table.
  2) mysql_create_like_table should read-lock the source table
     instead getting name lock on it. Name lock is too restrictive
     in this case.
sql/share/errmsg.txt:
  Add a new error message for rename of the log tables
sql/table.cc:
  use new function instead of direct strcmp.
  change my_strcasecmp() -> strcmp(), when
  comparing system db and table names
storage/csv/ha_tina.cc:
  update function to reflect changes in log tables
  locking logic.
storage/myisam/ha_myisam.cc:
  update function to reflect changes in log tables
  locking logic.
2006-10-13 17:26:46 +04:00
petr/cps@mysql.com/owlet.local
6846f8d9c4 Fix for Bug #17544 "Cannot do atomic log rotate",
Bug #21785 "Server crashes after rename of the log table" and
Bug #21966 "Strange warnings on create like/repair of the log
            tables"

According to the patch, from now on, one should use RENAME to
perform a log table rotation (this should also be reflected in
the manual).

Here is a sample:

use mysql;
CREATE TABLE IF NOT EXISTS general_log2 LIKE general_log;
RENAME TABLE general_log TO general_log_backup, general_log2 TO general_log;

The rules for Rename of the log tables are following:
      IF   1. Log tables are enabled
      AND  2. Rename operates on the log table and nothing is being
              renamed to the log table.
      DO   3. Throw an error message.
      ELSE 4. Perform rename.
 
The very RENAME query will go the the old (backup) table. This is
consistent with the behavoiur we have with binlog ROTATE LOGS
statement.

Other problems, which are solved by the patch are:

1) Now REPAIR of the log table is exclusive operation (as it should be), this
   also eliminates lock-related warnings. and
2) CREATE LIKE TABLE now usese usual read lock on the source table rather
   then name lock, which is too restrictive. This way we get rid of another
   log table-related warning, which occured because of the above fact
   (as a side-effect, name lock resulted in a warning).
2006-10-13 17:26:46 +04:00
unknown
3def506b9d ndb - fixed for BUG#15021, binlog_index table become inconsistent if errors during purge of binlogs.
if EMFILE error occured while purging binary logs, stop purging logs and report error message to user.


mysys/my_open.c:
  report EMFILE error when opening file failed.
sql/log.cc:
  report EMFILE error when purging logs, and stop purging logs when EMFILE error occured.
sql/log.h:
  added LOG_INFO_EMFILE error number.
sql/share/errmsg.txt:
  added EMFILE error message for purging binary logs.
sql/sql_repl.cc:
  added EMFILE error message.
sql/table.cc:
  report EMFILE error.
2006-10-13 12:48:05 +08:00
dli@dev3-76.dev.cn.tlan
01c02f34a9 ndb - fixed for BUG#15021, binlog_index table become inconsistent if errors during purge of binlogs.
if EMFILE error occured while purging binary logs, stop purging logs and report error message to user.
2006-10-13 12:48:05 +08:00
unknown
c34940a078 Merge mysql.com:/home/bkroot/mysql-5.1-new-rpl
into  mysql.com:/home/bk/MERGE/mysql-5.1-merge


include/my_sys.h:
  Auto merged
mysql-test/t/view.test:
  Auto merged
sql/log.cc:
  Auto merged
sql/log_event.cc:
  Auto merged
sql/share/errmsg.txt:
  Auto merged
sql/slave.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_insert.cc:
  Auto merged
storage/ndb/src/mgmapi/mgmapi.cpp:
  Auto merged
2006-10-10 21:59:23 +02:00
lars@black.(none)
0b4e65e12b Merge mysql.com:/home/bkroot/mysql-5.1-new-rpl
into  mysql.com:/home/bk/MERGE/mysql-5.1-merge
2006-10-10 21:59:23 +02:00
unknown
cc4435ad8f Fix to build on 64-bit systems where sizeof(unsigned long long)
> sizeof(unsigned long).


sql/log.cc:
  Replacing enum constant that contained an unsigned long long constant
  on some platforms with a macro (an enumeration constant is limited
  to the range of values covered by signed or unsigned long).
2006-10-06 08:41:34 +02:00
mats@romeo.(none)
cb1fdf5165 Fix to build on 64-bit systems where sizeof(unsigned long long)
> sizeof(unsigned long).
2006-10-06 08:41:34 +02:00
unknown
d9434088d3 Post-merge fixes. 2006-10-05 22:16:19 +02:00
mats@romeo.(none)
93ea3261eb Post-merge fixes. 2006-10-05 22:16:19 +02:00
unknown
55d25c9877 Merge romeo.(none):/home/bkroot/mysql-5.1-new-rpl
into  romeo.(none):/home/bk/b20265-mysql-5.1-new-rpl


sql/sql_class.h:
  Auto merged
sql/log.cc:
  Manual merge
sql/sql_insert.cc:
  Manual merge
2006-10-05 15:22:41 +02:00
mats@romeo.(none)
fe97fd4bdb Merge romeo.(none):/home/bkroot/mysql-5.1-new-rpl
into  romeo.(none):/home/bk/b20265-mysql-5.1-new-rpl
2006-10-05 15:22:41 +02:00
unknown
4e46f2db3f I had forgotten to delete an already disabled line of C++ code.
---
BUG#20265 (Replication of CREATE-SELECT does not work correctly):
Fixing bug by making binary log handle statement transactions.
The binary log transaction cache can now be truncated to remove 
events inserted during this statement or transaction. Also, the
binary log participate in XA transaction handling, although not
as a full 2pc resource.


mysql-test/r/binlog_row_mix_innodb_myisam.result:
  Result change
sql/log.cc:
  Making change to binlog_end_trans() to support that it can be called
  for statement transactions as well.
sql/sql_class.h:
  Adding function THD::binlog_start_trans_and_stmt() to start a real transaction
  (if necessary) and also a statement transaction.
sql/sql_insert.cc:
  I had forgotten to delete this line (it was already disabled using //;
  this line was not needed because we do the empty() every time
  we write to the binlog (in MYSQL_LOG::write());
  t/binlog_stm_binlog.test already tests that the empty() indeed happens
  for INSERT DELAYED.
  ---
  Changes to use the statement transactions that the binary log now can handle.
2006-10-05 10:46:14 +02:00
mats@romeo.(none)
a4e0b4e61f I had forgotten to delete an already disabled line of C++ code.
---
BUG#20265 (Replication of CREATE-SELECT does not work correctly):
Fixing bug by making binary log handle statement transactions.
The binary log transaction cache can now be truncated to remove 
events inserted during this statement or transaction. Also, the
binary log participate in XA transaction handling, although not
as a full 2pc resource.
2006-10-05 10:46:14 +02:00
unknown
76cdfbbdfe Added license information display to output of plugins schema, and tagged all plugins with GPL flag.
include/mysql/plugin.h:
  Adding license information.
plugin/fulltext/plugin_example.c:
  License
sql/ha_ndbcluster.cc:
  License
sql/ha_partition.cc:
  License
sql/handler.h:
  License
sql/log.cc:
  License
sql/sql_show.cc:
  Additional PLUIN display information
storage/archive/ha_archive.cc:
  License information added
storage/blackhole/ha_blackhole.cc:
  License information added
storage/csv/ha_tina.cc:
  License Information
storage/example/ha_example.cc:
  License information
storage/federated/ha_federated.cc:
  License Information
storage/heap/ha_heap.cc:
  License Information
storage/innobase/handler/ha_innodb.cc:
  License Information
storage/myisam/ha_myisam.cc:
  License Information
storage/myisammrg/ha_myisammrg.cc:
  License Information
2006-10-05 00:41:29 -07:00
brian@zim.(none)
faff46eefe Added license information display to output of plugins schema, and tagged all plugins with GPL flag. 2006-10-05 00:41:29 -07:00
unknown
9cd171e2dc Merge bk-internal:/home/bk/mysql-5.0
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint


sql/item_func.cc:
  Auto merged
sql/log.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
2006-10-03 20:28:59 +02:00
msvensson@neptunus.(none)
225b3e480b Merge bk-internal:/home/bk/mysql-5.0
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-10-03 20:28:59 +02:00
unknown
37b5cbdc30 Fix for the patch for bug#21726: Incorrect result with multiple
invocations of LAST_INSERT_ID.

Reding of LAST_INSERT_ID inside stored function wasn't noted by caller,
and no LAST_INSERT_ID_EVENT was issued for binary log.

The solution is to add THD::last_insert_id_used_bin_log, which is much
like THD::last_insert_id_used, but is reset only for upper-level
statements.  This new variable is used to issue LAST_INSERT_ID_EVENT.


mysql-test/r/rpl_insert_id.result:
  For bug#21726, add result for statement-based replication of function
  calls.
mysql-test/t/rpl_insert_id.test:
  For bug#21726, add test case for statement-based replication of function
  calls.
sql/item_func.cc:
  Set THD::last_insert_id_used_bin_log for issuing of LAST_INSERT_ID_EVENT.
sql/log.cc:
  Issue LAST_INSERT_ID_EVENT if THD::last_insert_id_used_bin_log is set.
sql/set_var.cc:
  Set THD::last_insert_id_used_bin_log for issuing of LAST_INSERT_ID_EVENT.
sql/sql_class.cc:
  Initialize THD::last_insert_id_used_bin_log.
  Fix typo, add whitespace.
sql/sql_class.h:
  Add THD::last_insert_id_used_bin_log.
sql/sql_parse.cc:
  Reset THD::last_insert_id_used_bin_log for upper-level statements.
sql/sql_select.cc:
  Set THD::last_insert_id_used_bin_log for issuing of LAST_INSERT_ID_EVENT.
2006-10-03 13:38:16 +04:00
kroki/tomash@moonlight.intranet
8798b462b5 Fix for the patch for bug#21726: Incorrect result with multiple
invocations of LAST_INSERT_ID.

Reding of LAST_INSERT_ID inside stored function wasn't noted by caller,
and no LAST_INSERT_ID_EVENT was issued for binary log.

The solution is to add THD::last_insert_id_used_bin_log, which is much
like THD::last_insert_id_used, but is reset only for upper-level
statements.  This new variable is used to issue LAST_INSERT_ID_EVENT.
2006-10-03 13:38:16 +04:00
unknown
4506b26d8c Merge neptunus.(none):/home/msvensson/mysql/mysql-5.1
into  neptunus.(none):/home/msvensson/mysql/mysql-5.1-new-maint


BitKeeper/etc/ignore:
  auto-union
mysql-test/r/ctype_ucs.result:
  Auto merged
mysql-test/r/func_gconcat.result:
  Auto merged
mysql-test/r/func_group.result:
  Auto merged
mysql-test/r/group_by.result:
  Auto merged
mysql-test/r/partition.result:
  Auto merged
mysql-test/r/ps.result:
  Auto merged
mysql-test/r/subselect.result:
  Auto merged
mysql-test/r/view.result:
  Auto merged
mysql-test/t/ctype_ucs.test:
  Auto merged
mysql-test/t/func_gconcat.test:
  Auto merged
mysql-test/t/ps.test:
  Auto merged
mysql-test/t/view.test:
  Auto merged
sql/field.h:
  Auto merged
sql/filesort.cc:
  Auto merged
sql/item.cc:
  Auto merged
sql/item_cmpfunc.cc:
  Auto merged
sql/item_cmpfunc.h:
  Auto merged
sql/item_sum.cc:
  Auto merged
sql/log.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/opt_range.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_view.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
storage/innobase/handler/ha_innodb.cc:
  Auto merged
storage/innobase/handler/ha_innodb.h:
  Auto merged
storage/myisam/mi_check.c:
  Auto merged
sql/share/errmsg.txt:
  Manul merge(conflict with new german text)
sql/unireg.cc:
  Manual merge(as it is in 5.1)
2006-10-03 09:28:44 +02:00
msvensson@neptunus.(none)
ca21b57992 Merge neptunus.(none):/home/msvensson/mysql/mysql-5.1
into  neptunus.(none):/home/msvensson/mysql/mysql-5.1-new-maint
2006-10-03 09:28:44 +02:00
unknown
d026ddbad5 Merge tsmith@bk-internal.mysql.com:/home/bk/mysql-5.1-maint
into  siva.hindu.god:/usr/home/tim/m/bk/wl3516/51


sql/log.cc:
  Auto merged
2006-10-02 13:42:30 -06:00
tsmith/tim@siva.hindu.god
4c6dc3c461 Merge tsmith@bk-internal.mysql.com:/home/bk/mysql-5.1-maint
into  siva.hindu.god:/usr/home/tim/m/bk/wl3516/51
2006-10-02 13:42:30 -06:00
unknown
76b8386550 This patch adds handlerton passing to functions. NDB and Innodb still require a global hanlderton in the main code due to the nature of the sql_cache call back function (should be solveable... another patch).
Partitioning now has a flag to allow disabling of engines from being compatible with partitioning. Cleaned up heap naming convention on panic call. 


include/heap.h:
  Added new function
sql/ha_ndbcluster.cc:
  Updated hanlderton functions
sql/ha_ndbcluster_binlog.cc:
  Updated handlerton functions.
sql/handler.cc:
  Updated handlerton functions.
sql/handler.h:
  Updated hanlderton functions
sql/log.cc:
  Updated handlerton functions
sql/mysql_priv.h:
  Updated handlerton functions
sql/mysqld.cc:
  Added Legacy handlerton functions
sql/partition_info.cc:
  Added flag support for marking engines not compatible with partitioning
sql/sql_cursor.cc:
  Updated hanlderton functions
sql/sql_show.cc:
  Updated hanlderton functions
sql/sql_tablespace.cc:
  Update for handlerton functions
storage/archive/ha_archive.cc:
  Update for hanlderton functions
storage/archive/ha_archive.h:
  Update for handlerton functions
storage/blackhole/ha_blackhole.cc:
  Update for handlerton functions
storage/csv/ha_tina.cc:
  Update for handlerton functions
storage/csv/ha_tina.h:
  Update for handlerton functions
storage/federated/ha_federated.cc:
  Updated for handlerton functions
storage/federated/ha_federated.h:
  Updated for handlerton functions
storage/heap/ha_heap.cc:
  Update for handlerton functions
storage/heap/hp_panic.c:
  Update of function name
storage/heap/hp_test1.c:
  Update of function name
storage/heap/hp_test2.c:
  Update of function name.
storage/innobase/handler/ha_innodb.cc:
  Update of function name
storage/innobase/handler/ha_innodb.h:
  Update of function name
storage/myisam/ha_myisam.cc:
  Update of function name.
storage/myisammrg/ha_myisammrg.cc:
  Update of function name
2006-09-30 12:49:46 -07:00
brian@zim.(none)
46ae2113ba This patch adds handlerton passing to functions. NDB and Innodb still require a global hanlderton in the main code due to the nature of the sql_cache call back function (should be solveable... another patch).
Partitioning now has a flag to allow disabling of engines from being compatible with partitioning. Cleaned up heap naming convention on panic call.
2006-09-30 12:49:46 -07:00
unknown
ea1afa371c Merge siva.hindu.god:/usr/home/tim/m/bk/wl3516/50
into  siva.hindu.god:/usr/home/tim/m/bk/wl3516/51


client/mysql.cc:
  Manual merge
sql/log.cc:
  Manual merge
2006-09-29 14:12:57 -06:00
tsmith/tim@siva.hindu.god
5ceadf8987 Merge siva.hindu.god:/usr/home/tim/m/bk/wl3516/50
into  siva.hindu.god:/usr/home/tim/m/bk/wl3516/51
2006-09-29 14:12:57 -06:00
unknown
c7f7ff9e62 WL #3516: MySQL Enterprise: implement Version Display Specification
Print version_comment after server version in:
mysql.cc:  Welcome message and 'status' command output
log.cc: Top of log files


client/mysql.cc:
  Add server_version_string() function to return a buffer with the server version and version_comment combined.
  Use server_version_string() instead of mysql_get_server_info() for Welcome! message and 'status' command
sql/log.cc:
  MYSQL_LOG::open():
  - print MYSQL_COMPILATION_COMMENT after the server_version at the top of log files
2006-09-29 12:52:48 -06:00
tsmith/tim@siva.hindu.god
b7d0ec2422 WL #3516: MySQL Enterprise: implement Version Display Specification
Print version_comment after server version in:
mysql.cc:  Welcome message and 'status' command output
log.cc: Top of log files
2006-09-29 12:52:48 -06:00
unknown
62c30cd5d3 Merge zim.(none):/home/brian/mysql/merge-5.1
into  zim.(none):/home/brian/mysql/arch-5.1


sql/ha_ndbcluster.cc:
  Auto merged
sql/log.cc:
  Auto merged
storage/innobase/handler/ha_innodb.cc:
  Auto merged
2006-09-26 22:51:53 -07:00
brian@zim.(none)
4bce203fdf Merge zim.(none):/home/brian/mysql/merge-5.1
into  zim.(none):/home/brian/mysql/arch-5.1
2006-09-26 22:51:53 -07:00