Commit graph

3264 commits

Author SHA1 Message Date
Ignacio Galarza
e8c13e6a54 auto-merge 2009-03-19 09:58:56 -04:00
Ignacio Galarza
675c3ce2bb auto-merge 2009-03-19 09:44:58 -04:00
Magnus Svensson
776bb04abf Merge 2009-03-19 12:42:55 +01:00
Sergey Glukhov
2ea2cc02c3 5.0-bugteam->5.1-bugteam merge 2009-03-19 13:26:12 +04:00
Satya B
5c49e6ebb3 Merge 5.0-bugteam to 5.1-bugteam 2009-03-19 14:19:51 +05:30
Sergey Glukhov
173ea364c8 automerge 2009-03-19 12:42:26 +04:00
Sergey Glukhov
8c7789c313 Bug#41268 Help Text for \c is misleading in client command line interface
fixed help message


client/mysql.cc:
  fixed help message
2009-03-19 12:37:34 +04:00
Satya B
322fe7419f merge to 5.0-bugteam 2009-03-19 13:53:24 +05:30
Satya B
cad09dab8f Fix for BUG#21360 - mysqldump error on federated tables
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
2009-03-19 11:36:37 +05:30
Bjorn Munch
9f32fdd9e2 merge from main 2009-03-18 13:44:05 +01:00
Alexey Kopytov
da7dc30371 Automerge. 2009-03-18 11:35:52 +03:00
Alexey Kopytov
73a7d99331 Fix for bug#41486: extra character appears in BLOB for every
~40Mb after mysqldump/import 
        
When the input string exceeds the maximum allowed size for the 
internal buffer, batch_readline() returns a truncated string. 
Since there was no way for a caller to determine whether the 
string was truncated or not, the command line client assumed 
batch_readline() to always return the whole input string and 
appended a newline character. This resulted in garbled data 
when importing dumps containing strings longer than the 
maximum input buffer size. 
  
Fixed by adding a flag to the batch_readline() interface to 
signal a truncated string to the caller. 
  
Other minor problems fixed during patch implementation: 
 
- The maximum allowed buffer size for batch_readline() was set 
up depending on the client's max_allowed_packet value. It does 
not actully make any sense, as those variables are not 
related. The input buffer size limit is now always set to 1 
MB. 
  
- fill_buffer() did not always set the EOF flag. 
 
- The input buffer could actually grow twice as the specified 
limit due to insufficient checks in intern_read_line(). 

client/my_readline.h:
  Changed the interface of batch_readline().
client/mysql.cc:
  Honor the truncated flag returned by batch_readline() and do  
  not append the newline character if it was set. Since we can't 
  change the interfaces for readline()/fgets() used in the  
  interactive mode, always assume the returned string was not  
  truncated. In addition, always set the batch_readline()  
  internal buffer to 1 MB, independently from the client's  
  max_allowed_packet.
client/readline.cc:
  Added the 'truncated' argument do batch_readline() to signal 
  truncated string to a caller. 
  Fixed fill_buffer() to set the EOF flag correctly. 
  Fixed checks in intern_read_line() to not allow the internal  
  buffer grow past the specified limit.
mysql-test/r/mysql.result:
  Added a test case for bug #41486.
mysql-test/t/mysql.test:
  Added a test case for bug #41486.
2009-03-18 11:18:24 +03:00
Ignacio Galarza
0d588edf61 auto-merge 2009-03-17 16:29:24 -04:00
Alexey Kopytov
07a3de2019 Automerge. 2009-03-18 11:36:48 +03:00
Alexey Kopytov
2b2533955f Manual merge. 2009-03-18 11:27:49 +03:00
Magnus Svensson
aa640b7d0b Bug#43361 msyql_client_test output lost
- Print the output(if any) from the command that failed, in many 
   cases this will make it possible to immediately see what went wrong.
2009-03-13 16:06:50 +01:00
Chad MILLER
510e9ddf36 Merge bug fix and upstream. 2009-03-12 13:32:13 -04:00
Chad MILLER
5139538c9c Merge fix for bug 42635, which is no change for 5.1 except addition of
test and (slightly different than 5.0) results.
2009-03-12 11:39:40 -04:00
Bjorn Munch
5e566b8eff Bug #43532 mtr should not rely on diff to report test results
mtr on Windows does not give decent diff due to missing diff install
Modified to look for 'mtrdiff' if diff not available.
2009-03-11 14:52:50 +01:00
Chad MILLER
b5804db393 Merge from bugfix tree. 2009-03-10 12:53:43 -04:00
Chad MILLER
89a1db2bd2 Bug#42635: mysqldump includes views that were excluded using the \
--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.
2009-03-09 16:58:47 -04:00
Chad MILLER
e0bc002576 Fix non-DBUG return. 2009-03-09 16:56:46 -04:00
Georgi Kodinov
3033ea85a2 Bug #42434: license of mysys MD5 implementation is not GPL-compatible
Took the Xfree implementation (based on the same rewrite as the NDB one)
and added it instead of the current implementation.
Added a macro to make the calls to MD5 more streamlined. 

