summaryrefslogtreecommitdiff
path: root/tests
Commit message (Collapse)AuthorAgeFilesLines
* Merge MySQL->MariaDBSergey Petrunya2009-09-083-96/+288
|\ | | | | | | | | | | | | * Finished Monty and Jani's merge * Some InnoDB tests still fail (because it's old xtradb code run against newer testsuite). They are expected to go after mergning with the latest xtradb.
| * Manual merge.Davi Arnaut2009-08-101-0/+29
| |\
| | * Bug#45010: invalid memory reads during parsing some strange statementsDavi Arnaut2009-08-071-0/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The problem is that the lexer could inadvertently skip over the end of a query being parsed if it encountered a malformed multibyte character. A specially crated query string could cause the lexer to jump up to six bytes past the end of the query buffer. Another problem was that the laxer could use unfiltered user input as a signed array index for the parser maps (having upper and lower bounds 0 and 256 respectively). The solution is to ensure that the lexer only skips over well-formed multibyte characters and that the index value of the parser maps is always a unsigned value. mysql-test/r/ctype_recoding.result: Update test case result: ending backtick is not skipped over anymore. sql/sql_lex.cc: Characters being analyzed must be unsigned as they can be used as indexes for the parser maps. Only skip over if the string is a valid multi-byte sequence. tests/mysql_client_test.c: Add test case for Bug#45010
| | * Merge from mysql-5.0.Davi Arnaut2009-08-041-0/+0
| | |\
| | | * Merge main 5.0 into 5.0-build.Joerg Bruehe2009-07-091-0/+22
| | | |\
| * | | \ Merge from mysql-5.1.Davi Arnaut2009-08-041-0/+0
| |\ \ \ \
| | * \ \ \ Merge main 5.1 into 5.1-build.Joerg Bruehe2009-07-161-1/+1
| | |\ \ \ \
| | * \ \ \ \ merge fixDaniel Fischer2009-07-031-0/+0
| | |\ \ \ \ \ | | | | |_|/ / | | | |/| | |
| | | * | | | Bug#44647 - fix file permissions.Daniel Fischer2009-07-031-0/+0
| | | | | | |
| * | | | | | Merge from mysql-5.0-bugteam.Davi Arnaut2009-07-271-23/+30
| |\ \ \ \ \ \ | | | |_|_|/ / | | |/| | | |
| | * | | | | Bug#20023: mysql_change_user() resets the value of SQL_BIG_SELECTSDavi Arnaut2009-07-271-12/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Post-merge fix: test case could fail due to a conversion of the max_join_size value to a integer. Fixed by preserving the value as a string for comparison purposes. tests/mysql_client_test.c: Preserve max_join_size value as a string instead of converting it to a integer -- value can be larger then the type used.
| | * | | | | 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.
| | * | | | Bug #45790 Potential DoS vector: Writing of user input to logStaale Smedseng2009-07-011-0/+22
| | | |/ / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | without proper formatting The problem is that a suitably crafted database identifier supplied to COM_CREATE_DB or COM_DROP_DB can cause a SIGSEGV, and thereby a denial of service. The database name is printed to the log without using a format string, so potential attackers can control the behavior of my_b_vprintf() by supplying their own format string. A CREATE or DROP privilege would be required. This patch supplies a format string to the printing of the database name. A test case is added to mysql_client_test. sql/sql_parse.cc: Added format strings. tests/mysql_client_test.c: Added new test case.
| * | | | Bug#44495: Prepared Statement: CALL p(<x>) - `thd->protocol == ↵Davi Arnaut2009-07-151-0/+52
| | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | &thd->protocol_text' failed Merge Konstantin's patch and add a test case. tests/mysql_client_test.c: Add test case for Bug#44495
| * | | Bug #43397 mysql headers redefine pthread_mutex_initStaale Smedseng2009-07-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | unnecessarily The problem is that libmysqlclient.so is built with THREAD undefined, while a client compiling against the same header files will see THREAD as defined and definitions in my_pthread.h will be included, possibly resulting in undefined symbols that cannot be resolved with libmysqlclient.so. The suggested solution is to require that clients wanting to link with libmysqlclient.so should be built with MYSQL_CLIENT_NO_THREADS defined. This requires a documentation change, and more details for this will be supplied if this patch is approved. The MYSQL_CLIENT_NO_THREADS define was renamed from UNDEF_THREADS_HACK, to get a more suitable (less suspicious) name for the define. (The UNDEF_THREADS_HACK is retained for backwards compatibility, though.) This patch is also in anticipation of WL#4958, which will remove this problem altogether by dropping the building of libmysqlclient.
| * | | Fix for bug#42364 reverted.Ramil Kalimullin2009-07-061-2/+0
| | | |
| * | | Bug#42364 SHOW ERRORS returns empty resultset after dropping non existent tableSergey Glukhov2009-07-031-0/+2
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | enabled message storing into error message list for 'drop table' command mysql-test/r/warnings.result: test result mysql-test/t/warnings.test: test case sql/sql_table.cc: We should skip error sending then we should return warnings to client as some functions may send its own errors, so we should set no_warnings_for_error= 0 only in case of warning. The fix is to enable message storing into error message list for 'drop table' command(only for error case). tests/mysql_client_test.c: test fix
| * | Workaround a compiler that does not support certain C99 features for C code.Davi Arnaut2009-05-231-2/+2
| | | | | | | | | | | | | | | tests/mysql_client_test.c: Use a suitable constant for specifying the size of the array.
| * | Recommit of bug 43560 after merge with mysql-5.1-bugteamStaale Smedseng2009-05-201-15/+127
| | |
| * | Bug#23471 prepared for commit in 5.1 gca branchBernt M. Johnsen2009-05-051-1/+51
| |\ \ | | |/
| | * Bug#23471 prepared for commit in 5.0 gca branchBernt M. Johnsen2009-05-051-1/+19
| | |
| * | mergingAlexey Botchkov2009-04-301-58/+0
| |\ \ | | |/
| | * mysql_client_test fixed.Alexey Botchkov2009-04-301-58/+0
| | | | | | | | | | | | | | | | | | | | | | | | per-file comments: tests/mysql_client_test.c the test for bug 37956 isn't relevant anymore. The query there 'select point(?,?)' doesn't produce an error.
| | * auto-mergeIgnacio Galarza2009-03-191-6/+246
| | |\
| | | * Manual mergeKristofer Pettersson2009-03-061-6/+272
| | | |\
| | | * | Bug#40363 Bug 20023 is not fixed on 5.0Kristofer Pettersson2009-03-051-0/+173
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a back port from 5.1 to 5.0. Fix for BUG 20023: mysql_change_user() resets the value of SQL_BIG_SELECTS. The bug was that SQL_BIG_SELECTS was not properly set in COM_CHANGE_USER. The fix is to update SQL_BIG_SELECTS properly. sql/sql_class.cc: Update THD::options with the respect to SQL_BIG_SELECTS in COM_CHANGE_USER. tests/mysql_client_test.c: Add a test case BUG#20023.
* | | | | Added some changes inspired by Zardosht Kasheff:Michael Widenius2009-06-301-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Added a handler call (prepare_index_scan()) to inform storage engines that an index scan is about to take place. - Extended the maximun key parts for an index from 16 to 32 - Extended MyISAM and Maria engines to support up to 32 parts Added checks for return value from ha_index_init() include/my_handler.h: Extended number of key parts for MyISAM and Maria from 16 to 32 include/my_pthread.h: Ensure we always have 256M of stack. (Required to be able to handle the current number of keys and key parts in MyISAM) mysql-test/r/create.result: Extended to test for 32 key parts mysql-test/r/myisam.result: Test that we can create 32 but not 33 key parts mysql-test/r/ps_1general.result: Length of ref is now 2048 as we can have more key parts mysql-test/r/ps_2myisam.result: Length of ref is now 2048 as we can have more key parts mysql-test/r/ps_3innodb.result: Length of ref is now 2048 as we can have more key parts mysql-test/r/ps_4heap.result: Length of ref is now 2048 as we can have more key parts mysql-test/r/ps_5merge.result: Length of ref is now 2048 as we can have more key parts mysql-test/suite/maria/r/maria.result: Max key length is now 1208 bytes mysql-test/suite/maria/r/maria3.result: Max key length is now 1208 bytes mysql-test/suite/maria/r/ps_maria.result: Max key length is now 1208 byte mysql-test/t/create.test: Extended to test for 32 key parts mysql-test/t/myisam.test: Test that we can create 32 but not 33 key parts sql/handler.cc: Check return value from ha_index_init() sql/handler.h: Added a handler call (prepare_index_scan()) to inform storage engines that an index scan is about to take place. sql/sql_select.cc: Checks all return values from ha_index_init() Call prepare_index_scan()) to inform storage engines that an index scan is about to take place. Fixed indentation sql/table.cc: Fixed wrong types for key_length (rest of code assumed this was 32 bit) sql/unireg.h: Extended the maximun key parts for an index from 16 to 32 storage/maria/ha_maria.cc: Don't allocate HA_CHECK on the stack in functions where we call repair() as HA_CHECK is HUGE and will overflow stack storage/myisam/ha_myisam.cc: Don't allocate HA_CHECK on the stack in functions where we call repair() as HA_CHECK is HUGE and will overflow stack storage/myisam/mi_check.c: Fixed wrong check if value overflow tests/mysql_client_test.c: Added fflush() to fix output in case of error Fixed wrong check of 'ref' length in EXPLAIN
* | | | | Merged with mysql-5.1 tree.Michael Widenius2009-04-252-3/+3
|\ \ \ \ \ | |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | client/mysqltest.cc: Manually merged configure.in: Manually merged mysql-test/r/variables.result: Manually merged mysql-test/t/variables.test: Manually merged mysys/my_pread.c: Manually merged mysys/my_read.c: Manually merged sql/mysqld.cc: Manually merged storage/csv/ha_tina.h: Manually merged storage/myisam/ha_myisam.cc: Manually merged storage/myisam/mi_check.c: Manually merged storage/myisam/mi_search.c: Manually merged
| * | | | auto-mergeIgnacio Galarza2009-03-171-6/+73
| |\ \ \ \
| * \ \ \ \ Bug#29125 Windows Server X64: so many compiler warningsIgnacio Galarza2009-02-132-3/+3
| |\ \ \ \ \ | | | |/ / / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | - 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
| | * | | | Bug#29125 Windows Server X64: so many compiler warningsIgnacio Galarza2009-02-102-176/+176
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - 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
* | | | | | bzr merge from guilhem's maria tree to our local 5.1Michael Widenius2009-04-251-6/+73
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | configure.in: Manually merged mysql-test/lib/My/ConfigFactory.pm: Manually merged mysql-test/mysql-test-run.pl: Manually merged mysql-test/t/information_schema.test: Manually merged sql/handler.cc: Manually merged support-files/mysql.spec.sh: Manually merged
| * \ \ \ \ \ merge of 5.1-main into 5.1-maria. MyISAM changes are propagated to Maria exceptGuilhem Bichot2009-04-011-6/+73
| |\ \ \ \ \ \ | | | |_|/ / / | | |/| | | | | | | | | | | those of davi.arnaut@sun.com-20090219210935-9vilvcisyyieffxl (TODO).
| | * | | | | Auto-mergeRamil Kalimullin2009-02-261-6/+9
| | |\ \ \ \ \ | | | | |_|_|/ | | | |/| | |
| | | * | | | Fix for bug#19829:make test Failed in mysql_client_testRamil Kalimullin2009-02-261-6/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | *with --with-charset=utf8* Problem: wrong LONG TEXT field length is sent to a client when multibyte server character set used. Fix: always limit field length sent to a client to 2^32, as we store it in 4 byte slot. Note: mysql_client_test changed accordingly. sql/protocol.cc: Fix for bug#19829:make test Failed in mysql_client_test *with --with-charset=utf8* - limit field length sent to client to UINT_MAX32 as it may exceeds 32 bit slot for LONG TEXT fields if thd_charset->mbmaxlen > 1. tests/mysql_client_test.c: Fix for bug#19829:make test Failed in mysql_client_test *with --with-charset=utf8* - checking field members have in mind that field length is limited to UINT_MAX32.
| | * | | | | Automerge.Alexey Kopytov2009-02-191-0/+64
| | |\ \ \ \ \ | | | |/ / / / | | | | / / / | | | |/ / / | | |/| | |
| | | * | | Fix for bug #41078: With CURSOR_TYPE_READ_ONLY mysql_stmt_fetch() ↵Alexey Kopytov2009-02-191-0/+64
| | | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | returns short string value. Multibyte character sets were not taken into account when calculating max_length in Item_param::convert_str_value(). As a result, string parameters of a prepared statement could be truncated later when calculating string length in characters by dividing length in bytes by the charset's mbmaxlen value (e.g. in Field_varstring::store()). Fixed by taking charset's mbmaxlen into account when calculating max_length in Item_param::convert_str_value(). sql/item.cc: Multiply string's length in characters by charset's mbmaxlen when calculating max_length. tests/mysql_client_test.c: Added a test case for bug #41078.
* | | | | Fix two missing DBUG_RETURN.unknown2009-04-211-0/+2
| | | | |
* | | | | Fixed test written by windows to get it working under linux (line endings)unknown2009-04-031-142/+142
|/ / / /
* | | | merge of 5.1-main into 5.1-maria. Myisam->Maria change propagation will follow.Guilhem Bichot2009-02-121-0/+118
|\ \ \ \ | |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | There were so many changes into mtr (this is the new mtr coming) that I rather copied mtr from 6.0-main here (at least this one knows how to run Maria tests). I also fixed suite/maria tests to be accepted by the new mtr. mysys/thr_mutex.c: adding DBUG_PRINT here, so that we can locate where the warning is issued.
| * | | Merge from 5.0-bugteamDavi Arnaut2009-01-151-0/+60
| |\ \ \ | | |/ /
| | * | Bug#36326: nested transaction and selectDavi Arnaut2009-01-131-0/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The problem is that the query cache stores packets containing the server status of the time when the cached statement was run. This might lead to a wrong transaction status in the client side if a statement is cached during a transaction and is later served outside a transaction context (and vice-versa). The solution is to take into account the transaction status when storing in and serving from the query cache. mysql-test/r/innodb_cache.result: Update test case result. mysql-test/r/query_cache.result: Add test case result for Bug#36326 mysql-test/t/query_cache.test: Add test case for Bug#36326 sql/mysql_priv.h: Add new flags. sql/sql_cache.cc: Remember the transaction and autocommit status stored in the packet. tests/mysql_client_test.c: Add test case for Bug#36326
| * | | 5.0-bugteam->5.1-bugteam mergeSergey Glukhov2008-12-111-1/+5
| |\ \ \ | | |/ /
| | * | fix for pushbuild failure on 64 linuxSergey Glukhov2008-12-111-1/+1
| | | |
| | * | disable bug37956 test if geometry package is not enabledSergey Glukhov2008-12-111-0/+4
| | | |
| * | | 5.0-bugteam->5.1-bugteam mergeSergey Glukhov2008-12-101-0/+54
| |\ \ \ | | |/ /
| | * | Bug#37956 memory leak and / or crash with geometry and prepared statements!Sergey Glukhov2008-12-101-0/+54
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug#37671 crash on prepared statement + cursor + geometry + too many open files! if mysql_execute_command() returns error then free materialized_cursor object. is_rnd_inited is added to satisfy rnd_end() assertion (handler may be uninitialized in some cases) sql/sql_cursor.cc: if mysql_execute_command() returns error then free materialized_cursor object. is_rnd_inited is added to satisfy rnd_end() assertion (handler may be uninitialized in some cases) sql/sql_select.cc: added result check tests/mysql_client_test.c: test case
* | | | Merge of 5.1-main into 5.1-maria. There were no changes to storage/myisam, ↵Guilhem Bichot2008-12-101-5/+8
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | mysys/mf_keycache.c, mysql-test/t/*myisam* since previous merge. MARIA_PAGECACHE_READS in maria-preload.test are down a little bit (5%), which must be a good side-effect of some sql/ change.
| * | | Merge of 5.1-main into 5.1-maria. There were no changes to storage/myisam, ↵Guilhem Bichot2008-11-211-52/+4
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | or mysql-test/t/*myisam*. However there were three new tests mysql-test/suite/parts/t/partition*myisam.test, of which I make here copies for Maria.
| * \ \ \ Merged 5.1 with maria 5.1Michael Widenius2008-10-101-7/+251
| |\ \ \ \