Commit graph

59433 commits

Author SHA1 Message Date
Alexander Nozdrin
79738267bd Auto-merge from mysql-next-mr. 2009-11-23 17:09:36 +03:00
Jonathan Perkin
d64f29d0ec bug#36462: mysql_install_db fails when run as user root and
root-directory not writable

Rather than use the -w test, attempt the chown and bail out if
it fails.
2009-11-23 13:34:39 +00:00
Alexander Nozdrin
2315944050 Auto-merge from mysql-next-mr-marc (WL#2595). 2009-11-23 14:51:16 +03:00
Alexey Kopytov
a4bcf99f38 Backport of the fix for bug #33969: Updating a text field via a
left join 

When creating a temporary TEXT/BLOB field from an Item in
Item::make_string_field(), the field's type was unconditionally
set to the one corresponding to the maximum length (i.e.
LONGTEXT/ LONGBLOB). This resulted in problems when exactly the
same TEXT/BLOB is type required in cases like CREATE ... SELECT
or creating internal temporary tables for joins. 

Fixed by calling a different constructor for Field_blob so that
an appropriate type is used depending on the Item's max_length
value.
2009-11-21 20:31:00 +03:00
Alexey Kopytov
8c1dfab38d Merged from mysql-next-mr-bugfixing.
Updated the result file for func_math.
2009-11-21 19:46:50 +03:00
He Zhenxing
23da26eb85 Post fix for previous patch of bug#37148
sql/sql_table.cc:
  Add the missing return 0
2009-11-21 19:50:15 +08:00
He Zhenxing
b9268fc8ea Auto merge 2009-11-21 12:48:54 +08:00
He Zhenxing
dd383cadec BUG#37148 Most callers of mysql_bin_log.write ignore the return result
This is the non-ndb part of the patch.

The return value of mysql_bin_log.write was ignored by most callers,
which may lead to inconsistent on master and slave if the transaction
was committed while the binlog was not correctly written. If
my_error() is call in mysql_bin_log.write, this could also lead to
assertion issue if my_ok() or my_error() is called after.

This fixed the problem by let the caller to check and handle the
return value of mysql_bin_log.write. This patch only adresses the
simple cases.


mysql-test/include/binlog_inject_error.inc:
  inject binlog write error when doing a query
mysql-test/suite/binlog/t/binlog_write_error.test:
  Simple test case to check if proper error is reported when injecting binlog write errors.
sql/events.cc:
  check return value of mysql_bin_log.write
sql/log.cc:
  check return value of mysql_bin_log.write
sql/log_event.cc:
  check return value of mysql_bin_log.write
sql/log_event_old.cc:
  check return value of mysql_bin_log.write
sql/mysql_priv.h:
  Change write_bin_log to return int instead of void
sql/rpl_injector.cc:
  check return value of writing binlog
sql/sp.cc:
  check return value of writing binlog
sql/sp_head.cc:
  return 1 if writing binlog failed
sql/sql_acl.cc:
  check return value of writing binlog
sql/sql_base.cc:
  check return value of writing binlog
sql/sql_class.h:
  Change binlog_show_create_table to return int
sql/sql_db.cc:
  Change write_to_binlog to return int
  check return value of writing binlog
sql/sql_delete.cc:
  check return value of writing binlog
sql/sql_insert.cc:
  check return value of writing binlog
sql/sql_load.cc:
  check return value of writing binlog
sql/sql_parse.cc:
  check return value of writing binlog
sql/sql_partition.cc:
  check return value of writing binlog
sql/sql_rename.cc:
  check return value of writing binlog
sql/sql_repl.cc:
  check return value of writing binlog
sql/sql_table.cc:
  Change write_bin_log to return int, and return 1 if there was error writing binlog
sql/sql_tablespace.cc:
  check return value of writing binlog
sql/sql_trigger.cc:
  check return value of writing binlog
sql/sql_udf.cc:
  check return value of writing binlog
sql/sql_update.cc:
  check return value of writing binlog
sql/sql_view.cc:
  check return value of writing binlog
2009-11-21 12:28:01 +08:00
Marc Alff
c48661596b Merge mysql-next-mr (revno 2923) --> mysql-next-mr-marc 2009-11-20 09:23:13 -07:00
Konstantin Osipov
34b11fb627 Merge with next-mr 2009-11-20 17:18:37 +03:00
Martin Hansson
3937a79886 merge of Bug#33204 (backport) 2009-11-20 13:29:43 +01:00
Mattias Jonsson
d8d8efc88e Bug#32115: Bad use of Name_resolution_context from current LEX in partitioning
port from mysql-next (5.4?) to mysql-next-mr-bugfixes (5.5/5.6?)

3477 Mikael Ronstrom	2009-07-29
Bug#32115, made use of local lex object to avoid side effects of opening partitioned
tables

3478 Mikael Ronstrom	2009-07-29
Bug#32115, added an extra test in debug builds to ensure no dangling pointers to the
old lex object is still around

3479 Mikael Ronstrom	2009-07-29
Bug#32115, Removed an assert that was no longer needed

3480 Mikael Ronstrom	2009-08-05
Bug#32115, fixed review comments

3481 Mikael Ronstrom	2009-08-07
Bug#32115, remove now obsolete lex_start calls
2009-11-20 01:20:08 +01:00
Davi Arnaut
5aeeaaf507 Manual merge of mysql-next-mr-runtime upstream. 2009-11-19 21:48:08 -02:00
Mattias Jonsson
176cabc1b4 Bug#32115: Bad use of Name_resolution_context from current LEX in partitioning
port from mysql-next (5.4) to mysql-next-mr-bugfixing (5.5/5.6?)

2755 Konstantin Osipov	2008-11-27
Bug#32115 will remove the pre-requisite to initialize LEX to open tables.
This dependency was added in 5.1 and was supposed to be removed in 6.0.
Remove asserts and initialization of LEX in places where we don't deal
with partitioned tables.

sql/sp_head.cc:
  Fix a typo.
2009-11-20 00:13:54 +01:00
Guilhem Bichot
27fca0ab17 Backport of the fix for BUG#40368 "mysqld_safe not honouring underscore same as dash on server options" from 6.0
(revision-id:guilhem@mysql.com-20090505113602-l12kxupeatve18dh).
Such bug led "mysqld_safe --core_file_size=#" to not work because mysqld_safe wouldn't recognize
that "ulimit -c" is needed; only --core-file-size=# worked. Same for --open_files_limit and other
options with _ where mysqld_safe needs to do something more than passing to mysqld.
Original fix by Erik Ljungstrom erik at ibiblio dot org ; slightly modified here.
Tested on all internally accessible Unix.
2009-11-18 21:36:17 +01:00
Marc Alff
48ea0b83a0 Port the unit test framework to windows
Backport from 6.0.14 to 5.6.0

Original code from Guilhem Bichot
2009-11-17 21:29:26 -07:00
Marc Alff
244eced1a7 WL#3230 concurrent hash
Backport from 6.0.14 to 5.6.0

Original code from Sergei Golubchik
2009-11-17 19:31:40 -07:00
Marc Alff
7b9fd341a0 Misc cleanup 2009-11-17 17:36:39 -07:00
Marc Alff
382ae22290 WL#2595 kernel-independent atomic operations
Backport from 6.0.14 to 5.6.0

Original code from Sergei Golubchik
2009-11-17 17:11:32 -07:00
Alexey Botchkov
6c832ee4bf merging. 2009-11-17 15:27:40 +04:00
Alexey Botchkov
5b8a24cf04 merging. 2009-11-17 15:24:23 +04:00
Alexey Botchkov
8afc2658d7 merging. 2009-11-17 15:19:47 +04:00
Marc Alff
7d59878096 Merge mysql-next-mr (revno 2922) --> mysql-next-mr-marc 2009-11-16 14:42:20 -07:00
Marc Alff
ce1cd22dca New tree for merges 2009-11-16 14:14:54 -07:00
Alexey Botchkov
5eea1c0544 result updates for the 'row-only' tests 2009-11-15 23:19:53 +04:00
Davi Arnaut
5128b54c38 Post-merge fixes for backports.
mysql-test/r/sp-error.result:
  Update test case result.
mysql-test/t/dirty_close.test:
  Dirty close does not work under embedded.
mysql-test/t/sp-error.test:
  Use the specific error number so it won't catch
  other non-fatal errors.
2009-11-13 10:56:38 -02:00
Alexander Nozdrin
3260df8b93 Auto-merge from mysql-next-mr. 2009-11-12 06:17:04 +03:00
Alexander Nozdrin
780871d8b9 Update version tag (new: 5.6). 2009-11-12 06:11:55 +03:00
Alexander Nozdrin
4c700c6b00 Auto-merge from mysql-next-mr. 2009-11-12 05:25:03 +03:00
Alexander Nozdrin
a9403253b1 Auto-merge from mysql-trunk-bugfixing. 2009-11-12 15:17:49 +03:00
Alexander Nozdrin
e29ea6c2f8 Auto-merge from mysql-next-mr. 2009-11-12 15:13:43 +03:00
Alexander Nozdrin
0e7c10445f Auto-merge from mysql-trunk. 2009-11-12 15:10:26 +03:00
Alexander Nozdrin
59403916c1 Auto-merge from mysql-trunk. 2009-11-12 05:22:00 +03:00
Alexander Nozdrin
e99e453633 Auto-merge from mysql-next-mr. 2009-11-12 18:00:24 +03:00
Alexander Nozdrin
03baeb7653 Auto-merge from mysql-trunk-bugfixing. 2009-11-12 05:20:39 +03:00
Alexander Nozdrin
819a299235 Auto-merge from mysql-trunk. 2009-11-12 04:58:56 +03:00
Magne Mahre
827cbd2bb5 Bug#40700: aclocal warnings for missing cache-id's
Just change mysql_foo to mysql_cv_foo for one cache-id variable name.  There
was only one bad variable name, present in 5.0 and 5.1, but not in the -pe
branch.


Backported to 5.6.0  (mysql-next-mr-runtime)
2009-11-11 21:43:31 +01:00
Magne Mahre
56e603a31b Bug #33544 UDF_INIT member decimals initialized wrong with
STRING_RESULT argument

There is a "magic" number for precision : NOT_FIXED_DEC. 
This means that the precision is not a fixed number.
But this constant was re-defined in several files and 
was not available to the UDF developers.
 
Moved the NOT_FIXED_DEC definition to the correct header
and removed the redundant definitions.

Backported to 5.6.0  (mysql-next-mr-runtime)

client/sql_string.h:
  moved NOT_FIXED_DEC to the correct header
include/mysql_com.h:
  moved NOT_FIXED_DEC to the correct header
libmysql/libmysql.c:
  moved NOT_FIXED_DEC to the correct header
sql/field.h:
  moved NOT_FIXED_DEC to the correct header
sql/sql_string.h:
  moved NOT_FIXED_DEC to the correct header
storage/ndb/include/kernel/signaldata/DictTabInfo.hpp:
  moved NOT_FIXED_DEC to the correct header
2009-11-11 21:19:41 +01:00
Magne Mahre
a176b24912 Bug #37097 mysqltest add result file format version 2
Add result file format v2

Backport to 5.6.0
2009-11-11 20:25:32 +01:00
Magne Mahre
cc87cb9fbf Fix of incorrect casting for large sizes 2009-11-11 19:54:57 +01:00
Marc Alff
4347bbe3d1 Bug#9801 Views: imperfect error message
Backport to 5.5: adjusted the test outputs in the funcs_1 test suite
2009-11-11 10:34:41 -07:00
Alexey Botchkov
5e85d7170a test updated 2009-11-11 21:30:51 +04:00
Magne Mahre
272b9ad5de Return type fix (strlen returns size_t) 2009-11-11 17:22:27 +01:00
Magne Mahre
fa08bae760 Bug #5724 'mysqladmin password' should be allowed to prompt for password
Add support for being prompted for new passwords by mysqladmin instead of
specifying them on the command line. (Bug #5724, patch by Harrison Fisk)
2009-11-11 17:17:58 +01:00
Magne Mahre
3c3b11c3b8 Bug #14637: trim trailing spaces processes data only byte wise
(From: gkodinov)
Use and int * where possible to scan for trailing space in a
string instead of always iterating char-by-char.
Using the attached benchmark file on a 32 bit Intel Core 2 
Duo CPU I've got 43485 ms run with the fix compared to 44373 
without it.

Backported to 5.6.0 (next-mr-runtime)
6.0-codebase revid: 2476.1362.1


include/m_string.h:
  scan for space through ints
strings/ctype-bin.c:
  scan for space through ints
strings/ctype-latin1.c:
  scan for space through ints
strings/ctype-mb.c:
  scan for space through ints
strings/ctype-simple.c:
  scan for space through ints
2009-11-11 17:03:02 +01:00
Philip Stoev
0a6d18f3fb revert patch for bug #47146 because it breaks Solaris builds 2009-11-11 12:01:09 +02:00
Alexey Botchkov
134d2fb675 loadxml test update. 2009-11-11 05:42:02 +04:00
Alexey Botchkov
53d581e0d8 Bug#47126 equal flag values causing unexpected behaviour
Although the MY_SYNC_DIR flag supported in my_create(), my_delete(),
   my_rename() and my_symlink(), this feature is not used in the
   mysql code now. So technically we can declare the MY_SYNC_DIR as 0,
   but I decided to assign a new value for it as it's probably safer and
   worths nothing.

per-file comments:
  include/my_sys.h
Bug#47126      equal flag values causing unexpected behaviour
     assign unique value for the MY_SYNC_DIR
2009-11-11 05:12:56 +04:00
Davi Arnaut
1c3c72ce17 The FIONREAD macro could expand to a expression which
is invalid to preporcessor conditionals. Instead use
the autoconf generated macro to test the presence.
2009-11-10 22:39:06 -02:00
Alexey Botchkov
c868e89f82 Bug #47139 Test "merge" crashes in "embedded" run
In fact this crashes in normal (not embedded) run also.
  The problem is in the memory mapping. Handling the ha_myisammrg::extra(MMAP)
  the MERGE engine tries to mmap all the tables it unites.
  Though some can be empty and then in the mi_dynmap_file()
  we call the my_mmap(0). Normally this call returns MAP_FAILED,
  but not on FreeBSD. There it returns like a 'normal' value,
  and after the consequitive munmap systems gets unstable and
  crashes on some system call later.

per-file comments:
  storage/myisam/mi_dynrec.c
Bug #47139      Test "merge" crashes in "embedded" run
    don't try to mmap zero-length area, just return at once.
2009-11-11 01:10:30 +04:00