Commit graph

60413 commits

Author SHA1 Message Date
Joerg Bruehe
8ec58ac0f4 Take an essential fix from "trunk" into 5.5.1-m2
which arrived only after cloning.

Original comment:
| revision-id: vvaintroub@mysql.com-20091222204937-bcjk6at5mzek126g
| parent: mikael@mysql.com-20091219122600-somflpgtzosglijm
| committer: Vladislav Vaintroub <vvaintroub@mysql.com>
| branch nick: mysql-trunk-bugfixing
| timestamp: Tue 2009-12-22 21:49:37 +0100
| message:
|   Fix build error with CMake 2.8 (mysql_stmt_next_result not exported
|   by shared embedded library)
2009-12-23 13:30:52 +01:00
Alexander Nozdrin
4a489a2592 Merge default.conf from mysql-trunk. 2009-12-23 15:10:25 +03:00
Alexander Nozdrin
5be5b55ff4 Fix default.conf. 2009-12-23 15:09:31 +03:00
Joerg Bruehe
f7c24a2e20 The "semisync" plugin file name has lost its introductory "lib",
adapt the file lists for the subpackages.

This is a part missing from the fix for bug#48351.
2009-12-23 13:06:41 +01:00
Alexander Nozdrin
d6cc32a047 Auto-merge (empty) from mysql-trunk-bugfixing. 2009-12-23 15:06:10 +03:00
Sergei Golubchik
b188b1bfcc fixed "engine not found" error in open_binary_frm
corrected rotten test
2009-12-23 13:06:03 +01:00
Alexey Kopytov
924e048e98 Fixed test failures from the 'parts' suite introduced by
backporting WL#2934.
2009-12-23 15:04:32 +03:00
Alexander Nozdrin
ba60b39ca3 Backporting fix for Bug#49834 from mysql-next-mr-bugfixing
into mysql-trunk-bugfixing.

Original revision:
------------------------------------------------------------
revision-id: vvaintroub@mysql.com-20091222115311-bam0xorumd8gvjyo
parent: mattias.jonsson@sun.com-20091221104426-x2e6c93x8iik4fo0
committer: Vladislav Vaintroub <vvaintroub@mysql.com>
branch nick: mysql-next-mr-bugfixing
timestamp: Tue 2009-12-22 12:53:11 +0100
message:
  Bug#49834 - fixed a bug introduced by mismerge.
  restore original innobase version
------------------------------------------------------------
2009-12-23 15:03:51 +03:00
Alfranio Correia
3543244a12 merge mysql-5.1-rep+2 --> mysql-5.1-rep+2-delivery1 2009-12-23 12:02:57 +00:00
Alfranio Correia
2a765c87e6 merge mysql-5.1-rep+3 --> mysql-5.1-rep+2-delivery1 2009-12-23 11:52:03 +00:00
Alexander Nozdrin
cb8b607187 Auto-merge from mysql-trunk-bugfixing. 2009-12-23 13:43:52 +03:00
unknown
f87816b450 Bug #47863 binlog_format should be writable only at transaction boundaries
When @@session.binlog_format is modified inside a transaction,
it can cause slave to go out of sync.
      
To fix the problem, make the session variable 'binlog_format' 
read-only inside a transaction.


mysql-test/suite/binlog/r/binlog_format_switch_inside_trans.result:
  Test result for bug#47863.
mysql-test/suite/binlog/t/binlog_format_switch_inside_trans.test:
  Added test file to verify if the session variable 'binlog_format' 
  is read-only inside a transaction and in sub-statements.
sql/set_var.cc:
  Added code to make the session variable 'binlog_format'
  read-only inside a transaction.
2009-12-23 18:43:45 +08:00
Alexander Nozdrin
8cdcb078d3 Auto-merge from mysql-next-mr. 2009-12-23 13:42:03 +03:00
Alexander Nozdrin
a987a27dc7 Auto-merge from mysql-trunk. 2009-12-23 13:41:55 +03:00
Sergei Golubchik
3bfb8797d0 fix atomic/solaris.h to conform
remove duplicated boilerplate code
2009-12-23 09:27:41 +01:00
Satya B
83d5ca950b Applying InnoDB snapshot 5.1-ss6344, Fixes BUG#47814
and also applying 5.1-ss6355

