1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-18 23:03:28 +03:00
Commit Graph

26109 Commits

Author SHA1 Message Date
d86c8af30e Automerge. 2009-02-23 14:53:51 +02:00
8ae8162403 Manual merge to 5.1. 2009-02-23 14:42:31 +02:00
0e62c9aa63 Fix for bug #15936: "round" differs on Windows to Unix
Both of our own implementations of rint(3) were inconsistent with the
most common behavior of rint() on those platforms that have it: round
to nearest, break ties by rounding to nearest even.

Fixed by leaving just one implementation of rint() in our source tree,
and changing its behavior to match the most common native
implementations on other platforms.

configure.in:
  Added checks for fenv.h and fesetround().
include/config-win.h:
  Removed the incorrect implementation of rint() for Windows.
include/my_global.h:
  Added an rint() implementation for platforms that do not have it.
mysql-test/r/func_math.result:
  Added a test case for bug #15936.
mysql-test/t/func_math.test:
  Added a test case for bug #15936.
sql/mysqld.cc:
  Explicitly set the FPU rounding mode with fesetround().
2009-02-23 14:28:26 +02:00
ec3decf610 auto-merge 2009-02-23 13:14:17 +01:00
c1d73f3350 auto-merge 2009-02-23 12:53:04 +01:00
8f3f7992a0 merge 2009-02-23 16:49:22 +08:00
2b3dfbc176 merge 2009-02-23 16:29:39 +08:00
9fc083bd9a Post-merge fix: test depends on feature not available under embedded.
mysql-test/t/query_cache_28249.test:
  Test depends on process state (not updated under embedded)
2009-02-23 09:03:31 +01:00
61d706a4f0 Bug#40013 mixed replication: row based format could lead to stale tmp tables on the
slave.

In mixed mode, if we create a temporary table and do some update which switch to ROW format,
the format will keep in ROW format until the session ends or the table is dropped explicitly. 
When the session ends, the temp table is dropped automaticly at cleanup time.
but it checks only current binlog format and so skip insertion of DROP TABLE instructions into binlog.
So the temp table can't be dropped correctly at slave.

Our solution is that when closing temp tables at cleanup time we check both binlog format and binlog mode,
and we could write DROP TABLE instructions into binlog if current binlog format is ROW but in MIX mode.

mysql-test/suite/rpl/r/rpl_temp_table_mix_row.result:
  Test result file.
mysql-test/suite/rpl/t/rpl_temp_table_mix_row.test:
  Test file.
sql/sql_base.cc:
  Didn't do binloging when both current format and default format are ROW.
2009-02-23 11:26:38 +08:00
d822ab8957 BUG#38174 secure-file-priv breaks LOAD DATA INFILE replication in statement mode
If secure-file-priv was set on slave, it became unable to execute
LOAD DATA INFILE statements sent from master using mixed or
statement-based replication.
                  
This patch fixes the issue by ignoring this security restriction
and checking if the files are created and read by the slave in the
--slave-load-tmpdir while executing the SQL Thread.
2009-02-21 09:36:07 +00:00
9b36597ac1 merge 2009-02-20 17:02:02 +01:00
e7e5443a01 Backport of patch for bug#40003 from 6.0 to 5.1,
related to the backport of the patch for bug#38719

sql/ha_partition.cc:
  bug#40003, archive does not handle dup_key.
