summaryrefslogtreecommitdiff
path: root/client/mysqldump.c
Commit message (Collapse)AuthorAgeFilesLines
* Merge with MariaDB 5.2Michael Widenius2011-05-101-4/+19
|\
| * Merge with MariaDB 5.1Michael Widenius2011-05-031-4/+19
| |\
| | * Merge with MySQL 5.1.57/58Michael Widenius2011-05-021-4/+19
| | |\ | | | | | | | | | | | | Moved some BSD string functions from Unireg
| | | * Bug#11766310 : 59398: MYSQLDUMP 5.1 CAN'T HANDLE A DASHNirbhay Choubey2011-02-211-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ("-") IN DATABASE NAMES IN ALTER DATABASE. mysqldump did not quote database name in 'ALTER DATABASE' statements in its output. This can further cause a failure while loading if database name contains a hyphen '-'. This happened as, while printing the 'ALTER DATABASE' statements, the database name was not quoted. Fixed by quoting the database name. client/mysqldump.c: Bug#11766310 : 59398: MYSQLDUMP 5.1 CAN'T HANDLE A DASH ("-") IN DATABASE NAMES IN ALTER DATABASE. Modified the print statement in order to print the quoted database name for 'ALTER DATABASE' statements. mysql-test/r/mysqldump.result: Added a test case for bug#11766310. mysql-test/t/mysqldump.test: Added a test case for bug#11766310.
| | | * Bug#13618 : mysqldump --xml omits comment on table fieldNirbhay Choubey2011-01-141-2/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When mysqldump tries to dump information in xml format, the result does not contain field level comments. In order to retrieve various informations for a field/column, mysqldump currently uses 'show fields from <tab>' statement. The attributes returned by the statement lacks the information regarding field comments. Fixed by changing the query to one that probes I_S to retrieve required field informations, including the field comment. client/mysqldump.c: Bug#13618 : mysqldump --xml omits comment on table field. Replaced the 'show fields' command by a statement that queries I_S, in order to retrieve information on all the attributes that 'show fields' returns along-with an additional column_comment information. mysql-test/r/client_xml.result: Result modifications for bug#13618. mysql-test/r/mysqldump.result: Result modifications for bug#13618. mysql-test/t/mysqldump.test: Added a testcase for bug#13618.
* | | | Merge various replication-related patches into MariaDB 5.3:unknown2011-04-081-24/+95
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | - MWL#116 Group commit - MWL#136 Enhancements for START TRANSACTION WITH CONSISTENT SNAPSHOT - MWL#47 Annotate_rows_log_event - MWL#163 innodb_release_locks_early - Percona patch enhancing row-based replication for tables with no primary key
| * | | MWL#136: Rename binlog_trx_{file,position} to the much better ↵unknown2010-11-081-5/+5
| | | | | | | | | | | | | | | | binlog_snapshot_{file,position}
| * | | MWL#136: Cross-engine consistency for START TRANSACTION WITH CONSISTENT SNAPSHOTunknown2010-11-071-24/+95
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make the binlog handlerton participate in START TRANSACTION WITH CONSISTENT SNAPSHOT, recording the binlog position corresponding to the snapshot taken in other MVCC storage engines. Expose this consistent binlog position as the new status variables binlog_trx_file and binlog_trx_position. This enables to get a fully non-locking snapshot of the database (including binlog position for slave provisioning), avoiding the need for FLUSH TABLES WITH READ LOCK. Modify mysqldump to detect if the server supports this new feature, and if so, avoid FLUSH TABLES WITH READ LOCK for --single-transaction --master-data snapshot backups.
* | | Ensure that all clients reads the appropriate 'client', client-mariadb and ↵Michael Widenius2011-03-181-1/+2
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 'mariadb' sections from my.cnf The mysqld server and all clients now reads the new client-server section Fixed that mysqldumpslow supports new slow log formats and new mysqld --slow- options client/mysql.cc: Read also client-server and client-mariadb sections. client/mysql_upgrade.c: Read also client-server and client-mariadb sections. client/mysqladmin.cc: Read also client-server and client-mariadb sections. client/mysqlbinlog.cc: Read also client-server and client-mariadb sections. client/mysqlcheck.c: Read also client-server and client-mariadb sections. client/mysqldump.c: Read also client-server and client-mariadb sections. client/mysqlimport.c: Read also client-server and client-mariadb sections. client/mysqlshow.c: Read also client-server and client-mariadb sections. client/mysqltest.cc: Read also client-server and client-mariadb sections. extra/my_print_defaults.c: Updated help text scripts/mysql_fix_privilege_tables.sh: Read also sections client client-server client-mariadb scripts/mysql_install_db.pl.in: Also allow --data=* option Read also groups mariadb, server and client-server. scripts/mysql_install_db.sh: Also allow --data=* option Read also groups mariadb, server and client-server. Added --lose-skip-pbxt to bootstrap scripts/mysql_secure_installation.sh: Read also groups client-server and client-mariadb scripts/mysqld_multi.sh: Read also group mariadb scripts/mysqld_safe.sh: Read also groups mariadb server and client-server scripts/mysqldumpslow.sh: Fixed to support new slow log formats Added sorting on -ae (aggregated number of retreived rows) and e (retrieved rows) Read also group 'mariadb' If there is many instances of same option, use last one. Get slow log file from options log-slow-queries=filename or query-log-file=filename Added support for future --log-basename option sql-common/client.c: Read also groups 'client-server' and 'client-mariadb' tests/mysql_client_test.c: Read also groups 'client-server' and 'client-mariadb' tests/thread_test.c: Read also groups 'client-server' and 'client-mariadb'
* | Fixed compiler warnings from Windows compilerMichael Widenius2010-08-111-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | Merge with MySQL 5.1.49Michael Widenius2010-08-021-73/+73
|\ \ | |/ | | | | 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-101-73/+73
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | Fixes for Opensolaris (to get buildbot green)Michael Widenius2010-06-231-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - 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.
* | Fixed some bugs in the Maria storage engineMichael Widenius2010-06-141-1/+1
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - 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()
* Recommit of Bug#49447.Staale Smedseng2010-02-041-43/+57
|
* 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-271-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-211-3/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* 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.
| * Bug #45287: phase 2 : 5.0 64 bit compilation warningsGeorgi Kodinov2009-07-161-2/+2
| | | | | | | | | | | | Fixed various compilation warnings when compiling on a 64 bit windows.
* | Fix for a few assorted compiler warnings.Davi Arnaut2009-08-281-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | client/mysql.cc: Remove leading whitespace. Remove extra text after #else directive. client/mysqldump.c: Function does not take a parameter. mysys/array.c: buffer is a uchar pointer. sql/item.cc: Assert if it should not happen. storage/myisam/mi_check.c: Cast to expected type. This is probably a bug, but it is casted in a similar way in another part of the code. storage/ndb/include/mgmapi/ndb_logevent.h: Apply fix from cluster team. tests/mysql_client_test.c: Remove extraneous slash.
* | Additional post-commit fix (bug #30946): server versionGleb Shchepa2009-08-041-1/+1
| | | | | | | | | | in a conditional commentary at the new SELECT ... INTO OUTFILE ... CHARACTER SET syntax has been updated to 5.1.38.
* | Bug# 30946: mysqldump silently ignores --default-character-setGleb Shchepa2009-07-311-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | when used with --tab 1) New syntax: added CHARACTER SET clause to the SELECT ... INTO OUTFILE (to complement the same clause in LOAD DATA INFILE). mysqldump is updated to use this in --tab mode. 2) ESCAPED BY/ENCLOSED BY field parameters are documented as accepting CHAR argument, however SELECT .. INTO OUTFILE silently ignored rests of multisymbol arguments. For the symmetrical behavior with LOAD DATA INFILE the server has been modified to fail with the same error: ERROR 42000: Field separator argument is not what is expected; check the manual 3) Current LOAD DATA INFILE recognizes field/line separators "as is" without converting from client charset to data file charset. So, it is supposed, that input file of LOAD DATA INFILE consists of data in one charset and separators in other charset. For the compatibility with that [buggy] behaviour SELECT INTO OUTFILE implementation has been saved "as is" too, but the new warning message has been added: Non-ASCII separator arguments are not fully supported This message warns on field/line separators that contain non-ASCII symbols. client/mysqldump.c: mysqldump has been updated to call SELECT ... INTO OUTFILE statement with a charset from the --default-charset command line parameter. mysql-test/r/mysqldump.result: Added test case for bug #30946. mysql-test/r/outfile_loaddata.result: Added test case for bug #30946. mysql-test/t/mysqldump.test: Added test case for bug #30946. mysql-test/t/outfile_loaddata.test: Added test case for bug #30946. sql/field.cc: String conversion code has been moved from check_string_copy_error() to convert_to_printable() for reuse. sql/share/errmsg.txt: New WARN_NON_ASCII_SEPARATOR_NOT_IMPLEMENTED message has been added. sql/sql_class.cc: The select_export::prepare() method has been modified to: 1) raise the ER_WRONG_FIELD_TERMINATORS error on multisymbol ENCLOSED BY/ESCAPED BY field arguments like LOAD DATA INFILE; 2) warn with a new WARN_NON_ASCII_SEPARATOR_NOT_IMPLEMENTED message on non-ASCII field or line separators. The select_export::send_data() merhod has been modified to convert item data to output charset (see new SELECT INTO OUTFILE syntax). By default the BINARY charset is used for backward compatibility. sql/sql_class.h: The select_export::write_cs field added to keep output charset. sql/sql_load.cc: mysql_load has been modified to warn on non-ASCII field or line separators with a new WARN_NON_ASCII_SEPARATOR_NOT_IMPLEMENTED message. sql/sql_string.cc: New global function has been added: convert_to_printable() (common code has been moved from check_string_copy_error()). sql/sql_string.h: New String::is_ascii() method and new global convert_to_printable() function have been added. sql/sql_yacc.yy: New syntax: added CHARACTER SET clause to the SELECT ... INTO OUTFILE (to complement the same clause in LOAD DATA INFILE). By default the BINARY charset is used for backward compatibility.
* | Merge in bug fixes for client toolsJim Winstead2009-07-141-1/+2
|\ \
| * | The output of mysqldump --tab for views included a DROP TABLE statementJim Winstead2009-05-181-1/+2
| | | | | | | | | | | | | | | | | | without the IF EXISTS qualifier even though no temporary table is created as for all-in-one dumps including views. (Bug #37377)
* | | Merge bug fixesJim Winstead2009-07-131-5/+13
|\ \ \ | |/ /
| * | mysqldump would not dump the INFORMATION_SCHEMA even when it was explicitlyJim Winstead2009-05-121-5/+13
| | | | | | | | | | | | | | | requested. (Bug #33762)
* | | fixed compilation warnings on macosxGeorgi Kodinov2009-07-071-2/+2
| | |
* | | merged 5.0-bugteam -> 5.1-bugteamGeorgi Kodinov2009-06-051-2/+2
|\ \ \ | | |/ | |/|
| * | Addendum to Bug #45286 : implement reviewer's remarks.Georgi Kodinov2009-06-051-2/+2
| | |
* | | Bug #45286: compilation warnings on mysql-5.0-bugteam on MacOSXGeorgi Kodinov2009-06-051-2/+2
| | | | | | | | | | | | Merged the 5.0 fix to 5.1 and fixed the 5.1 specific warnings.
* | | automergeGeorgi Kodinov2009-06-051-2/+2
|\ \ \ | |/ /
| * | Bug #45286: compilation warnings on mysql-5.0-bugteam on MacOSXGeorgi Kodinov2009-06-051-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixed the 5.0-bugteam MacOSX warnings. client/mysqldump.c: Bug #45286: typecasts cmd-line-utils/readline/bind.c: Bug #45286: use variable of right type cmd-line-utils/readline/display.c: Bug #45286: use variable of right type dbug/user.r: Bug #45286: no warnings in generating man pages strings/ctype.c: Bug #45286: typecasts
| * | auto-mergeIgnacio Galarza2009-03-191-1/+2
| |\ \
| * \ \ auto-mergeIgnacio Galarza2009-03-191-11/+26
| |\ \ \
* | | | | Fix compilation failures: get rid of C++ specifics in C-code.Alexander Nozdrin2009-06-031-1/+1
| | | | |
* | | | | Bug#34861: mysqldump with --tab gives weird output for triggers.Tatiana A. Nurnberg2009-05-271-20/+28
| |_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | mysqldump --tab still dumped triggers to stdout rather than to individual tables. We now append triggers to the .sql file for the corresponding table. --events and --routines correspond to a database rather than a table and will still go to stdout with --tab unless redirected with --result-file (-r). client/mysqldump.c: Extend open_sql_file_for_table() so we can open-append. Change dump_triggers_for_table() so it will append its output to the table's .sql-file when --tab is used. mysql-test/r/mysqldump.result: Show that when using --tab, triggers now end up in the .sql file with the corresponding table (after that table), while --routines and --events go to stdout or --result-file. mysql-test/t/mysqldump.test: Show that when using --tab, triggers now end up in the .sql file with the corresponding table (after that table), while --routines and --events go to stdout or --result-file.
* | | | Various command-line utilities, including mysqlbinlog and mysqldump, don'tJim Winstead2009-05-071-0/+2
| | | | | | | | | | | | | | | | | | | | handle the --skip-password option correctly. (Bug #28479)
* | | | Fix list of options enabled by mysqldump --compact (Bug #32408)Jim Winstead2009-04-281-1/+1
| | | |
* | | | auto-mergeIgnacio Galarza2009-03-191-1/+2
|\ \ \ \
| * \ \ \ Merge 5.0-bugteam to 5.1-bugteamSatya B2009-03-191-1/+2
| |\ \ \ \ | | | |_|/ | | |/| |
| | * | | Fix for BUG#21360 - mysqldump error on federated tablesSatya B2009-03-191-1/+2
| | | |/ | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When loading dump created by mysqldump tool an error is thrown saying storage engine for the table doesn't have an option. mysqldump tries to re-insert the data into the federated table which causes the error. Since the data is already available on the remote server, mysqldump shouldn't try to dump the data again for FEDERATED tables. As stated in the bug page, it can be considered similar to the MERGE ENGINE with "view only" nature. Fixed by adding the "FEDERATED ENGINE" to the exception list to ignore the data. client/mysqldump.c: Fixed check_if_ignore_table() to ignore FEDERATED engine when dumping the table data. mysql-test/r/federated.result: Result file for BUG#21360 mysql-test/t/federated.test: Testcase for BUG#21360
* | | | auto-mergeIgnacio Galarza2009-03-171-6/+7
|\ \ \ \ | |/ / /
| * | | Merge fix for bug 42635, which is no change for 5.1 except addition of Chad MILLER2009-03-121-1/+1
| |\ \ \ | | |/ / | | | | | | | | | | | | test and (slightly different than 5.0) results.
| | * | Merge from bugfix tree.Chad MILLER2009-03-101-6/+20
| | |\ \
| | | * | Bug#42635: mysqldump includes views that were excluded using the \Chad MILLER2009-03-091-5/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | --ignore-table option mysqldump would correctly omit temporary tables for views, but would incorrectly still emit all CREATE VIEW statements. Backport a fix from 5.1, where we capture the names we want to emit views for in one pass (the placeholder tables) and in the pass where we actually emit the views, we don't emit a view if it wasn't in that list.
| | | * | Fix non-DBUG return.Chad MILLER2009-03-091-1/+1
| | | | |
| * | | | manual mergeTatiana A. Nurnberg2009-02-191-5/+6
| |\ \ \ \ | | |/ / /
| | * | | Bug#33550: mysqldump 4.0 compatibility brokenTatiana A. Nurnberg2009-02-021-5/+6
| | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. client/mysqldump.c: in 3.23/4.0 compat mode, don't do charset magic, period. not in output, but not on the server, either! mysql-test/r/mysqldump-max.result: character_set_client magic lives in version-conditional now (except in compat 3.23/4.0 mode, in which case we don't output any at all!). mysql-test/r/mysqldump.result: character_set_client magic lives in version-conditional now (except in compat 3.23/4.0 mode, in which case we don't output any at all!). mysql-test/r/openssl_1.result: character_set_client magic lives in version-conditional now (except in compat 3.23/4.0 mode, in which case we don't output any at all!). mysql-test/t/mysqldump.test: character_set_client magic lives in version-conditional now (except in compat 3.23/4.0 mode, in which case we don't output any at all!).