Detailed revision comments:

r6324 | jyang | 2009-12-17 06:54:24 +0200 (Thu, 17 Dec 2009) | 8 lines
branches/5.1: Fix bug #47814 - Diagnostics are frequently not
printed after a long lock wait in InnoDB. Separate out the 
lock wait timeout check thread from monitor information
printing thread.

rb://200 Approved by Marko.

r6349 | marko | 2009-12-22 11:09:54 +0200 (Tue, 22 Dec 2009) | 3 lines
branches/5.1: lock_print_info_summary(): Remove a reference to
innobase_mysql_end_print_arbitrary_thd() that should have been
removed in r6347 when removing the function.

r6350 | marko | 2009-12-22 11:11:09 +0200 (Tue, 22 Dec 2009) | 1 line
branches/5.1: Remove an obsolete declaration of LOCK_thread_count.
2009-12-23 12:29:34 +05:30
Alexey Kopytov
b8db5f5c74 Fixed more PB2 test failures introduced by backporting WL#2934. 2009-12-23 08:52:18 +03:00
Joerg Bruehe
7a84896d71 Change RPM file naming:
- Suffix like "-m2", "-rc" becomes part of version as "_m2", "_rc".
- Release counts from 1, not 0.

This is done for both the "generic" RPMs and the "shared-compat" ones.
It includes introducing a new version variable "MYSQL_U_SCORE_VERSION"
in "configure.in", where the dash is replaced by an underscore:
  5.5.1-m2   ->  5.5.1_m2
2009-12-22 23:22:42 +01:00
Vladislav Vaintroub
f415cd2911 merge 2009-12-22 22:05:04 +01:00
Alexey Kopytov
c9855862f7 Fixed more PB2 test failures introduced by backporting WL#2934. 2009-12-22 23:55:56 +03:00
Vladislav Vaintroub
dcdaa8f4fc Fix build error with CMake 2.8 (mysql_stmt_next_result not exported
by shared embedded library)
2009-12-22 21:49:37 +01:00
Alexey Kopytov
4f3e6f7a6a Fixed a Windows build failure 2009-12-22 21:10:31 +03:00
Mattias Jonsson
28e64daf2d Bug#49742: Partition Pruning not working correctly for RANGE
Problem was when calculating the range of partitions for
pruning.

Solution was to get the calculation correct. I also simplified
it a bit for easier understanding.

mysql-test/r/partition_pruning.result:
  Bug#49742: Partition Pruning not working correctly for RANGE
  
  Added results.
mysql-test/t/partition_pruning.test:
  Bug#49742: Partition Pruning not working correctly for RANGE
  
  Added tests to prevent regressions.
sql/sql_partition.cc:
  Bug#49742: Partition Pruning not working correctly for RANGE
  
  Simplified calculation for partition id for ranges.
  Easier to get right and understand.
  
  Added comments.
2009-12-22 18:59:37 +01:00
Alexey Kopytov
12f364ece7 Backport of WL #2934: Make/find library for doing float/double
to string conversions and vice versa" 
Initial import of the dtoa.c code and custom wrappers around it 
to allow its usage from the server code. 
 
Conversion of FLOAT/DOUBLE values to DECIMAL ones or strings 
and vice versa has been significantly reworked. As the new 
algoritms are more precise than the older ones, results of such 
conversions may not always match those obtained from older 
server versions. This in turn may break compatibility for some 
applications. 
 
This patch also fixes the following bugs: 
- bug #12860 "Difference in zero padding of exponent between 
Unix and Windows" 
- bug #21497 "DOUBLE truncated to unusable value" 
- bug #26788 "mysqld (debug) aborts when inserting specific 
numbers into char fields" 
- bug #24541 "Data truncated..." on decimal type columns 
without any good reason"
2009-12-22 19:23:13 +03:00
Georgi Kodinov
2d8869d248 Bug #49734: Crash on EXPLAIN EXTENDED UNION ... ORDER BY <any non-const-function>
Several problems fixed : 
1. Non constant expressions in UNION ... ORDER BY were not correctly cleaned up
in st_select_lex_unit::cleanup() causing crashes in EXPLAIN EXTENDED because of
fields quoted by these expressions pointing to the already freed temporary table
used to calculate the UNION.
Fixed by correctly cleaning up expressions of any depth.