client/mysqlmanager-pwgen.c:
  Bug #42434: changed to call the macro
include/my_md5.h:
  Bug #42434: use the Xfree implementation
mysys/md5.c:
  Bug #42434: use the Xfree implementation
sql/item_strfunc.cc:
  Bug #42434: changed to call the macro
sql/table.cc:
  Bug #42434: changed to call the macro
tools/mysqlmanager.c:
  Bug #42434: changed to call the macro
2009-03-09 20:57:03 +02:00
Georgi Kodinov
dc69c3439f merged bug 31060 to 5.1-bugteam 2009-02-25 11:09:41 +02:00
Georgi Kodinov
4b05db5cfd Bug #31060: MySQL CLI parser bug 2
There was a problem when a DELIMITER COMMAND is not the first 
command on the line. I this case an extra line feed was added
to the glob buffer and this was causing subsequent attempts 
to enter this delimiter to fail.
Fixed by not adding a new line to the glob buffer if the 
command being added is a DELIMITER

client/mysql.cc:
  Bug #31060: Don't add a new line if DELIMTER is added to
  the glob buffer
mysql-test/r/mysql.result:
  Bug #31060: test case
mysql-test/t/mysql.test:
  Bug #31060: test case
2009-02-24 15:06:28 +02:00
Georgi Kodinov
85ea3740ff Bug #31060: MySQL CLI parser bug 2
There was a problem when a DELIMITER COMMAND is not the first 
command on the line. I this case an extra line feed was added
to the glob buffer and this was causing subsequent attempts 
to enter this delimiter to fail.
Fixed by not adding a new line to the glob buffer if the 
command being added is a DELIMITER

client/mysql.cc:
  Bug #31060: Don't add a new line if DELIMTER is added to
  the glob buffer
mysql-test/r/mysql.result:
  Bug #31060: test case
mysql-test/t/mysql.test:
  Bug #31060: test case
2009-02-24 15:06:28 +02:00
Tatiana A. Nurnberg
87fcb23d4b automerge 2009-02-24 09:33:04 +01:00
Tatiana A. Nurnberg
982f88fc31 automerge 2009-02-24 09:31:42 +01:00
Tatiana A. Nurnberg
99d1cdcb11 manual merge 2009-02-19 18:22:28 +01:00
Tatiana A. Nurnberg
4a3f5b2b20 Bug#33550: mysqldump 4.0 compatibility broken
mysqldump included character_set_client magic
that is unknown before 4.1 even when asked for
an appropriate compatibility mode.

In compatibility (3.23, 4.0) mode, we do not
output charset statements (not even in a
"comment conditional"), nor do we do magic on
the server, even if the server is sufficient
new (4.1+). Table-names will be output converted
to the charset requested by mysqldump; if such
a conversion is not possible (Ivrit -> Latin),
mysqldump will fail.
2009-02-19 17:33:28 +01:00
Tatiana A. Nurnberg
1d0b5cc9db Bug#37400: mysql: Bad help message for charset command
Typo existed in help-text for command "charset" in mysql
client, making the parameter-name different for long and
short forms of the command for no good reason.

Fixed.

client/mysql.cc:
  Make parameter-name in help-text the same for
  long and short forms, for consistency.
2009-02-19 04:58:10 +01:00
Georgi Kodinov
0b87d4363b merge of bug 26724 to 5.1-bugteam 2009-02-18 12:26:11 +02:00
Georgi Kodinov
41728a3104 Bug #26724: mysql command line client, ignores input to internal cmd after space
Removed the misleading "NOTE:" from the \h command. 

client/mysql.cc:
  Bug #26724: removed the misleading note from the \h command
2009-02-18 12:18:38 +02:00
Alexey Kopytov
d8ac91387b Merge from dev tree. 2009-02-14 12:11:32 +03:00
Alexey Kopytov
fb3e5910ec Merge from dev tree. 2009-02-14 12:09:35 +03:00
Ignacio Galarza
5b7347bda3 Bug#29125 Windows Server X64: so many compiler warnings
- Remove bothersome warning messages.  This change focuses on the warnings 
that are covered by the ignore file: support-files/compiler_warnings.supp.
- Strings are guaranteed to be max uint in length
2009-02-13 11:41:47 -05:00
Alexey Kopytov
dd35a152f9 Merge mysql-5.0-bugteam -> mysql-5.1-bugteam. 2009-02-13 19:20:56 +03:00
Alexey Kopytov
9373b1b880 Merge from dev tree. 2009-02-13 19:17:07 +03:00
Rafal Somla
bdbe393db1 Modifications to MTR and mysqltest to improve feedback from the latter when
testcase checks are made.
      