2009-02-20 16:56:32 +01:00
fb20a7d6d0 automerge 2009-02-20 08:40:28 -05:00
11a206a37c auto merge 2009-02-20 08:37:07 -05:00
19b650ee6c branches/zip:
Merge revisions 4035:4261 from branches/5.1:

  ------------------------------------------------------------------------
  r4065 | sunny | 2009-01-29 16:01:36 +0200 (Thu, 29 Jan 2009) | 8 lines
  Changed paths:
     M /branches/5.1/handler/ha_innodb.cc
     M /branches/5.1/mysql-test/innodb-autoinc.result
     M /branches/5.1/mysql-test/innodb-autoinc.test
  
  branches/5.1: In the last round of AUTOINC cleanup we assumed that AUTOINC
  is only defined for integer columns. This caused an assertion failure when
  we checked for the maximum value of a column type. We now calculate the
  max value for floating-point autoinc columns too.
  
  Fix Bug#42400 - InnoDB autoinc code can't handle floating-point columns
  rb://84 and Mantis issue://162
  
  ------------------------------------------------------------------------
  r4111 | sunny | 2009-02-03 22:06:52 +0200 (Tue, 03 Feb 2009) | 2 lines
  Changed paths:
     M /branches/5.1/handler/ha_innodb.cc
  
  branches/5.1: Add the ULL suffix otherwise there is an overflow.
  
  ------------------------------------------------------------------------
  r4128 | vasil | 2009-02-08 21:36:45 +0200 (Sun, 08 Feb 2009) | 18 lines
  Changed paths:
     M /branches/5.1/mysql-test/innodb-autoinc.result
     M /branches/5.1/mysql-test/innodb-autoinc.test
  
  branches/5.1:
  
  Merge a change from MySQL:
  
    ------------------------------------------------------------
    revno: 2709.20.31
    committer: Timothy Smith <timothy.smith@sun.com>
    branch nick: 51
    timestamp: Fri 2008-12-19 01:28:51 +0100
    message:
      Disable part of innodb-autoinc.test, because the MySQL server asserts when
      compiled --with-debug, due to bug 39828, "autoinc wraps around when offset and
      increment > 1".  This change should be reverted when that bug is fixed (and a
      a few other minor changes to the test as described in comments).
    modified:
      mysql-test/r/innodb-autoinc.result
      mysql-test/t/innodb-autoinc.test
  
  ------------------------------------------------------------------------
  r4129 | vasil | 2009-02-08 21:54:25 +0200 (Sun, 08 Feb 2009) | 310 lines
  Changed paths:
     M /branches/5.1/mysql-test/innodb-autoinc.test
  
  branches/5.1:
  
  Merge a change from MySQL:
  
  [looks like the changes to innodb-autoinc.test were made as part of
  the following huge merge, but we are merging only changes to that file]
  
    ------------------------------------------------------------
    revno: 2546.47.1
    committer: Luis Soares <luis.soares@sun.com>
    branch nick: 5.1-rpl
    timestamp: Fri 2009-01-23 13:22:05 +0100
    message:
      merge: 5.1 -> 5.1-rpl
      conflicts:
        Text conflict in client/mysqltest.cc
        Text conflict in mysql-test/include/wait_until_connected_again.inc
        Text conflict in mysql-test/lib/mtr_report.pm
        Text conflict in mysql-test/mysql-test-run.pl
        Text conflict in mysql-test/r/events_bugs.result
        Text conflict in mysql-test/r/log_state.result
        Text conflict in mysql-test/r/myisam_data_pointer_size_func.result
        Text conflict in mysql-test/r/mysqlcheck.result
        Text conflict in mysql-test/r/query_cache.result
        Text conflict in mysql-test/r/status.result
        Text conflict in mysql-test/suite/binlog/r/binlog_index.result
        Text conflict in mysql-test/suite/binlog/r/binlog_innodb.result
        Text conflict in mysql-test/suite/rpl/r/rpl_packet.result
        Text conflict in mysql-test/suite/rpl/t/rpl_packet.test
        Text conflict in mysql-test/t/disabled.def
        Text conflict in mysql-test/t/events_bugs.test
        Text conflict in mysql-test/t/log_state.test
        Text conflict in mysql-test/t/myisam_data_pointer_size_func.test
        Text conflict in mysql-test/t/mysqlcheck.test
        Text conflict in mysql-test/t/query_cache.test
        Text conflict in mysql-test/t/rpl_init_slave_func.test
        Text conflict in mysql-test/t/status.test
    removed:
      mysql-test/suite/parts/r/partition_bit_ndb.result
      mysql-test/suite/parts/t/partition_bit_ndb.test
      mysql-test/suite/parts/t/partition_sessions.test
      mysql-test/suite/sys_vars/inc/tmp_table_size_basic.inc
      mysql-test/suite/sys_vars/r/tmp_table_size_basic_32.result
      mysql-test/suite/sys_vars/r/tmp_table_size_basic_64.result
      mysql-test/suite/sys_vars/t/tmp_table_size_basic_32.test
      mysql-test/suite/sys_vars/t/tmp_table_size_basic_64.test
      mysql-test/t/log_bin_trust_function_creators_func-master.opt
      mysql-test/t/rpl_init_slave_func-slave.opt
    added:
      mysql-test/include/check_events_off.inc
      mysql-test/include/cleanup_fake_relay_log.inc
      mysql-test/include/have_simple_parser.inc
      mysql-test/include/no_running_event_scheduler.inc
      mysql-test/include/no_running_events.inc
      mysql-test/include/running_event_scheduler.inc
      mysql-test/include/setup_fake_relay_log.inc
      mysql-test/include/wait_condition_sp.inc
      mysql-test/r/fulltext_plugin.result
      mysql-test/r/have_simple_parser.require
      mysql-test/r/innodb_bug38231.result
      mysql-test/r/innodb_bug39438.result
      mysql-test/r/innodb_mysql_rbk.result
      mysql-test/r/partition_innodb_semi_consistent.result
      mysql-test/r/query_cache_28249.result
      mysql-test/r/status2.result
      mysql-test/std_data/bug40482-bin.000001
      mysql-test/suite/binlog/r/binlog_innodb_row.result
      mysql-test/suite/binlog/t/binlog_innodb_row.test
      mysql-test/suite/rpl/r/rpl_binlog_corruption.result
      mysql-test/suite/rpl/t/rpl_binlog_corruption-master.opt
      mysql-test/suite/rpl/t/rpl_binlog_corruption.test
      mysql-test/suite/sys_vars/r/tmp_table_size_basic.result
      mysql-test/suite/sys_vars/t/tmp_table_size_basic.test
      mysql-test/t/fulltext_plugin-master.opt
      mysql-test/t/fulltext_plugin.test
      mysql-test/t/innodb_bug38231.test
      mysql-test/t/innodb_bug39438-master.opt
      mysql-test/t/innodb_bug39438.test
      mysql-test/t/innodb_mysql_rbk-master.opt
      mysql-test/t/innodb_mysql_rbk.test
      mysql-test/t/partition_innodb_semi_consistent-master.opt
      mysql-test/t/partition_innodb_semi_consistent.test
      mysql-test/t/query_cache_28249.test
      mysql-test/t/status2.test
    renamed:
      mysql-test/suite/funcs_1/r/is_collation_character_set_applicability.result => mysql-test/suite/funcs_1/r/is_coll_char_set_appl.result
      mysql-test/suite/funcs_1/t/is_collation_character_set_applicability.test => mysql-test/suite/funcs_1/t/is_coll_char_set_appl.test
    modified:
      .bzr-mysql/default.conf
      CMakeLists.txt
      client/mysql.cc
      client/mysql_upgrade.c
      client/mysqlcheck.c
      client/mysqltest.cc
      configure.in
      extra/resolve_stack_dump.c
      extra/yassl/include/openssl/ssl.h
      include/config-win.h
      include/m_ctype.h
      include/my_global.h
      mysql-test/extra/binlog_tests/database.test
      mysql-test/extra/rpl_tests/rpl_auto_increment.test
      mysql-test/include/commit.inc
      mysql-test/include/have_32bit.inc
      mysql-test/include/have_64bit.inc
      mysql-test/include/index_merge1.inc
      mysql-test/include/linux_sys_vars.inc
      mysql-test/include/windows_sys_vars.inc
      mysql-test/lib/mtr_report.pm
      mysql-test/mysql-test-run.pl
      mysql-test/r/alter_table.result
      mysql-test/r/commit_1innodb.result
      mysql-test/r/create.result
      mysql-test/r/csv.result
      mysql-test/r/ctype_ucs.result
      mysql-test/r/date_formats.result
      mysql-test/r/events_bugs.result
      mysql-test/r/events_scheduling.result
      mysql-test/r/fulltext.result
      mysql-test/r/func_if.result
      mysql-test/r/func_in.result
      mysql-test/r/func_str.result
      mysql-test/r/func_time.result
      mysql-test/r/grant.result
      mysql-test/r/index_merge_myisam.result
      mysql-test/r/information_schema.result
      mysql-test/r/innodb-autoinc.result
      mysql-test/r/innodb.result
      mysql-test/r/innodb_mysql.result
      mysql-test/r/log_bin_trust_function_creators_func.result
      mysql-test/r/log_state.result
      mysql-test/r/myisampack.result
      mysql-test/r/mysql.result
      mysql-test/r/mysqlcheck.result
      mysql-test/r/partition_datatype.result
      mysql-test/r/partition_mgm.result
      mysql-test/r/partition_pruning.result
      mysql-test/r/query_cache.result
      mysql-test/r/read_buffer_size_basic.result
      mysql-test/r/read_rnd_buffer_size_basic.result
      mysql-test/r/rpl_init_slave_func.result
      mysql-test/r/select.result
      mysql-test/r/status.result
      mysql-test/r/strict.result
      mysql-test/r/temp_table.result
      mysql-test/r/type_bit.result
      mysql-test/r/type_date.result
      mysql-test/r/type_float.result
      mysql-test/r/warnings_engine_disabled.result
      mysql-test/r/xml.result
      mysql-test/suite/binlog/r/binlog_database.result
      mysql-test/suite/binlog/r/binlog_index.result
      mysql-test/suite/binlog/r/binlog_innodb.result
      mysql-test/suite/binlog/r/binlog_row_mix_innodb_myisam.result
      mysql-test/suite/binlog/t/binlog_innodb.test
      mysql-test/suite/funcs_1/r/is_columns_is.result
      mysql-test/suite/funcs_1/r/is_engines.result
      mysql-test/suite/funcs_1/r/storedproc.result
      mysql-test/suite/funcs_1/storedproc/param_check.inc
      mysql-test/suite/funcs_2/t/disabled.def
      mysql-test/suite/ndb/t/disabled.def
      mysql-test/suite/parts/r/partition_bit_innodb.result
      mysql-test/suite/parts/r/partition_bit_myisam.result
      mysql-test/suite/parts/r/partition_special_innodb.result
      mysql-test/suite/parts/t/disabled.def
      mysql-test/suite/parts/t/partition_special_innodb.test
      mysql-test/suite/parts/t/partition_value_innodb.test
      mysql-test/suite/parts/t/partition_value_myisam.test
      mysql-test/suite/parts/t/partition_value_ndb.test
      mysql-test/suite/rpl/r/rpl_auto_increment.result
      mysql-test/suite/rpl/r/rpl_packet.result
      mysql-test/suite/rpl/r/rpl_row_create_table.result
      mysql-test/suite/rpl/r/rpl_slave_skip.result
      mysql-test/suite/rpl/r/rpl_trigger.result
      mysql-test/suite/rpl/t/disabled.def
      mysql-test/suite/rpl/t/rpl_packet.test
      mysql-test/suite/rpl/t/rpl_row_create_table.test
      mysql-test/suite/rpl/t/rpl_slave_skip.test
      mysql-test/suite/rpl/t/rpl_trigger.test
      mysql-test/suite/rpl_ndb/t/disabled.def
      mysql-test/suite/sys_vars/inc/key_buffer_size_basic.inc
      mysql-test/suite/sys_vars/inc/sort_buffer_size_basic.inc
      mysql-test/suite/sys_vars/r/key_buffer_size_basic_32.result
      mysql-test/suite/sys_vars/r/key_buffer_size_basic_64.result
      mysql-test/suite/sys_vars/r/sort_buffer_size_basic_32.result
      mysql-test/suite/sys_vars/r/sort_buffer_size_basic_64.result
      mysql-test/t/alter_table.test
      mysql-test/t/create.test
      mysql-test/t/csv.test
      mysql-test/t/ctype_ucs.test
      mysql-test/t/date_formats.test
      mysql-test/t/disabled.def
      mysql-test/t/events_bugs.test
      mysql-test/t/events_scheduling.test
      mysql-test/t/fulltext.test
      mysql-test/t/func_if.test
      mysql-test/t/func_in.test
      mysql-test/t/func_str.test
      mysql-test/t/func_time.test
      mysql-test/t/grant.test
      mysql-test/t/information_schema.test
      mysql-test/t/innodb-autoinc.test
      mysql-test/t/innodb.test
      mysql-test/t/innodb_mysql.test
      mysql-test/t/log_bin_trust_function_creators_func.test
      mysql-test/t/log_state.test
      mysql-test/t/myisam_data_pointer_size_func.test
      mysql-test/t/myisampack.test
      mysql-test/t/mysql.test
      mysql-test/t/mysqlcheck.test
      mysql-test/t/partition_innodb_stmt.test
      mysql-test/t/partition_mgm.test
      mysql-test/t/partition_pruning.test
      mysql-test/t/query_cache.test
      mysql-test/t/rpl_init_slave_func.test
      mysql-test/t/select.test
      mysql-test/t/status.test
      mysql-test/t/strict.test
      mysql-test/t/temp_table.test
      mysql-test/t/type_bit.test
      mysql-test/t/type_date.test
      mysql-test/t/type_float.test
      mysql-test/t/warnings_engine_disabled.test
      mysql-test/t/xml.test
      mysys/my_getopt.c
      mysys/my_init.c
      scripts/mysql_install_db.sh
      sql-common/my_time.c
      sql/field.cc
      sql/field.h
      sql/filesort.cc
      sql/ha_partition.cc
      sql/ha_partition.h
      sql/item.cc
      sql/item_cmpfunc.cc
      sql/item_func.h
      sql/item_strfunc.cc
      sql/item_sum.cc
      sql/item_timefunc.cc
      sql/item_timefunc.h
      sql/log.cc
      sql/log.h
      sql/log_event.cc
      sql/log_event.h
      sql/mysql_priv.h
      sql/mysqld.cc
      sql/opt_range.cc
      sql/partition_info.cc
      sql/repl_failsafe.cc
      sql/rpl_constants.h
      sql/set_var.cc
      sql/slave.cc
      sql/spatial.h
      sql/sql_acl.cc
      sql/sql_base.cc
      sql/sql_binlog.cc
      sql/sql_class.h
      sql/sql_cursor.cc
      sql/sql_delete.cc
      sql/sql_lex.cc
      sql/sql_lex.h
      sql/sql_locale.cc
      sql/sql_parse.cc
      sql/sql_partition.cc
      sql/sql_plugin.cc
      sql/sql_plugin.h
      sql/sql_profile.cc
      sql/sql_repl.cc
      sql/sql_select.cc
      sql/sql_select.h
      sql/sql_show.cc
      sql/sql_table.cc
      sql/sql_trigger.cc
      sql/sql_trigger.h
      sql/table.cc
      sql/table.h
      sql/unireg.cc
      storage/csv/ha_tina.cc
      storage/federated/ha_federated.cc
      storage/heap/ha_heap.cc
      storage/innobase/Makefile.am
      storage/innobase/btr/btr0sea.c
      storage/innobase/buf/buf0lru.c
      storage/innobase/dict/dict0dict.c
      storage/innobase/dict/dict0mem.c
      storage/innobase/handler/ha_innodb.cc
      storage/innobase/handler/ha_innodb.h
      storage/innobase/include/btr0sea.h
      storage/innobase/include/dict0dict.h
      storage/innobase/include/dict0mem.h
      storage/innobase/include/ha_prototypes.h
      storage/innobase/include/lock0lock.h
      storage/innobase/include/row0mysql.h
      storage/innobase/include/sync0sync.ic
      storage/innobase/include/ut0ut.h
      storage/innobase/lock/lock0lock.c
      storage/innobase/os/os0file.c
      storage/innobase/plug.in
      storage/innobase/row/row0mysql.c
      storage/innobase/row/row0sel.c
      storage/innobase/srv/srv0srv.c
      storage/innobase/srv/srv0start.c
      storage/innobase/ut/ut0ut.c
      storage/myisam/ft_boolean_search.c
      strings/ctype.c
      strings/xml.c
      tests/mysql_client_test.c
      win/configure.js
      mysql-test/suite/funcs_1/t/is_coll_char_set_appl.test
  
  ------------------------------------------------------------------------
  r4165 | calvin | 2009-02-12 01:34:27 +0200 (Thu, 12 Feb 2009) | 1 line
  Changed paths:
     M /branches/5.1/handler/ha_innodb.cc
  
  branches/5.1: minor non-functional changes.
  ------------------------------------------------------------------------