2. Subqueries in the order by part of UNION ... ORDER BY ... caused a crash in 
EXPLAIN EXTENDED because of a transformation attempt made during EXPLAIN EXTENDED
execution. Fixed by not doing the transformation when in EXPLAIN.

3. Fulltext functions caused crash when in the ORDER BY part of an un-parenthesized
UNION that gets "promoted" to be valid for the whole union, e.g. 
SELECT * FROM t1 UNION SELECT * FROM t2 ORDER BY MATCHES (a) AGAINST ('abc' IN BOOLEAN MODE).
This is a case that demonstrates a more general problem of parts of the query being
moved to another level. When doing such transformation late in the optimization run
when most of the flags about the contents of the query are already aggregated it's possible 
to "split" the flags so that they correctly reflect the new queries after the transformation.
In specific the ST_SELECT_LEX::ftfunc_list is holding all the free text function for all the 
parts of the second SELECT in the UNION and we don't know what part of that is in the ORDER BY
that we're to move to the UNION level and what part is about the other parts of the second SELECT.
Fixed by throwing and error when such statements are about to be processed by adding a check 
for the presence of MATCH() inside the ORDER BY clause that's going to get promoted to UNION.
To workaround this new limitation one must parenthesize the UNION SELECTs and provide a real 
global ORDER BY for the UNION outside of the parenthesis.
2009-12-22 17:52:15 +02:00
Georgi Kodinov
c248859ec8 merge 2009-12-24 11:00:04 +02:00
unknown
1aed2f4d63 Raise version number after cloning 5.5.1-m2 2009-12-22 14:27:41 +01:00
Satya B
a49b18a75c merge to mysql-5.1-bugteam 2009-12-22 18:34:13 +05:30
Satya B
8f0f1d0ddb Removing rpl.rpl_trigger from experimental list as it is Fixed by BUG#46656 2009-12-22 18:33:39 +05:30
Alexey Botchkov
01b8186b06 merging. 2009-12-22 16:39:06 +04:00
Alexey Botchkov
4431827f2a Bug#46570 test udf fails with valgrind
the value obtained by String::c_ptr() method not always
    has the ending zero. Particularly in this bug the
    dlsym() expects zero-ending string.
    The String::c_ptr_safe() is more correct here.

per-file comments:
  sql/item_func.cc
Bug#46570      test udf fails with valgrind
    c_ptr_safe() used for UDF parameters as the library expects
    zero-ending strings.
2009-12-22 16:37:21 +04:00
Luis Soares
444b24eec2 Fixing tree_name. 2009-12-22 12:31:36 +00:00
Vladislav Vaintroub
7c8220a136 merge 2009-12-22 13:06:31 +01:00
Vladislav Vaintroub
0d0ff32c6e Bug#49834 - fixed a bug introduced by mismerge.
restore original innobase version
2009-12-22 12:53:11 +01:00
Luis Soares
67cc50d2a3 PB2 was showing some valgrind warnings after WL#5151 was pushed.
This patch fixes these warnings and some compile time warnings.

On top of that, it also fixes rpl_err_ignoredtable test failure.
This test was failing because the warning suppression text was not
matching the latest text. We fix this by making them match.


mysql-test/suite/rpl/t/rpl_err_ignoredtable.test:
  Replaced the suppression text.
