- 04 Sep, 2007 2 commits
- 03 Sep, 2007 5 commits
-
-
unknown authored
into adventure.(none):/home/thek/Development/cpp/mysql-5.0-runtime sql/sql_cache.cc: Auto merged
-
unknown authored
-
unknown authored
into adventure.(none):/home/thek/Development/cpp/mysql-5.0-runtime sql/sql_cache.cc: Auto merged
-
unknown authored
into adventure.(none):/home/thek/Development/cpp/mysql-5.0-runtime sql/sql_cache.cc: Auto merged
-
unknown authored
Invaldating a subset of a sufficiently large query cache can take a long time. During this time the server is efficiently frozen and no other operation can be executed. This patch addresses this problem by setting a time limit on how long time a dictionary access request can take before giving up on the attempt. This patch does not work for query cache invalidations issued by DROP, ALTER or RENAME TABLE operations. sql/sql_cache.cc: Changed mutex locking to a timed spinn lock. If access to query cache dictionary takes "a long time" (currently more than 0.1 seconds) the system fall backs on ordinary statement execution.
-
- 30 Aug, 2007 5 commits
-
-
unknown authored
into weblab.(none):/home/marcsql/TREE/mysql-5.0-runtime sql/item_cmpfunc.h: Auto merged sql/sql_lex.cc: Auto merged
-
unknown authored
The problem is that a SELECT on one thread is blocked by INSERT ... ON DUPLICATE KEY UPDATE on another thread even when low_priority_updates is activated. The solution is to possibly downgrade the lock type to the setting of low_priority_updates if the INSERT cannot be concurrent. sql/sql_insert.cc: Possibly downgrade lock type to the the setting of low_priority_updates if if the INSERT cannot be concurrent.
-
unknown authored
into weblab.(none):/home/marcsql/TREE/mysql-5.0-28779-b
-
unknown authored
Use double quotes instead of single ones which make the test fail on Windows. This is for bug #30164. mysql-test/t/mysql.test: Use double quotes instead of single ones which make the test fail on Windows.
-
unknown authored
Problem: In cases when a client-side macro appears inside a server-side comment, the add_line() function in mysql.cc discarded all characters until the next delimiter to remove macro arguments from the query string. This resulted in broken queries being sent to the server when the next delimiter character appeared past the comment's boundaries, because the comment closing sequence ('*/') was discarded. Fix: If a client-side macro appears inside a server-side comment, discard all characters in the comment after the macro (that is, until the end of the comment rather than the next delimiter). This is a minimal fix to allow only simple cases used by the mysqlbinlog utility. Limitations that are worth documenting: - Nested server-side and/or client-side comments are not supported by mysql.cc - Using client-side macros in multi-line server-side comments is not supported - All characters after a client-side macro in a server-side comment will be omitted from the query string (and thus, will not be sent to server). client/mysql.cc: If a client-side macro appears inside a server-side comment, discard all characters in the comment after the macro. mysql-test/r/mysql.result: Added a test case for bug #30164. mysql-test/t/mysql.test: Added a test case for bug #30164.
-
- 29 Aug, 2007 13 commits
-
-
unknown authored
comments) Before this fix, the server would accept queries that contained comments, even when the comments were not properly closed with a '*' '/' marker. For example, select 1 /* + 2 <EOF> would be accepted as select 1 /* + 2 */ <EOF> and executed as select 1 With this fix, the server now rejects queries with unclosed comments as syntax errors. Both regular comments ('/' '*') and special comments ('/' '*' '!') must be closed with '*' '/' to be parsed correctly. mysql-test/r/comments.result: Unbalanced comments are a syntax error. mysql-test/t/comments.test: Unbalanced comments are a syntax error. sql/sql_lex.cc: Unbalanced comments are a syntax error.
-
unknown authored
into pilot.(none):/data/msvensson/mysql/mysql-5.0-maint mysql-test/mysql-test-run.pl: Auto merged
-
unknown authored
'mysqld_wait_started' don't return prematurely because of an old pidfile
-
unknown authored
-
unknown authored
into pilot.(none):/data/msvensson/mysql/mysql-5.0-maint mysql-test/lib/mtr_misc.pl: Auto merged
-
unknown authored
-
unknown authored
seems to be converted as varbinary. The bug has been already fixed. This CS just adds a test case for it. mysql-test/r/sp.result: Update result file. mysql-test/t/sp.test: Test case for BUG#13675.
-
unknown authored
-
unknown authored
-
unknown authored
into pilot.(none):/data/msvensson/mysql/mysql-5.0-maint
-
unknown authored
into pilot.(none):/data/msvensson/mysql/mysql-5.0-maint mysql-test/lib/mtr_misc.pl: Auto merged mysql-test/mysql-test-run.pl: Auto merged
-
unknown authored
-
unknown authored
mysql-test/lib/mtr_misc.pl: Add function 'mtr_rmtree' it will try 'rmtree' and if that fails (most likely due to permission problems we will fun File::find to chmod all files and dirs to 0777 and then delete. mysql-test/mysql-test-run.pl: Use 'mtr_rmtree' in favour of 'rmtree'
-
- 28 Aug, 2007 11 commits
-
-
unknown authored
into moksha.local:/Users/davi/mysql/push/mysql-5.0-runtime
-
unknown authored
into ramayana.hindu.god:/home/tsmith/m/bk/maint/50
-
unknown authored
This is a performance bug, affecting in particular the bison generated code for the parser. Prior to this fix, the grammar used a long chain of reduces to parse an expression, like: bit_expr -> bit_term bit_term -> bit_factor bit_factor -> value_expr value_expr -> term term -> factor etc This chain of reduces cause the internal state automaton in the generated parser to execute more state transitions and more reduces, so that the generated MySQLParse() function would spend a lot of time looping to execute all the grammar reductions. With this patch, the grammar has been reorganized so that rules are more "flat", limiting the depth of reduces needed to parse <expr>. Tests have been written to enforce that relative priorities and properties of operators have not changed while changing the grammar. See the bug report for performance data. mysql-test/r/parser_precedence.result: Improved test coverage for operator precedence mysql-test/t/parser_precedence.test: Improved test coverage for operator precedence sql/sql_yacc.yy: Simplified the grammar to improve performances
-
unknown authored
Fix typo, "next_con" -> "con" client/mysqltest.c: Reuse "find_connection_by_name" both from "do_close_connection" and "do_send_quit" Adjust alignment of comment Fix typo in "do_close_connection", it used the global variable "next_con" instead of local variable "con"
-
unknown authored
-
unknown authored
to perform this analyzis) client/mysqltest.c: Add function 'show_query' and use it to output some debug queries when "sync_with_master" has failed. mysql-test/mysql-test-run.pl: Move "analyze_testcase_failure" to mysqltest
-
unknown authored
into pilot.(none):/data/msvensson/mysql/mysql-5.0-maint
-
unknown authored
into pilot.(none):/data/msvensson/mysql/bug28812/my50-bug28812
-
unknown authored
- Merge sslaccept and sslconnect. - Atomically "reset" vio to VIO_TYPE_SSL when the SSL connection has succeeded, this avoids having to revert anything and thus protects against "close_active_vio" in the middle. - Add some variance to the testcase mysql-test/t/rpl_ssl.test: Add some variance by running two selects before stopping the slave Check that number of records in t1 are equal on master and slave vio/viossl.c: Rewrite sslconnect and sslaccept to automically "reset" the vio to VIO_TYPE_SSL. Also use the fd from 'SSL_get_fd' to avoid setting vio->sd to -1, that previously occured when "close_active_vio" was called during connect/accept. Merge the two function since they were exactly the same except for one line. Update the DBUG printouts to be generic(i.e use peer instead of client/server).
-
unknown authored
- Fix bug#27265 - Support for fixing bug#18441 extra/yassl/include/openssl/crypto.h: Import patch yassl.diff extra/yassl/include/openssl/ssl.h: Import patch yassl.diff extra/yassl/include/yassl_int.hpp: Import patch yassl.diff extra/yassl/src/handshake.cpp: Import patch yassl.diff extra/yassl/src/socket_wrapper.cpp: Import patch yassl.diff extra/yassl/src/ssl.cpp: Import patch yassl.diff extra/yassl/src/yassl_int.cpp: Import patch yassl.diff extra/yassl/taocrypt/src/coding.cpp: Import patch yassl.diff extra/yassl/taocrypt/src/crypto.cpp: Import patch yassl.diff extra/yassl/include/openssl/des_old.h: Import patch yassl.diff extra/yassl/include/openssl/evp.h: Import patch yassl.diff extra/yassl/include/openssl/hmac.h: Import patch yassl.diff extra/yassl/include/openssl/objects.h: Import patch yassl.diff extra/yassl/include/openssl/sha.h: Import patch yassl.diff extra/yassl/include/openssl/prefix_ssl.h: Update prefixes
-
unknown authored
into ramayana.hindu.god:/home/tsmith/m/bk/maint/50 sql/sql_show.cc: Auto merged
-
- 27 Aug, 2007 4 commits
-
-
unknown authored
If, after the tables are locked, one of the conditions to read from a HANDLER table is not met, the handler code wrongly jumps to a error path that won't unlock the tables. The user-visible effect is that after a error in a handler read command, all subsequent handler operations on the same table will hang. The fix is simply to correct the code to jump to the (same) error path that unlocks the tables. mysql-test/r/handler.result: Bug#30632 test case result mysql-test/t/handler.test: Bug#30632 test case sql/sql_handler.cc: Always unlock the internal and external table level locks if any of the conditions (including errors) to read from a HANDLER table are not met.
-
unknown authored
The problem from a user's perspective: user creates table A, and then tries to CREATE TABLE a SELECT from A - and this causes a deadlock error, a hang, or fails with a debug assert, but only if the storage engine is InnoDB. The origin of the problem: InnoDB uses case-insensitive collation (system_charset_info) when looking up the internal table share, thus returning the same share for 'a' and 'A'. Cause of the user-visible behavior: since the same share is returned to SQL locking subsystem, it assumes that the same table is first locked (within the same session) for WRITE, and then for READ, and returns a deadlock error. However, the code is wrong in not properly cleaning up upon an error, leaving external locks in place, which leads to assertion failures and hangs. Fix that has been implemented: the SQL layer should properly propagate the deadlock error, cleaning up and freeing all resources. Further work towards a more complete solution: InnoDB should not use case insensitive collation for table share hash if table names on disk honor the case. mysql-test/r/innodb-deadlock.result: Bug#25164 test case result mysql-test/t/innodb-deadlock.test: Bug#25164 test case. The CREATE TABLE may fail depending on the character set of the system and filesystem, but it should never hang. sql/lock.cc: Unlock the storage engine "external" table level locks, if the MySQL thr_lock locking subsystem detects a deadlock error.
-
unknown authored
configure.in: adjust version number after 5.0.48 clone-off
-
unknown authored
- "mysql" and "mysqlcheck" should not read defaults file client/mysql_upgrade.c: Instruct "mysql" and "mysqlcheck" that is invoked by "mysql_upgrade" not to read defaults file, they should get all the parameters they need from mysql_upgrade(that read the default file)
-