2009-02-20 12:56:59 +00:00
4712e6b9b8 Bug #37313 BINLOG Contains Incorrect server id
Signed integer format specifier forced to print the binlog header with server_id
negative if the unsigned value sets the sign-bit ON.
  
Fixed with correcting the specifier to correspond to typeof(server_id) == ulong.

mysql-test/r/mysqlbinlog.result:
  results changed.
mysql-test/t/mysqlbinlog.test:
  displaying the expected unsignedly formatted server_id value, bug#37313.
sql/log_event.cc:
  Format specifier is corrected to correspond to typeof(server_id).
2009-02-20 13:55:43 +02:00
9eaa51099c merge of updated 51-bugteam before pushing... 2009-02-20 11:45:57 +01:00
330f9fb5a5 merge into an updated 5.1-bugteam. 2009-02-20 11:21:45 +01:00
30bb35bcda auto merge 2009-02-20 11:57:33 +02:00
1f6d6fa905 merged 5.0-bugteam -> 5.1-bugteam 2009-02-20 11:50:50 +02:00
3d156e223e pre push test result update for bug#38719
Updated with the correct error message.
2009-02-20 10:27:32 +01:00
a67725ac75 Bug #42419: test suite fix
Moved the test case for the bug into a separate file (and restored the 
original innodb_mysql test setup).
Used the new wait_show_condition test macro to avoid the usage of sleep