sql/rpl_record.cc:
  - Fixed some compile time warnings (replaced %d --> %ld and 
    removed unused mas mask variable.
  - Fixed valgrind warnings when using c_ptr(). Replaced with 
    c_ptr_safe().
sql/rpl_utility.cc:
  - Fixed valgrind warnings when using c_ptr(). Replaced with 
    c_ptr_safe().
2009-12-22 11:51:46 +00:00
Sergei Golubchik
274e1e4497 32-bit fix 2009-12-22 12:05:51 +01:00
Sergei Golubchik
bb865442a4 minimal changes to errmst-utf8.txt (mostly whitespace) to match 6.0-codebase better 2009-12-22 12:02:52 +01:00
Sergey Glukhov
c0bd23ddbf 5.0-bugteam->5.1-bugteam merge 2009-12-22 14:38:33 +04:00
Alexander Nozdrin
eeb39410f4 Auto-merge from mysql-next-mr. 2009-12-22 13:23:47 +03:00
Sergey Glukhov
081bcb3b8b Bug#47371 reference by same column name
At the end of execution top level join execution
we cleanup this join with true argument.
It leads to underlying join cleanup(subquery) with true argument too
and to tmp_table_param->field array cleanup which is required later.
The problem is that Item_func_set_user_var does not set
result_filed which leads to unnecessary repeated excution of subquery
on final stage.
The fix is to set result_field for Item_func_set_user_var.


mysql-test/r/count_distinct.result:
  test result
mysql-test/r/user_var.result:
  test result
mysql-test/t/count_distinct.test:
  test case
mysql-test/t/user_var.test:
  test case
sql/item_func.cc:
  At the end of execution top level join execution
  we cleanup this join with true argument.
  It leads to underlying join cleanup(subquery) with true argument too
  and to tmp_table_param->field array cleanup which is required later.
  The problem is that Item_func_set_user_var does not set
  result_filed which leads to unnecessary repeated excution of subquery
  on final stage.
  The fix is to set result_field for Item_func_set_user_var.
2009-12-22 13:52:23 +04:00
Sergei Golubchik
1ad5bb1a69 WL#4738 streamline/simplify @@variable creation process
Bug#16565 mysqld --help --verbose does not order variablesBug#20413 sql_slave_skip_counter is not shown in show variables
Bug#20415 Output of mysqld --help --verbose is incomplete
Bug#25430 variable not found in SELECT @@global.ft_max_word_len;
Bug#32902 plugin variables don't know their names
Bug#34599 MySQLD Option and Variable Reference need to be consistent in formatting!
Bug#34829 No default value for variable and setting default does not raise error
Bug#34834 ? Is accepted as a valid sql mode
Bug#34878 Few variables have default value according to documentation but error occurs  
Bug#34883 ft_boolean_syntax cant be assigned from user variable to global var.
Bug#37187 `INFORMATION_SCHEMA`.`GLOBAL_VARIABLES`: inconsistent status
Bug#40988 log_output_basic.test succeeded though syntactically false.
Bug#41010 enum-style command-line options are not honoured (maria.maria-recover fails)
Bug#42103 Setting key_buffer_size to a negative value may lead to very large allocations 
Bug#44691 Some plugins configured as MYSQL_PLUGIN_MANDATORY in can be disabled
Bug#44797 plugins w/o command-line options have no disabling option in --help
Bug#46314 string system variables don't support expressions
Bug#46470 sys_vars.max_binlog_cache_size_basic_32 is broken
Bug#46586 When using the plugin interface the type "set" for options caused a crash.
Bug#47212 Crash in DBUG_PRINT in mysqltest.cc when trying to print octal number
Bug#48758 mysqltest crashes on sys_vars.collation_server_basic in gcov builds
Bug#49417 some complaints about mysqld --help --verbose output
Bug#49540 DEFAULT value of binlog_format isn't the default value
Bug#49640 ambiguous option '--skip-skip-myisam' (double skip prefix)
Bug#49644 init_connect and \0
Bug#49645 init_slave and multi-byte characters
Bug#49646 mysql --show-warnings crashes when server dies


CMakeLists.txt:
  Bug#44691 Some plugins configured as MYSQL_PLUGIN_MANDATORY in can be disabled
client/mysql.cc:
  don't crash with --show-warnings when mysqld dies
config/ac-macros/plugins.m4:
  Bug#44691 Some plugins configured as MYSQL_PLUGIN_MANDATORY in can be disabled
include/my_getopt.h:
  comments
include/my_pthread.h:
  fix double #define
mysql-test/mysql-test-run.pl:
  run sys_vars suite by default
  properly recognize envirinment variables (e.g. MTR_MAX_SAVE_CORE) set to 0
  escape gdb command line arguments
mysql-test/suite/sys_vars/r/rpl_init_slave_func.result:
  init_slave+utf8 bug
mysql-test/suite/sys_vars/t/rpl_init_slave_func.test:
  init_slave+utf8 bug
mysys/my_getopt.c:
  Bug#34599 MySQLD Option and Variable Reference need to be consistent in formatting!
  Bug#46586 When using the plugin interface the type "set" for options caused a crash.
  Bug#49640 ambiguous option '--skip-skip-myisam' (double skip prefix)
mysys/typelib.c:
  support for flagset
sql/ha_ndbcluster.cc:
  backport from telco tree
sql/item_func.cc:
  Bug#49644 init_connect and \0
  Bug#49645 init_slave and multi-byte characters
sql/sql_builtin.cc.in:
  Bug#44691 Some plugins configured as MYSQL_PLUGIN_MANDATORY in can be disabled
sql/sql_plugin.cc:
  Bug#44691 Some plugins configured as MYSQL_PLUGIN_MANDATORY in can be disabled
  Bug#32902 plugin variables don't know their names
  Bug#44797 plugins w/o command-line options have no disabling option in --help
sql/sys_vars.cc:
  all server variables are defined here
storage/myisam/ft_parser.c:
  remove unnecessary updates of param->quot
storage/myisam/ha_myisam.cc:
  myisam_* variables belong here
strings/my_vsnprintf.c:
  %o and %llx
unittest/mysys/my_vsnprintf-t.c:
  %o and %llx tests
vio/viosocket.c:
  bugfix: fix @@wait_timeout to work with socket timeouts (vs. alarm thread)
2009-12-22 10:35:56 +01:00
Ramil Kalimullin
7344b58c32 Fix for bug#49570: Assertion failed: !(order->used & map)
on re-execution of prepared statement

Problem: some (see eq_ref_table()) ORDER BY/GROUP BY optimization
is called before each PS execution. However, we don't properly 
initialize its stucture every time before the call.

Fix: properly initialize the sturture used.



mysql-test/r/ps.result:
  Fix for bug#49570: Assertion failed: !(order->used & map) 
  on re-execution of prepared statement
    - test result.
mysql-test/t/ps.test:
  Fix for bug#49570: Assertion failed: !(order->used & map) 
  on re-execution of prepared statement
    - test case.
sql/sql_select.cc:
  Fix for bug#49570: Assertion failed: !(order->used & map) 
  on re-execution of prepared statement
    - set order->used to 0 before each eq_ref_table() call,
  as the function relies on that.
2009-12-22 10:39:29 +04:00
Alexander Nozdrin
809d309968 Auto-merge (empty) from mysql-trunk-build. 2009-12-22 09:36:04 +03:00
Alexander Nozdrin
8ed868fa1e Manual merge from mysql-next-mr.
Conflicts:
  - storage/ibmdb2i/ha_ibmdb2i.cc
2009-12-22 09:32:58 +03:00
Alexander Nozdrin
f238adf75d Manual merge from mysql-trunk.
Conflicts:
  - storage/ibmdb2i/ha_ibmdb2i.cc
2009-12-22 09:31:24 +03:00
Alexander Nozdrin
6cd0792808 Auto-merge from mysql-next-mr. 2009-12-22 08:29:03 +03:00
Mattias Jonsson
df357ed514 merge 2009-12-22 00:06:36 +01:00
Mats Kindahl
6cbd760627 Merging with mysql-5.1-rep+2 2009-12-21 20:55:40 +01:00
Mats Kindahl
060e3ae739 WL#5151: Conversion between different types when replicating
Bug#49836 reports that the geometry type does not work
with WL#5151 applied.

The GEOMETRY type inherits the blob comparison function,
which read the pack length from the metadata. The GEOMETRY
type does not fill in the metadata with anything sensible,
so it is always zero, meaning that the pack length for the
source type is considered zero, rendering it always "smaller"
than the target type which has pack length 4 (without pointer).

This patch fixes the problem by defining
Field_geom::pack_length_from_metadata() to always use the
same as Field_geom::row_pack_length().
2009-12-21 19:50:25 +01:00
Alexander Nozdrin
b4565c3cf6 Null-merge default.conf from mysql-trunk-bugfixing. 2009-12-21 18:41:48 +03:00