summaryrefslogtreecommitdiff
path: root/client
Commit message (Collapse)AuthorAgeFilesLines
* Fixed compiler warnings from Windows compilerMichael Widenius2010-08-113-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | client/mysqlcheck.c: Added missing casts client/mysqldump.c: Added missing casts client/mysqlimport.c: Added missing casts extra/my_print_defaults.c: Added missing casts mysql-test/mysql-test-run.pl: Added suppression for non-critical warning on windows storage/maria/maria_pack.c: Added missing casts storage/xtradb/buf/buf0lru.c: Added missing casts storage/xtradb/fil/fil0fil.c: Added missing casts storage/xtradb/handler/i_s.cc: Added extra argument to call store() function for longlong. storage/xtradb/srv/srv0srv.c: Added cast to suppress compiler warning support-files/compiler_warnings.supp: Added suppression for some non critical compiler warnings on Windows unittest/mytap/tap.h: Fixed prototypes to be same as the actual functions
* This patch fixes LP#613408 Memory corruption with (M)aria storage engine ↵Michael Widenius2010-08-072-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | and virtual columns in MariaDB 5.2 Fixed compiler warnings Disabled some tests that doesn't work on windows (uses shell tools or strange characters) client/mysqlshow.c: Fixed compiler warnings client/mysqlslap.c: Fixed compiler warnings mysql-test/mysql-test-run.pl: Use an error file instead of /dev/null (Fixes problem on Windows and the output may be usefull) mysql-test/suite/maria/r/maria.result: Test case for bug LP#613408 (not complete) mysql-test/suite/maria/t/maria.test: Test case for bug LP#613408 (not complete) mysql-test/suite/percona/percona_log_slow_slave_statements-and-use_global_long_query_time.test: This test doesn't work one windows (needs shell tools) mysql-test/suite/percona/percona_log_slow_slave_statements.test: This test doesn't work one windows (needs shell tools) mysql-test/suite/percona/percona_slow_query_log-control_global_slow.test: This test doesn't work one windows (needs shell tools) mysql-test/suite/percona/percona_slow_query_log-log_slow_filter.test: This test doesn't work one windows (needs shell tools) mysql-test/suite/percona/percona_slow_query_log-log_slow_verbosity.test: This test doesn't work one windows (needs shell tools) mysql-test/suite/percona/percona_slow_query_log-long_query_time.test: This test doesn't work one windows (needs shell tools) mysql-test/suite/percona/percona_slow_query_log-microseconds_in_slow_query_log.test: This test doesn't work one windows (needs shell tools) mysql-test/suite/percona/percona_slow_query_log-min_examined_row_limit.test: This test doesn't work one windows (needs shell tools) mysql-test/suite/percona/percona_slow_query_log-use_global_long_query_time.test: This test doesn't work one windows (needs shell tools) mysql-test/t/ctype_filesystem.test: This test doesn't work one windows (problem with character sets) mysql-test/t/events_time_zone.test: Use longer times to get predictable tests mysql-test/t/show_check-master.opt: set long query time to get more predictable tests storage/maria/ma_check.c: Restore info->s->lock_key_trees after repair. Disable logging to temp tables for all repair cases (safety fix) storage/maria/ma_state.c: Ensurethat info->state_start doesn't point to freed memory. (Could happen after running an internal repair to fast create indexes) storage/maria/trnman.c: Added longer comment
* Fix for LP#614265 Crash in _ma_unpin_all_pages / _ma_search on DELETE with ↵Michael Widenius2010-08-061-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | Aria search engine Fixed compiler warnings client/mysqlslap.c: Fixed compiler warnings mysql-test/suite/maria/r/maria.result: Test case for LP#614265 mysql-test/suite/maria/t/maria.test: Test case for LP#614265 mysql-test/suite/pbxt/t/skip_name_resolve-master.opt: Ensure that we get restart before test (as test uses show processlist) sql/handler.cc: Added cloned marker if clone was called (for safety checks & debugging) sql/handler.h: Added cloned marker if clone was called (for safety checks & debugging) storage/maria/ha_maria.cc: In clone call, set file->trn if cloned file had this set. This is needed as maria_create_trn_for_mysql() and thus file->trn is never set for cloned table. Ensure that file->trn is properly reset after calls to repair/check/zerofill. Increment locked table count if file->trn is set (as we decrement this in the unlock call) tests/mysql_client_test.c: Fixed compiler warnings
* Merge with MySQL 5.1.49Michael Widenius2010-08-0210-404/+419
|\ | | | | | | Fixed Bug#52005 'JOIN_TAB->dependent' may be incorrectly propageted for multilevel outer joins' in a better way (patch from Sergey Petrunya)
| * Bug#42733: Type-punning warnings when compiling MySQL --Davi Arnaut2010-06-1010-399/+413
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | strict aliasing violations. Essentially, the problem is that large parts of the server were developed in simpler times (last decades, pre C99 standard) when strict aliasing and compilers supporting such optimizations were rare to non-existent. Thus, when compiling the server with a modern compiler that uses strict aliasing rules to perform optimizations, there are several places in the code that might trigger undefined behavior. As evinced by some recent bugs, GCC does a somewhat good of job misoptimizing such code, but on the other hand also gives warnings about suspicious code. One problem is that the warnings aren't always accurate, yet we can't afford to just shut them off as we might miss real cases. False-positive cases are aggravated mostly by casts that are likely to trigger undefined behavior. The solution is to start a cleanup process focused on fixing and reducing the amount of strict-aliasing related warnings produced by GCC and others compilers. A good deal of noise reduction can be achieved by just removing useless casts that are product of historical cruft and are likely to trigger undefined behavior if dereferenced. client/mysql.cc: Remove now-unnecessary casts. Break up large strings. client/mysql_upgrade.c: Remove now-unnecessary casts. client/mysqladmin.cc: Remove now-unnecessary casts. Break up large strings. client/mysqlbinlog.cc: Remove now-unnecessary casts. client/mysqlcheck.c: Remove now-unnecessary casts. client/mysqldump.c: Remove now-unnecessary casts. client/mysqlimport.c: Remove now-unnecessary casts. client/mysqlshow.c: Remove now-unnecessary casts. client/mysqlslap.c: Remove now-unnecessary casts. client/mysqltest.cc: Remove now-unnecessary casts. extra/comp_err.c: Remove now-unnecessary casts. extra/my_print_defaults.c: Remove now-unnecessary casts. Break up large strings. extra/mysql_waitpid.c: Remove now-unnecessary casts. extra/perror.c: Remove now-unnecessary casts. extra/resolve_stack_dump.c: Remove now-unnecessary casts. extra/resolveip.c: Remove now-unnecessary casts. include/my_getopt.h: Use a void pointer type as the opaque type to avoid problems with type incompatibility -- GCC issues warnings when the type name is not type compatible with a operand. As a side bonus, a explicit cast won't be necessary anymore. include/sslopt-longopts.h: Remove now-unnecessary casts. Break up large strings. mysys/my_getopt.c: Update opaque type and introduce a type definition for the argument to my_getopt_register_get_addr. server-tools/instance-manager/options.cc: Remove now-unnecessary casts. sql/mysqld.cc: Remove now-unnecessary casts. Break up large strings. Update mysql_getopt_value prototype (the old prototype was different from the definition anyway). sql/sql_plugin.cc: The type of a pointer to a function must be compatible with the pointed-to function type, otherwise the behavior is undefined. sql/table.cc: The variable buf pointer to pointer to pointer to constant char could improperly alias a incompatible type in call to fix_type_ pointers. Since this was actually dead code, it is simply removed. sql/unireg.cc: Remove call to get_form_pos. The code creates a new FRM file which is always truncated and writes the form position as 0. Hence, no need to retrieve it, we now for sure it is 0. storage/archive/archive_reader.c: Remove now-unnecessary casts. storage/myisam/ft_nlq_search.c: Read weight directly from the buffer. storage/myisam/fulltext.h: Add explanation about the type duality of a key buffer. Add accessor macro to retrieve a FT float value. storage/myisam/mi_test1.c: Remove now-unnecessary casts. storage/myisam/myisam_ftdump.c: Read weight directly from the buffer. storage/myisam/myisamchk.c: Remove now-unnecessary casts. storage/myisam/myisamlog.c: A pointer to char was used to alias a pointer to pointer to unsigned char, thus violating strict aliasing rules. storage/myisam/myisampack.c: Remove now-unnecessary casts. strings/decimal.c: Remove aliasing violation, printing the value is enough for debugging purposes. tests/mysql_client_test.c: Remove now-unnecessary casts.
* | mysql client: Ignore --comments at start of command line. This allows one to ↵Michael Widenius2010-07-161-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | more easily run mysqltest tests trough the command line. Fixed bug: LP#603026 RQG: pagecache_read: Assertion `pageno < ((1ULL) << 40)' on OPTIMIZE TABLE of a Maria table client/mysql.cc: Removed Oracle copyright from stdout, as Oracle doesn't have copyright to all code in this file. Ignore --comments at start of command line. This allows one to more easily run mysqltest tests trough the command line. mysql-test/suite/maria/r/optimize.result: Added test for LP#603026 mysql-test/suite/maria/t/optimize.test: Added test for LP#603026 sql/net_serv.cc: Removed DBUG_ASSERT(), as this code can happen during testing. storage/maria/ma_check.c: Fixed bug: LP#603026 RQG: pagecache_read: Assertion `pageno < ((1ULL) << 40)' on OPTIMIZE TABLE of a Maria table The problem was duplicated memory usage with long packed keys.
* | Implement an NSIS based installerBo Thorsen2010-06-251-0/+2
| |
* | Fixes for Opensolaris (to get buildbot green)Michael Widenius2010-06-232-3/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Fixed memory leaks in mysqldump - Fixed printf of NULL which caused crashes on OpenSolaris when using --debug - Fixed realloc() problem that caused out of memory when running mysqldump.test on OpenSolaris client/mysqldump.c: Fixed memory leaks Fixed printf of NULL which caused crashes on OpenSolaris when using --debug client/mysqltest.cc: Fixed printf of NULL which caused crashes on OpenSolaris when using --debug include/my_global.h: Added simple macro val_or_null() to simplify detecting of NULL strings for printf sql/handler.cc: Fixed printf of NULL which caused crashes on OpenSolaris when using --debug sql/sql_db.cc: Fixed printf of NULL which caused crashes on OpenSolaris when using --debug Removed testing of 'new_db_name' as this is guranteed never NULL sql/sql_show.cc: Fixed printf of NULL which caused crashes on OpenSolaris when using --debug storage/csv/ha_tina.cc: Fixed realloc() problem that caused out of memory when running mysqldump.test on OpenSolaris (OpenSolaris default malloc() can't handle a lot of reallocs() of strings that are growing one byte at a time) This did speed up logging to cvs with a magnitude for large strings.
* | mysqltest: use setenv, not putenv, to make gcov happy.Sergei Golubchik2010-06-141-13/+31
| | | | | | | | (backport from MySQL)
* | Fixed some bugs in the Maria storage engineMichael Widenius2010-06-142-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Changed default recovery mode from OFF to NORMAL to get automatic repair of not properly closed tables. - Fixed a rase condition when two threads calls external_lock and thr_lock() in different order. When this happend the transaction that called external lock first and thr_lock() last did not see see the rows from the other transaction, even if if it had to wait in thr_lock() for other to complete. - Fixed that one can run maria_chk on an automatcally recovered tables without warnings about too small transaction id - Don't give warning that crashed table could not be repaired if repair was disabled (and thus not run) - Fixed a error result from flush_key_cache() which caused a DBUG_ASSERT() when one was using concurrent reads on non transactional tables that was updated. client/mysqldump.c: Add "" around error message to make it more readable client/mysqltest.cc: Free environment variables mysql-test/r/mysqldump.result: Updated results mysql-test/r/openssl_1.result: Updated results mysql-test/suite/maria/r/maria-recover.result: Updated results mysql-test/suite/maria/r/maria3.result: Updated results mysql-test/suite/maria/t/maria3.test: Added more test of temporary tables storage/maria/ha_maria.cc: Changed default recovery mode from OFF to NORMAL to get automatic repair of not properly closed tables. Start transaction in ma_block_get_status() instead of in ha_maria::external_lock(). - This fixes a rase condition when two threads calls external lock and thr_lock() in different order. When this happend the transaction that called external lock first and thr_lock() last did not see see the rows from the other transaction, even if if it had to wait in thr_lock() for other to complete. Store latest transaction id in controll file if recovery was done. - This allows one to run maria_chk on an automatcally recovered tables without warnings about too small transaction id storage/maria/ha_maria.h: Don't give warning that crashed table could not be repaired if repair was disabled (and thus not run) storage/maria/ma_blockrec.h: Added new function "_ma_block_get_status_no_versioning()" storage/maria/ma_init.c: Added hook to create trn in ma_block_get_status() if we are using MariaDB storage/maria/ma_open.c: Ensure we call _ma_block_get_status_no_versioning() for transactional tables without versioning (like tables with fulltext) storage/maria/ma_pagecache.c: Allow one to flush blocks that are pinned for read. This fixed a error result from flush_key_cache() which caused a DBUG_ASSERT() when one was using concurrent reads on non transactional tables that was updated. storage/maria/ma_recovery.c: Set maria_recovery_changed_data to 1 if recover changed something. Set max_trid_in_control_file to max found trn if we found a bigger trn. The allows will ensure that the control file is up to date after recovery which allows one to run maria_chk on the tables without warnings about too big trn storage/maria/ma_state.c: Call maria_create_trn_hook() in _ma_setup_live_state() instead of ha_maria::external_lock() This ensures that 'state' and trn are in sync and thus fixes the race condition mentioned for ha_maria.cc storage/maria/ma_static.c: Added maria_create_trn_hook() and maria_recovery_changed_data storage/maria/maria_def.h: Added MARIA_HANDLER->external_ptr, which is used to hold MariaDB thd. Added some new external variables Removed reference to non existing function: maria_concurrent_inserts()
* | Merge MySQL 5.1.46 into MariaDB.unknown2010-04-2810-222/+429
|\ \ | |/ | | | | Still two test failures to be solved: main.myisam and main.subselect.
| * Bug #50407 mysqlbinlog --database=X produces bad output for SAVEPOINTsunknown2010-03-281-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When mysqlbinlog was given the --database=X flag, it always printed 'ROLLBACK TO', but the corresponding 'SAVEPOINT' statement was not printed. The replicated filter(replicated-do/ignore-db) and binlog filter (binlog-do/ignore-db) has the same problem. They are solved in this patch together. After this patch, We always check whether the query is 'SAVEPOINT' statement or not. Because this is a literal check, 'SAVEPOINT' and 'ROLLBACK TO' statements are also binlogged in uppercase with no any comments. The binlog before this patch can be handled correctly except one case that any comments are in front of the keywords. for example: /* bla bla */ SAVEPOINT a; /* bla bla */ ROLLBACK TO a;
| * Bug #44178: mysql cli does not comply with GPLv2 clause 2cGeorgi Kodinov2010-03-111-9/+11
| | | | | | | | | | Applied a path from Jim Winstead : Added a GPL notice. Added the missing '(c)' and 'v2'.
| * mergeGeorgi Kodinov2010-03-101-2/+3
| |\
| | * Bug #41057: mysql_update fails FATAL ERROR: Failed to create temporary file ↵Georgi Kodinov2010-03-091-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | for defaults mysql_upgrade was passing an non-initialized non-null tmpdir to create_temp_file() if no --tmpdir was specified. This prevents create_temp_file() from taking the system temporary file path and as a result mysql_upgrade was trying to open a file in a directory that it may not have write access to. Fixed by making sure mysql_upgrade will pass a zero length temp dir string to create_temp_file() if no --tmpdir is specified.
| * | Bug#37316: Anonymous error messages noticed sometimes, while running tests ↵Davi Arnaut2010-03-081-1/+1
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | in MTR The problem was that mysqltest could attempt to execute a SHOW WARNINGS statement through a connection that was not properly reaped, thus violating its own rules. The solution is to skip SHOW WARNINGS if a connection has not been properly repeaed. client/mysqltest.cc: Skip SHOW WARNINGS if connection hasn't been reaped.
| * Automerge: BUG 48993 bundle from bug report --> mysql-5.1-bugteam.Luis Soares2010-03-081-3/+8
| |\
| | * BUG#48993: valgrind errors in mysqlbinlogLuis Soares2010-02-171-3/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I found three issues during the analysis: 1. Memory leak caused by temp_buf not being freed; 2. Memory leak caused when handling argv; 3. Conditional jump that depended on unitialized values. Issue #1 -------- DESCRIPTION: when mysqlbinlog is reading from a remote location the event temp_buf references the incoming stream (in NET object), which is not freed by mysqlbinlog explicitly. On the other hand, when it is reading local binary log, it points to a temporary buffer that needs to be explicitly freed. For both cases, the temp_buf was not freed by mysqlbinlog, instead was set to 0. This clearly disregards the free required in the second case, thence creating a memory leak. FIX: we make temp_buf to be conditionally freed depending on the value of remote_opt. Found out that similar fix is already in most recent codebases. Issue #2 -------- DESCRIPTION: load_defaults is called by parse_args, and it reads default options from configuration files and put them BEFORE the arguments that are already in argc and argv. This is done resorting to MEM_ROOT. However, parse_args calls handle_options immediately after which changes argv. Later when freeing the defaults, pointers to MEM_ROOT won't match, causing the memory not to be freed: void free_defaults(char **argv) { MEM_ROOT ptr memcpy_fixed((char*) &ptr,(char *) argv - sizeof(ptr), sizeof(ptr)); free_root(&ptr,MYF(0)); } FIX: we remove load_defaults from parse_args and call it before. Then we save argv with defaults in defaults_argv BEFORE calling parse_args (which inside can then call handle_options at will). Actually, found out that this is in fact kind of a backport for BUG#38468 into 5.1, so I merged in the test case as well and added error check for load_defaults call. Fix based on: revid:zhenxing.he@sun.com-20091002081840-uv26f0flw4uvo33y Issue #3 -------- DESCRIPTION: the structure st_print_event_info constructor would not initialize the sql_mode member, although it did for sql_mode_inited (set to false). This would later raise the warning in valgrind when printing the sql_mode in the event header, as this print out is protected by a check against sql_mode_inited and sql_mode variables. Given that sql_mode was not initialized valgrind would output the warning. FIX: we add initialization of sql_mode to the st_print_event_info constructor. client/mysqlbinlog.cc: - Conditionally free ev->temp_buf. - save defaults_argv before handle_options is called. mysql-test/t/mysqlbinlog.test: Added test case from BUG#38468. sql/log_event.cc: Added initialization of sql_mode for st_print_event_info.
| * | merge from 5.1-mtrBjorn Munch2010-02-221-61/+233
| |\ \ | | |/ | |/|
| | * Bug #51135 Please increase the maximum number of connections allowed in ↵Bjorn Munch2010-02-171-10/+21
| | | | | | | | | | | | | | | | | | | | | | | | mysqltest Added --max-connections= argument to mysqltest and mtr Small fix to first patch: forgot to check before free'ing connections array
| | * Bug #50618 Please allow 'sleep $variable' in mtrBjorn Munch2010-02-091-5/+17
| | | | | | | | | | | | | | | | | | Made mtr's sleep function understand $variables A few fixes since previous patch, added tests
| | * merge from 5.1 mainBjorn Munch2010-02-076-19/+59
| | |\
| | * | Bug #39774 mysql-test-run's remove_file can't use wildcards, this should be ↵Bjorn Munch2010-02-041-1/+78
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | documented Added remove_files_wildcard that allows to remove multiple files at once. This is a port of original patch to Windows.
| | * | merge 49837Bjorn Munch2010-01-201-0/+4
| | |\ \
| | | * | Bug #49837 mysqltest exec cannot handle multi-line command correctlyBjorn Munch2010-01-201-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since the exec command line is passed on externally, it cannot take newlines Simply replace \n with space Now also added test case
| | * | | merge 48888Bjorn Munch2010-01-201-2/+2
| | |\ \ \
| | | * | | Bug #48888 mysqltest crashes on --replace_result if 'from' is longer than ↵Bjorn Munch2010-01-201-2/+2
| | | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ~1024 symbols valgrind pointed to a buffer allocated by my_realloc which looked fishy Replaced size with what was probably intended, added test case. Now also fixed line after review comment
| | * | | Bug #49878 delimiter under false 'if' makes mysqltest test fail with ↵Bjorn Munch2010-01-201-1/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 'Missing end of block' delimiter not executed so does not recognize end of block Always execute delimiter command, revert after false if() block.
| | * | | exporting server version and other as env var (bug#50471)Bernd Ocklin2010-01-201-1/+8
| | |/ /
| | * | Bug #49269 mysqltest crashes on 'reap' if query executed after 'send'Bjorn Munch2010-01-071-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | Undid amendment allowing pending reap after switching connections Moved check for pending reap earlier; failed if running with ps-protocol
| | * | Bug #49269 mysqltest crashes on 'reap' if query executed after 'send'Bjorn Munch2010-01-061-0/+1
| | | | | | | | | | | | | | | | | | | | Small amendment: ignore pending reap when switching connection, add test
| | * | Bug #49269 mysqltest crashes on 'reap' if query executed after 'send'Bjorn Munch2010-01-061-2/+12
| | | | | | | | | | | | | | | | | | | | Set a flag after send to trap the case
| | * | Bug #48863 mysql test: enable and disable case insensitive compare modeBjorn Munch2010-01-061-2/+24
| | | | | | | | | | | | | | | | | | | | Implemented --lowercase_result which lower cases next result
| | * | Merge from 5.1 mainBjorn Munch2009-12-163-44/+128
| | |\ \
| | * | | backport mysqltest send_eval from 42520Bjorn Munch2009-12-161-2/+4
| | | | |
| | * | | Bug #48250 mysqtest_embedded can lock destroyed mutexBjorn Munch2009-11-261-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As suggested, replaced relevant uses of my_fopen with fopen (and close) Tested on HPUX where it was reproducable with test innodb_bug30919
| | * | | Bug #48671 mysqltest fails on 'perl' in file sourced inside 'while'Bjorn Munch2009-11-111-32/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Actually, fails on 'perl' in any while Fixed essentially the same way as for append_file
| * | | | Recommit of Bug#49447.Staale Smedseng2010-02-0410-144/+171
| | |_|/ | |/| |
* | | | Merge MySQL 5.1.44 into MariaDB.unknown2010-03-046-19/+59
|\ \ \ \ | |/ / /
| * | | Bug #49223 Change help description for mysqldumpStaale Smedseng2010-01-271-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | --extended-insert Help message changed to the same as in the 5.1 online documentation.
| * | | WL#5182 Remove more deprecated 4.1/5.0 featuresMagne Mahre2010-01-273-5/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | WL#5182 is a follow-up to WL#5154, deprecating a few more options and system variables. client/client_priv.h: The warning message has been changed to not include a specific version number in the text. client/mysql.cc: --no-tee is deprecated client/mysqldump.c: --all is deprecated -a now points to create-options mysql-test/r/mysqlbinlog.result: Warning text changed mysql-test/suite/rpl/r/rpl_row_mysqlbinlog.result: Warning text changed sql/mysql_priv.h: The warning message has been changed to not include a specific version number in the text. sql/mysqld.cc: --use-symbolic-links is deprecated -s now points to --symbolic-links --warnings is deprecated -W now points to --log-warnings myisam_max_extra_sort_file_size is deprecated record_buffer is deprecated --log-update is deprecated --sql-bin-update-same is deprecated --skip-locking is deprecated --skip-symlink is deprecated --enable-locking is deprecated --delay-key-write-for-all-tables is deprecated
| * | | WL#5154 Remove deprecated 4.1 featuresMagne Mahre2010-01-215-10/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Several items said to be deprecated in the 4.1 manual have never been removed. This worklog adds deprecation warnings when these items are used, and warns the user that the items will be removed in MySQL 5.6. A couple of previously deprecation decision have been reversed (see single file comments) client/client_priv.h: Macro similar to the one in the server (mysql_priv.h) for printing a deprecation warning message client/mysql.cc: no-auto-rehash will not be deprecated skip-line-numbers will not be deprecated skip-column-names will not be deprecated no-pager is deprecated set-variable is deprecated no-named-commands is deprecated client/mysqladmin.cc: set-variable is deprecated client/mysqlbinlog.cc: position is deprecated client/mysqldump.c: first-slave is deprecated no-set-names is deprecated set-variable is deprecated mysql-test/r/mysqlbinlog.result: Adding the [Warning] to the test case, just to show that the deprecation works. The test case will be changed in Celosia to use --start-position. mysys/my_getopt.c: set-variable (include -O) is deprecated scripts/mysqld_multi.sh: Warning for mysqld_multi sql/mysqld.cc: default-collation is deprecated log-bin-trust-routine-creators is deprecated set-variable is deprecated default-character-set is deprecated safe-show-database is deprecated sql/share/errmsg.txt: Added version number for sql_log_update deprecation message.
| * | | mergeGeorgi Kodinov2009-12-241-1/+1
| |\ \ \
| | * | | Bug #48866: mysql.test fails under Fedora 12Georgi Kodinov2009-12-161-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | strmov() is not guaranteed to work correctly on overlapping source and destination buffers. On some OSes it may work, but Fedora 12 has a stpcpy() that's not working correctly on overlapping buffers. Fixed to use the overlap-safe version of strmov instead. Re-vitalized the overlap-safe version of strmov.
| * | | | Manual merge.Davi Arnaut2009-12-181-2/+2
| |\ \ \ \ | | |/ / /
| | * | | Bug#48983: Bad strmake calls (length one too long)Davi Arnaut2009-12-171-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The problem is a somewhat common misusage of the strmake function. The strmake(dst, src, len) function writes at most /len/ bytes to the string pointed to by src, not including the trailing null byte. Hence, if /len/ is the exact length of the destination buffer, a one byte buffer overflow can occur if the length of the source string is equal to or greater than /len/. client/mysqldump.c: Make room for the trailing null byte. libmysql/libmysql.c: Add comment, there is enough room in the buffer. Increase buffer length, two strings are concatenated. libmysqld/lib_sql.cc: Make room for the trailing null byte. mysys/default.c: Make room for the trailing null bytes. mysys/mf_pack.c: Make room for the trailing null byte. server-tools/instance-manager/commands.cc: Copy only if overflow isn't possible in both cases. server-tools/instance-manager/listener.cc: Make room for the trailing null byte. sql/log.cc: Make room for the trailing null byte. sql/sp_pcontext.h: Cosmetic fix. sql/sql_acl.cc: MAX_HOSTNAME already specifies space for the trailing null byte. sql/sql_parse.cc: Make room for the trailing null byte. sql/sql_table.cc: Make room for the trailing null byte.
| | * | | Backport fix for Bug #27884.Jim Winstead2009-11-231-4/+7
| | | | |
| * | | | Merge approved bug fixJim Winstead2009-12-171-1/+2
| |\ \ \ \
| | * | | | The mysql command line client ignored the --skip-column-names optionJim Winstead2009-09-211-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | when used in conjunction with --vertical. (Bug #47147, patch by Harrison Fisk)
| * | | | | This is a patch for bug#41569.unknown2009-12-031-0/+4
| | |_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | "mysql_upgrade (ver 5.1) add 3 fields to mysql.proc table but does not set values". mysql_upgrade (ver 5.1) adds 3 fields (character_set_client, collation_connection and db_collation) to the mysql.proc table, but does not set any values. When we run stored procedures, which were created with mysql 5.0, a warning is logged into the error log. The solution to this is for mysql_upgrade to set default best guess values for these fields. A warning is also written during upgrade, to make the user aware that default values are set. client/mysql_upgrade.c: Result lines which start with "WARNING" are passed through to the output. This way we have a way of triggering WARNING-messages during upgrade directly from the .sql-script. mysql-test/r/mysql_upgrade.result: Expected result of the test. mysql-test/t/mysql_upgrade.test: Added a test-case for the bug. scripts/mysql_system_tables_fix.sql: The new fields are populated, and warnings are written.