mysql-test/include/wait_show_condition.inc:
  Bug #42419: new test macro to wait for a row in SHOW to have a certain value.
mysql-test/r/innodb_bug42419.result:
  Bug #42419: test case
mysql-test/r/innodb_mysql.result:
  Bug #42419: revert to the original innodb_mysql test
mysql-test/t/innodb_bug42419.test:
  Bug #42419: test case
mysql-test/t/innodb_mysql-master.opt:
  Bug #42419: revert to the original innodb_mysql test
mysql-test/t/innodb_mysql.test:
  Bug #42419: revert to the original innodb_mysql test
2009-02-20 11:12:06 +02:00
e9b4b536f3 merge 5.0 -> 5.1
These are only 5.0's fixes being merged.
5.1 and 6.0 Unix-removals will occur in different patches.
2009-02-19 18:24:25 -05:00
cf571967ad Bug#38831: 11 test cases fail on Windows due to missing commands
Re-enabling mysqlbinlog.test on Windows - removed the use of grep/sed
2009-02-19 16:35:29 -05:00
664bb23a30 Bug#41098: Query Cache returns wrong result with concurrent insert
The problem is that select queries executed concurrently with
a concurrent insert on a MyISAM table could be cached if the
select started after the query cache invalidation but before
the unlock of tables performed by the concurrent insert. This
race could happen because the concurrent insert was failing
to prevent cache of select queries happening at the same time.

