- 10 Jul, 2008 9 commits
-
-
Gleb Shchepa authored
-
Gleb Shchepa authored
-
Gleb Shchepa authored
-
Gleb Shchepa authored
-
Marc Alff authored
libmysqld/emb_qcache.cc: Fixed build warning on Windows: ported the fix from 6.0 in 5.1
-
Tatiana A. Nurnberg authored
-
Tatiana A. Nurnberg authored
-
Tatiana A. Nurnberg authored
offset for time part in UUIDs was 1/1000 of what it should be. In other words, offset was off. Also handle the case where we count into the future when several UUIDs are generated in one "tick", and then the next call is late enough for us to unwind some but not all of those borrowed ticks. Lastly, handle the case where we keep borrowing and borrowing until the tick-counter overflows by also changing into a new "numberspace" by creating a new random suffix. mysql-test/r/func_misc.result: Show that time-part of UUIDs is correct now. mysql-test/t/func_misc.test: Show that time-part of UUIDs is correct now by replicating the C-code's resultin SQL. Results also decode to expect date-data on command-line (external validation). No test for unwinding of borrowed ticks as this a) is a race and b) depends on what timer we get. sql/item_strfunc.cc: correct offset for date/time-part of UUID. also make sure that when we counted into the future earlier (several UUIDs generated in same tick), we only give back as many "borrowed" ticks as we can without duplicating past timestamps. If our tick-counter overflows before we can give back, or if the system-clock is set back (by user or Daylight Saving Time), we create a new random suffix to avoid collisions and clear the tick-counter.
-
Tatiana A. Nurnberg authored
offset for time part in UUIDs was 1/1000 of what it should be. In other words, offset was off. Also handle the case where we count into the future when several UUIDs are generated in one "tick", and then the next call is late enough for us to unwind some but not all of those borrowed ticks. Lastly, handle the case where we keep borrowing and borrowing until the tick-counter overflows by also changing into a new "numberspace" by creating a new random suffix. mysql-test/r/func_misc.result: Show that time-part of UUIDs is correct now. mysql-test/t/func_misc.test: Show that time-part of UUIDs is correct now by replicating the C-code's resultin SQL. Results also decode to expect date-data on command-line (external validation). No test for unwinding of borrowed ticks as this a) is a race and b) depends on what timer we get. sql/item_strfunc.cc: correct offset for date/time-part of UUID. also make sure that when we counted into the future earlier (several UUIDs generated in same tick), we only give back as many "borrowed" ticks as we can without duplicating past timestamps. If our tick-counter overflows before we can give back, or if the system-clock is set back (by user or Daylight Saving Time), we create a new random suffix to avoid collisions and clear the tick-counter.
-
- 09 Jul, 2008 8 commits
-
-
Gleb Shchepa authored
-
Gleb Shchepa authored
-
Gleb Shchepa authored
-
Matthias Leich authored
-
Mattias Jonsson authored
-
Matthias Leich authored
"funcs_2: The tests do not check if optional character sets exist." 2. Minor cleanup
-
Mattias Jonsson authored
The problem is that relying on the output of the 'ls' command is not portable as its behavior is not the same between systems and it might even not be available at all in (Windows). So I added list_files that relies on the portable mysys library instead. (and also list_files_write_file and list_files_append_file, since the test was using '--exec ls' in that way.) client/mysqltest.c: Bug#35736 Test 'parts.partition_basic_symlink_myisam' depends on output of 'ls' To be able to replace the use of '--exec ls' I have added list_files, list_files_write_file and list_files_append_file. list_files <dirname> [<filename incl. wild-cards>] is equivalent to 'ls <dirname>/[<filename incl. wild-cards>]' list_files_write_file creates/overwrites a file with the content list_files_append_file creates/appends a file with the content list_files* return a sorted output. mysql-test/r/mysqltest.result: Bug#35736 Test 'parts.partition_basic_symlink_myisam' depends on output of 'ls' result file change, due to added test of the new list_files command. mysql-test/suite/parts/inc/partition_check_drop.inc: Bug#35736 Test 'parts.partition_basic_symlink_myisam' depends on output of 'ls' Using the new list_files instead of 'ls'. Changed the use of local variables (ls_file, file_list) and server variable (@aux). mysql-test/suite/parts/inc/partition_layout.inc: Bug#35736 Test 'parts.partition_basic_symlink_myisam' depends on output of 'ls' Using the new list_files instead of 'ls'. mysql-test/suite/parts/inc/partition_layout_check1.inc: Bug#35736 Test 'parts.partition_basic_symlink_myisam' depends on output of 'ls' Using the new list_files instead of 'ls'. mysql-test/suite/parts/inc/partition_layout_check2.inc: Bug#35736 Test 'parts.partition_basic_symlink_myisam' depends on output of 'ls' Replaces '--exec ls' with list_files. Removal of the directory part of file listing. mysql-test/suite/parts/r/partition_alter1_1_2_myisam.result: Bug#35736 Test 'parts.partition_basic_symlink_myisam' depends on output of 'ls' Replaces '--exec ls' with list_files. Removal of the directory part of file listing. mysql-test/suite/parts/r/partition_alter1_1_myisam.result: Bug#35736 Test 'parts.partition_basic_symlink_myisam' depends on output of 'ls' Replaces '--exec ls' with list_files. Removal of the directory part of file listing. mysql-test/suite/parts/r/partition_alter1_2_myisam.result: Bug#35736 Test 'parts.partition_basic_symlink_myisam' depends on output of 'ls' Replaces '--exec ls' with list_files. Removal of the directory part of file listing. mysql-test/suite/parts/r/partition_alter2_myisam.result: Bug#35736 Test 'parts.partition_basic_symlink_myisam' depends on output of 'ls' Replaces '--exec ls' with list_files. Removal of the directory part of file listing. mysql-test/suite/parts/r/partition_alter3_innodb.result: Bug#35736 Test 'parts.partition_basic_symlink_myisam' depends on output of 'ls' Replaces '--exec ls' with list_files. Removal of the directory part of file listing. mysql-test/suite/parts/r/partition_alter3_myisam.result: Bug#35736 Test 'parts.partition_basic_symlink_myisam' depends on output of 'ls' Replaces '--exec ls' with list_files. Removal of the directory part of file listing. mysql-test/suite/parts/r/partition_basic_innodb.result: Bug#35736 Test 'parts.partition_basic_symlink_myisam' depends on output of 'ls' Replaces '--exec ls' with list_files. Removal of the directory part of file listing. mysql-test/suite/parts/r/partition_basic_myisam.result: Bug#35736 Test 'parts.partition_basic_symlink_myisam' depends on output of 'ls' Replaces '--exec ls' with list_files. Removal of the directory part of file listing. mysql-test/suite/parts/r/partition_basic_symlink_myisam.result: Bug#35736 Test 'parts.partition_basic_symlink_myisam' depends on output of 'ls' Replaces '--exec ls' with list_files. Removal of the directory part of file listing. mysql-test/suite/parts/r/partition_engine_myisam.result: Bug#35736 Test 'parts.partition_basic_symlink_myisam' depends on output of 'ls' Replaces '--exec ls' with list_files. Removal of the directory part of file listing. mysql-test/suite/parts/r/partition_syntax_myisam.result: Bug#35736 Test 'parts.partition_basic_symlink_myisam' depends on output of 'ls' Replaces '--exec ls' with list_files. Removal of the directory part of file listing. mysql-test/t/mysqltest.test: Bug#35736 Test 'parts.partition_basic_symlink_myisam' depends on output of 'ls' Adding test for the new mysqltest commands list_files, list_files_write_file and list_files_append_file.
-
unknown authored
-
- 08 Jul, 2008 6 commits
-
-
Marc Alff authored
-
Marc Alff authored
-
Marc Alff authored
Fixed the test to expect the correct result. The previous test script was in fact affected by 26030, and wrongly expected a ER_PARSE_ERROR error.
-
Jonathan Perkin authored
-
Mats Kindahl authored
-
Mats Kindahl authored
-
- 07 Jul, 2008 8 commits
-
-
Mattias Jonsson authored
-
Marc Alff authored
-
Mattias Jonsson authored
-
Mattias Jonsson authored
problem was that ha_partition::records was not implemented, thus using the default handler::records, which is not correct if the engine does not support HA_STATS_RECORDS_IS_EXACT. Solution was to implement ha_partition::records as a wrapper around the underlying partitions records. The rows column in explain partitions will now include the total number of records in the partitioned table. (recommit after removing out-commented code)
-
Marc Alff authored
-
Marc Alff authored
enabled) Before this fix, the lexer and parser would treat the ';' character as a different token (either ';' or END_OF_INPUT), based on convoluted logic, which failed in simple cases where a stored procedure is implemented as a single statement, and used in a multi query. With this fix: - the character ';' is always parsed as a ';' token in the lexer, - parsing multi queries is implemented in the parser, in the 'query:' rules, - the value of thd->client_capabilities, which is the capabilities negotiated between the client and the server during bootstrap, is immutable and not arbitrarily modified during parsing (which was the root cause of the bug)
-
Georgi Kodinov authored
- moved the test into a separate file to check for presence of the test variable mysql-test/r/subselect.result: Bug#37627: moved the test to a separate file mysql-test/r/subselect_debug.result: Bug#37627: moved the test to a separate file mysql-test/t/subselect.test: Bug#37627: moved the test to a separate file mysql-test/t/subselect_debug.test: Bug#37627: moved the test to a separate file
-
Mats Kindahl authored
On certain kinds of errors (e.g., out of stack), a call to Item_func_ set_user_var::fix_fields() might fail. Since the return value of this call was not checked inside User_var_log_event::exec_event(), continuing execution after this will cause a crash inside Item_func_set_user_var:: update_hash(). The bug is fixed by aborting execution of the event with an error if fix_fields() fails, since it is not possible to continue execution anyway. sql/log_event.cc: Aborting execution of event if fix_fields() fails since execution of update_hash() might cause a crash.
-
- 04 Jul, 2008 5 commits
-
-
Chad MILLER authored
-
Chad MILLER authored
-
Chad MILLER authored
to use ANSI_QUOTES Make all have_* tests universally safe by using ANSI quotes.
-
Georgi Kodinov authored
-
Georgi Kodinov authored
When there is an error executing EXISTS predicates they return NULL as their string or decimal value but don't set the NULL value flag. Fixed by returning 0 (as a decimal or a string) on error exectuting the subquery. Note that we can't return NULL as EXISTS is not supposed to return NULL. mysql-test/r/subselect.result: Bug#37627: test case mysql-test/t/subselect.test: Bug#37627: test case sql/item_subselect.cc: Bug#37627: return decimal (or string) 0 isntead of a NULL pointer on error calculating an EXISTS predicate.
-
- 03 Jul, 2008 3 commits
-
-
Konstantin Osipov authored
Bug#12093 "SP not found on second PS execution if another thread drops other SP in between" and Bug#21294 "executing a prepared statement that executes a stored function which was recreat" Stored functions are resolved at prepared statement prepare only. If someone flushes the stored functions cache between prepare and execute, execution fails. The fix is to detect the situation of the cache flush and automatically reprepare the prepared statement after it. mysql-test/r/ps_ddl.result: Update results (Bug#12093 and Bug#21294, the test cases are already in the source tree). mysql-test/r/ps_ddl1.result: Update results (Bug#12093 and Bug#21294, the test cases are already in the source tree). mysql-test/r/sp-error.result: Update results (Bug#12093 and Bug#21294, the test cases are already in the source tree). mysql-test/t/ps_ddl.test: Modify the test to not expect an error where there is no error any more (Bug#12093, Bug#21294). mysql-test/t/ps_ddl1.test: Modify the test to not expect an error where there is no error any more (Bug#12093, Bug#21294). mysql-test/t/sp-error.test: Modify the test to not expect an error where there is no error any more (Bug#12093, Bug#21294). sql/sp_cache.cc: Implement sp_cache_version() -- returns the current version of a stored routines cache. sql/sp_cache.h: Declare sp_cache_version(). sql/sql_prepare.cc: Keep track of stored functions cache version, and invalidate the statement if it changed between prepared statement prepare and execute (and the statement actually uses stored routines).
-
Sven Sandberg authored
-
Sven Sandberg authored
This bug has been fixed in two slightly different ways in 6.0-rpl and {5.1,6.0}-bugteam. To avoid future merge problems, I'm now copying the 6.0-rpl fix to 5.1-bugteam.
-
- 02 Jul, 2008 1 commit
-
-
Timothy Smith authored
-