MTR spawns mysqltest to run check-testcase test before and after each testcase 
it runs. It can also run check-warnings using mysqltest. Since it happened on PB 
that these checks hanged, this patch provides additional feedback to help 
investigating such failures:
      
- mysqltest is modified to give feedback about main steps in execution of a 
testcase if run in verbose mode (including connection to the server),
     
- MTR is modified to run mysqltest in verbose mode when doing check-testcase or 
check-warnings. The diagnostic output from mysqltest is preserved so that it is 
saved upon test failure.

client/mysqltest.cc:
  Add verbose messages informing about main steps in execution of a testcase.
mysql-test/mysql-test-run.pl:
  - When doing check-testcase or check-warnings run mysqltest in verbose mode.
  - Do not delete the mysqltest's error log if errors are detected during these
2009-02-13 16:27:33 +01:00
Ignacio Galarza
54fbbf9591 Bug#29125 Windows Server X64: so many compiler warnings
- Remove bothersome warning messages.  This change focuses on the warnings 
that are covered by the ignore file: support-files/compiler_warnings.supp.
- Strings are guaranteed to be max uint in length
2009-02-10 17:47:54 -05:00
Georgi Kodinov
29f898bb64 merged 5.0-bugteam -> 5.1-bugteam 2009-02-10 16:26:18 +02:00
Alexey Kopytov
1571f06196 Merge into dev tree. 2009-02-10 16:27:35 +03:00
Georgi Kodinov
fab053ccf8 From jperkin : Merge libedit 2.11 and related files,
based on NetBSD CVS as of 2009/02/06 20:09:00.
2009-02-10 14:39:14 +02:00
Alexey Kopytov
fd8bf58ca9 Fix for bug #41868: crash or memory overrun with concat + upper,
date_format functions

String::realloc() did not check whether the existing string data fits in
the newly allocated buffer for cases when reallocating a String object
with external buffer (i.e.alloced == FALSE).  This could lead to memory
overruns in some cases.

client/sql_string.cc:
  Fixed String::realloc() to check whether the existing string data fits
  in the newly allocated buffer for cases when reallocating a String
  object with external buffer.
mysql-test/r/func_str.result:
  Added a test case for bug #41868.
mysql-test/t/func_str.test:
  Added a test case for bug #41868.
sql/sql_class.cc:
  After each call to Item::send() in select_send::send_data() reset
  buffer to its original state to reduce unnecessary malloc() calls. See
  comments for bug #41868 for detailed analysis.
sql/sql_string.cc:
  Fixed String::realloc() to check whether the existing string data fits
  in the newly allocated buffer for cases when reallocating a String
  object with external buffer.
2009-02-10 15:38:56 +03:00
Alexey Kopytov
a8c98eb953 Merge mysql-5.0-bugteam -> mysql-5.1-bugteam. 2009-02-06 12:53:20 +03:00
Alexey Kopytov
b30239bc1a Temporarily reverted patch for bug #41868 as it was causing problems in PB. 2009-02-06 12:51:11 +03:00
Alexey Kopytov
4cd0e2fac4 Merge mysql-5.0-bugteam -> mysql-5.1-bugteam. 2009-02-05 15:49:59 +03:00
Alexey Kopytov
759b626d11 Merge to team tree. 2009-02-05 15:48:30 +03:00
Alexey Kopytov
dfbba6e7fd Fix for bug #41868: crash or memory overrun with concat + upper, date_format
functions
      
String::realloc() did not check whether the existing string data fits in the newly
allocated buffer for cases when reallocating a String object with external buffer
(i.e.alloced == FALSE).  This could lead to memory overruns in some cases.


mysql-test/r/func_str.result:
  Added a test case for bug #41868.
mysql-test/t/func_str.test:
  Added a test case for bug #41868.
sql/sql_class.cc:
  After each call to Item::send() in select_send::send_data() reset buffer to its
  original state to reduce unnecessary malloc() calls. See comments for bug #41868
  for detailed analysis.
sql/sql_string.cc:
  Fixed String::realloc() to check whether the existing string data fits in the newly allocated buffer for cases when reallocating a String object with external buffer.
2009-02-03 20:19:01 +03:00
Tatiana A. Nurnberg
0ad6e488a2 Bug#33550: mysqldump 4.0 compatibility broken
mysqldump included character_set_client magic
that is unknown before 4.1 even when asked for
an appropriate compatibility mode.

In compatibility (3.23, 4.0) mode, we do not
output charset statements (not even in a
"comment conditional"), nor do we do magic on
the server, even if the server is sufficient
new (4.1+). Table-names will be output converted
to the charset requested by mysqldump; if such
a conversion is not possible (Ivrit -> Latin),
mysqldump will fail.

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!).
2009-02-02 18:19:07 +01:00