The solution is to add a 'uncacheable' status flag to signal
that a concurrent insert is being performed on the table and
that queries executing at the same time shouldn't cache the
results.

mysql-test/r/query_cache_debug.result:
  Add test case result for Bug#41098
mysql-test/t/disabled.def:
  Re-enable test case.
mysql-test/t/query_cache_debug.test:
  Add test case for Bug#41098
sql/sql_cache.cc:
  Debug sync point for regression testing purposes.
sql/sql_insert.cc:
  Remove meaningless query cache invalidate. There is already
  a preceding invalidate for queries that started before the
  concurrent insert.
storage/myisam/ha_myisam.cc:
  Check for a active concurrent insert.
storage/myisam/mi_locking.c:
  Signal the start of a concurrent insert. Flag is zeroed once
  the state is updated back.
storage/myisam/myisamdef.h:
  Add flag to signal a active concurrent insert.
2009-02-19 18:09:35 -03:00
8e8c5bbe7a merge 5.1 2009-02-19 23:49:45 +03:00
79300d6f7f Bug#38831: 11 test cases fail on Windows due to missing commands
Replaced Unix calls with mysql-test-run's built-in functions / SQL manipulation where possible.
Replaced error codes with error names as well.
Disabled two tests on Windows due to more complex Unix command usage
See Bug#41307, Bug#41308
2009-02-19 15:37:40 -05:00
b86dc86ee9 Bug#41423.
1. Constant values of binlog positions replaced by seeking them in binlog/relay log.
2. Updated result file
2009-02-19 23:29:12 +03:00
901427b241 merged 5.0-bugteam -> 5.1-bugteam 2009-02-19 20:30:05 +02:00
99d1cdcb11 manual merge 2009-02-19 18:22:28 +01:00
4a3f5b2b20 Bug#33550: mysqldump 4.0 compatibility broken
mysqldump included character_set_client magic
that is unknown before 4.1 even when asked for
an appropriate compatibility mode.

In compatibility (3.23, 4.0) mode, we do not
output charset statements (not even in a
"comment conditional"), nor do we do magic on
the server, even if the server is sufficient
new (4.1+). Table-names will be output converted
to the charset requested by mysqldump; if such
a conversion is not possible (Ivrit -> Latin),
mysqldump will fail.
2009-02-19 17:33:28 +01:00
cf42f6689f merged bug 42419 to 5.0-bugteam 2009-02-19 18:26:19 +02:00
29476d879f Bug #42419: Server crash with "Pure virtual method called" on two concurrent
connections
The problem is that tables can enter open table cache for a thread without 
being properly cleaned up. This can happen if make_join_statistics() fails 
to read a const table because of e.g. a deadlock. It does set a member of 
TABLE structure to a value it allocates, but doesn't clean-up this setting 
on error nor does it set the rest of the members in JOIN to allow for 
automatic cleanup.
As a result when such an error occurs and the next statement depends re-uses 
the table from the open tables cache it will get it with this 
TABLE::reginfo.join_tab pointing to a memory area that's freed.
Fixed by making sure make_join_statistics() cleans up TABLE::reginfo.join_tab 
on error.

mysql-test/r/innodb_mysql.result:
  Bug #42419: test case
mysql-test/t/innodb_mysql-master.opt:
  Bug #42419: increase the timeout so it covers te conservative 
  sleep 3 in the test
mysql-test/t/innodb_mysql.test:
  Bug #42419: test case
sql/sql_select.cc:
  Bug #42419: clean up the members of TABLE on failure in 
          make_join_statisitcs()
2009-02-19 17:30:03 +02:00
e89fddc636 automerge 2009-02-19 18:52:49 +04:00
fafeaf460b 5.0-bugteam->5.1-bugteam merge 2009-02-19 17:59:00 +04:00
c2e23208ef Bug#37601 Cast Is Not Done On Row Comparison
In case of ROW item each compared pair does not
check if argumet collations can be aggregated and
thus appropiriate item conversion does not happen.
The fix is to add the check and convertion for ROW
pairs.


mysql-test/r/row.result:
  test result
mysql-test/t/row.test:
  test case
sql/item.cc:
  added agg_item_set_converter() function which was a part of
  agg_item_charsets() func. The only difference is that
  agg_item_set_converter() checks and converts items 
  using already known collation.
sql/item.h:
  added agg_item_set_converter() function
sql/item_cmpfunc.cc:
  In case of ROW item each compared pair does not
  check if argumet collations can be aggregated and
  thus appropiriate item conversion does not happen.
  The fix is to add the check and convertion for ROW
  pairs.
2009-02-19 17:20:44 +04:00
5f58510a09 Backport of test results for Bug#38719 from 6.0 to 5.1
post push fix, Bug#38719, additional test cases updated
2009-02-18 22:35:28 +01:00
830c42a06a Backport of bug#38719 from 6.0 to 5.1
handler::get_dup_key used the called handler for the
info call, but used table->file handler for errkey.
Fixed by using table->file->info instead.

mysql-test/r/partition_error.result:
  Bug#38719: Partitioning returns a different error code for
  a duplicate key error
  
  Added test for verification
mysql-test/t/partition_error.test:
  Bug#38719: Partitioning returns a different error code for
  a duplicate key error
  
  Added test for verification
2009-02-18 21:29:30 +01:00
bf442fcaae Backport of bug#36001 from 6.0 to 5.1 2009-02-18 21:22:56 +01:00
85cc17d3cd Bug#36001: Partitions: spelling and using some error messages
Backport from 6.0

Changed error message to show that it is partitioning
that does not support foreign keys yet.

Changed spelling from British english to American english.

mysql-test/r/partition.result:
  Bug#36001: Partitions: spelling and using some error messages
  
  Backport from 6.0
  
  Changed spelling from British english to American english.
mysql-test/r/partition_mgm_err.result:
  Bug#36001: Partitions: spelling and using some error messages
  
  Backport from 6.0
  
  Changed spelling from British english to American english.
mysql-test/t/partition.test:
  Bug#36001: Partitions: spelling and using some error messages
  
  Backport from 6.0
  
  Added test for verifying error message
sql/share/errmsg.txt:
  Bug#36001: Partitions: spelling and using some error messages
  
  Backport from 6.0
  
  Changed spelling from British english to American english.
sql/sql_table.cc:
  Bug#36001: Partitions: spelling and using some error messages
  
  Backport from 6.0
  
  Using a better error message.
2009-02-18 21:10:19 +01:00
d0ece331a2 5.0->bugteam->5.1-bugteam merge 2009-02-18 16:09:46 +04:00
93a5269618 merge 2009-02-18 10:31:53 +01:00
544fa7593b Bug#25830 SHOW TABLE STATUS behaves differently depending on table name(for 5.0 only)
replace wild_case_compare with my_wildcmp which is multibyte safe function


mysql-test/r/lowercase_utf8.result:
  test result
mysql-test/t/lowercase_utf8-master.opt:
  test case
mysql-test/t/lowercase_utf8.test:
  test case
sql/sql_show.cc:
  replace wild_case_compare with my_wildcmp which is multibyte safe function
2009-02-17 18:22:48 +04:00
fecaef26af Merge of fix for Bug 42836 into GCA tree 2009-02-16 20:43:34 +01:00
924950b631 commenting windows disable for rpl_cross_version to relate to Bug #42879 2009-02-16 14:51:39 +02:00
d3a10ec6ef Bug#41077: Warning contains wrong future version
Substitute all references of MySQL version "5.2" to "6.0" in
deprecation warning messages.Deprecated constructs are being
removed in the 6.0 tree.
2009-02-16 08:38:15 -03:00
cd1960ff26 rpl_cross_version.test is disable for win till a proper fixing bug#42451 2009-02-16 10:49:51 +02:00
d945db1ddd Take additional precision into account 2009-02-15 14:11:50 +03:00
ff1e778cc5 Automerge. 2009-02-15 12:47:04 +03:00
65e2c68a4d Fixed PB failures on IA64 hosts introduced by the patch for bug #21205.
mysql-test/t/gis.test:
  IA64 gcc backend lacks -fno-fused-madd option, so we have to adjust results.
2009-02-15 12:26:08 +03:00