Commit graph

37647 commits

Author SHA1 Message Date
aelkin/elkin@koti.dsl.inet.fi
5dc3fbf187 Bug #26000 SHOW SLAVE STATUS can crash mysqld during shutdown process
active_mi has been reset (shutdown) at the time of quering with 
SHOW SLAVE STATUS so that 
at handling of SHOW an attempt to read its members segfaults.

Fixed with checking the value of active_mi before to call show_master_info()
Merely send_ok() is invoked when active_mi does not exist.
A test can not be easiely written.

Notice, there are more analogical cases in the code which require a similar
treatment (to be reported as a bug separately).
2007-09-26 21:59:17 +02:00
lars/lthalmann@dl145j.mysql.com
1e265379a7 Merge mysql.com:/nfsdisk1/lars/MERGE/mysql-4.1-merge
into  mysql.com:/nfsdisk1/lars/MERGE/mysql-5.0-merge
2007-09-10 14:17:12 +02:00
lars/lthalmann@dl145h.mysql.com
4f29c65ae1 Merge mysql.com:/nfsdisk1/lars/bkroot/mysql-5.0-rpl
into  mysql.com:/nfsdisk1/lars/MERGE/mysql-5.0-merge
2007-09-10 13:15:04 +02:00
lars/lthalmann@mysql.com/dl145h.mysql.com
cc5fa8d649 Merge mysql.com:/nfsdisk1/lars/bkroot/mysql-4.1-rpl
into  mysql.com:/nfsdisk1/lars/MERGE/mysql-4.1-merge
2007-09-10 13:14:35 +02:00
malff/marcsql@weblab.(none)
f4b671d8bc Fixed whitespace 2007-09-04 16:40:27 -06:00
malff/marcsql@weblab.(none)
3a7bcd72f3 Merge weblab.(none):/home/marcsql/TREE/mysql-5.0-base
into  weblab.(none):/home/marcsql/TREE/mysql-5.0-rt-merge
2007-09-04 14:38:26 -06:00
thek@adventure.(none)
b1d1204576 Merge adventure.(none):/home/thek/Development/cpp/bug21074/my50-bug21074
into  adventure.(none):/home/thek/Development/cpp/mysql-5.0-runtime
2007-09-03 13:46:10 +02:00
thek@adventure.(none)
a8b9bd9f67 - Fix cross compatibility issues by exchanging pthread_yield with my_sleep(0) 2007-09-03 13:42:32 +02:00
thek@adventure.(none)
0184f50f27 Merge kpettersson@bk-internal.mysql.com:/home/bk/mysql-5.0-runtime
into  adventure.(none):/home/thek/Development/cpp/mysql-5.0-runtime
2007-09-03 10:59:44 +02:00
thek@adventure.(none)
85d7007848 Merge adventure.(none):/home/thek/Development/cpp/bug21074/my50-bug21074
into  adventure.(none):/home/thek/Development/cpp/mysql-5.0-runtime
2007-09-03 10:54:33 +02:00
thek@adventure.(none)
f5ecb35e6c Bug #21074 Large query_cache freezes mysql server sporadically under heavy load
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.
2007-09-03 10:47:24 +02:00
malff/marcsql@weblab.(none)
ca2b2585a5 Merge weblab.(none):/home/marcsql/TREE/mysql-5.0-base
into  weblab.(none):/home/marcsql/TREE/mysql-5.0-runtime
2007-08-30 17:23:40 -06:00
davi@moksha.local
1180c22aef Bug#28587 SELECT is blocked by INSERT waiting on read lock, even with low_priority_updates
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.
2007-08-30 16:11:53 -03:00
aelkin/elkin@koti.dsl.inet.fi
341e484f77 Merge aelkin@bk-internal.mysql.com:/home/bk/mysql-5.0-rpl
into  koti.dsl.inet.fi:/home/elkin/MySQL/TEAM/FIXES/5.0/bug30209-rpl_packet_mismatch_by_kaamos
2007-08-30 20:18:41 +03:00
malff/marcsql@weblab.(none)
f51c6acc37 Merge malff@bk-internal.mysql.com:/home/bk/mysql-5.0-runtime
into  weblab.(none):/home/marcsql/TREE/mysql-5.0-28779-b
2007-08-30 10:38:20 -06:00
kaa@polly.(none)
33d10a0667 Use double quotes instead of single ones which make the test fail on Windows. This is for bug #30164. 2007-08-30 17:21:43 +04:00
kaa@polly.(none)
2bb849644b Bug #30164: Using client side macro inside server side comments generates broken queries
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).
2007-08-30 12:53:24 +04:00
malff/marcsql@weblab.(none)
6f72d99099 Bug#28779 (mysql_query() allows execution of statements with unbalanced
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.
2007-08-29 14:50:32 -06:00
aelkin/elkin@koti.dsl.inet.fi
9ea7b6a7fc Bug #30209 rpl_packet.test: Slave_running mismatch (timing bug?)
explicit --sleep is removed in favor of wait_for_slave_io_to_stop.inc.
The status reporting uses `SHOW SLAVE STATUS' *not* possibly buggy "SHOW STATUS LIKE 'Slave_running'".
2007-08-29 19:57:10 +03:00
msvensson@pilot.(none)
b1fdece307 Merge pilot.(none):/data/msvensson/mysql/mysql-4.1-maint
into  pilot.(none):/data/msvensson/mysql/mysql-5.0-maint
2007-08-29 17:54:16 +02:00
msvensson@pilot.(none)
ac5309cb04 Remove any old pidfile before starting mysqld to make sure that
'mysqld_wait_started' don't return prematurely because of an old
pidfile
2007-08-29 17:54:02 +02:00
rafal@quant.(none)
69c529bef1 Merge quant.(none):/ext/mysql/bkroot/mysql-5.0-rpl
into  quant.(none):/ext/mysql/bk/mysql-5.0-bug21132
2007-08-29 15:57:04 +02:00
msvensson@pilot.(none)
1a1bbf2da0 Remove unportable use of "system rm" 2007-08-29 14:44:23 +02:00
msvensson@pilot.(none)
2028c2b696 Merge pilot.(none):/data/msvensson/mysql/mysql-4.1-maint
into  pilot.(none):/data/msvensson/mysql/mysql-5.0-maint
2007-08-29 14:39:59 +02:00
msvensson@pilot.(none)
f164a136e1 Fix typo: '$$' => '$' 2007-08-29 14:39:40 +02:00
anozdrin/alik@ibm.
290d724943 Test case for Bug#13675: DATETIME/DATE type in store proc param
seems to be converted as varbinary.

The bug has been already fixed. This CS just adds a test case for it.
2007-08-29 14:57:59 +04:00
msvensson@pilot.(none)
aa57f6106c Remove unportable use of "system rm" 2007-08-29 12:47:00 +02:00
msvensson@pilot.(none)
9ffb05dbbf Remove unportable "system rm" 2007-08-29 12:44:43 +02:00
msvensson@pilot.(none)
044f7a3270 Merge bk-internal:/home/bk/mysql-5.0-maint
into  pilot.(none):/data/msvensson/mysql/mysql-5.0-maint
2007-08-29 11:54:21 +02:00
msvensson@pilot.(none)
523cddeec3 Merge pilot.(none):/data/msvensson/mysql/mysql-4.1-maint
into  pilot.(none):/data/msvensson/mysql/mysql-5.0-maint
2007-08-29 11:53:36 +02:00
msvensson@pilot.(none)
b68689172f Remove unportable use of "exec chmod" 2007-08-29 11:53:15 +02:00
msvensson@pilot.(none)
387990f78d Add 'mtr_rmtree' 2007-08-29 11:51:34 +02:00
davi@moksha.local
74fcc76028 Merge bk-internal.mysql.com:/home/bk/mysql-5.0-runtime
into  moksha.local:/Users/davi/mysql/push/mysql-5.0-runtime
2007-08-28 18:47:08 -03:00
tsmith@ramayana.hindu.god
044cd7b471 Merge ramayana.hindu.god:/home/tsmith/m/bk/maint/b27694/50
into  ramayana.hindu.god:/home/tsmith/m/bk/maint/50
2007-08-28 13:24:31 -06:00
malff/marcsql@weblab.(none)
ec9b9a98aa Bug#30625 (Performance, reduce depth for expressions)
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.
2007-08-28 11:16:03 -06:00
msvensson@pilot.(none)
4a7087526f Streamline "do_close_connection" and "do_send_quit"
Fix typo, "next_con" -> "con"
2007-08-28 16:47:05 +02:00
msvensson@pilot.(none)
397fbd0289 Remove unportable constructs in loaddata.test 2007-08-28 16:44:31 +02:00
msvensson@pilot.(none)
4a013e295d Move "analyze_testcase_failure" to mysqltest(since it knows best when
to perform this analyzis)
2007-08-28 15:32:13 +02:00
msvensson@pilot.(none)
bce8ea54ff Merge pilot.(none):/data/msvensson/mysql/bug28812/my50-bug28812
into  pilot.(none):/data/msvensson/mysql/mysql-5.0-maint
2007-08-28 11:35:22 +02:00
msvensson@pilot.(none)
c2b817013c Merge pilot.(none):/data/msvensson/mysql/yassl_import/my50-yassl_import
into  pilot.(none):/data/msvensson/mysql/bug28812/my50-bug28812
2007-08-28 11:35:05 +02:00
msvensson@pilot.(none)
ec421a02a9 Bug#28812 rpl_ssl fails due to assert in extra/yassl/src/socket_wrapper.cpp:117
- 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
2007-08-28 11:34:43 +02:00
msvensson@pilot.(none)
394d9a0e55 Import yaSSL version 1.7.2
- Fix bug#27265
- Support for fixing bug#18441
2007-08-28 10:35:55 +02:00
tsmith@ramayana.hindu.god
86ef148e6c Merge ramayana.hindu.god:/home/tsmith/m/bk/50
into  ramayana.hindu.god:/home/tsmith/m/bk/maint/50
2007-08-27 18:19:55 -06:00
davi@moksha.local
77d78a883f Bug#30632 HANDLER read failure causes hang
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.
2007-08-27 10:37:12 -03:00
davi@moksha.local
91e1cc2195 Bug#25164 create table a as select * from A hangs
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.
2007-08-27 10:13:54 -03:00
df@pippilotta.erinye.com
0670af9479 adjust version number 2007-08-27 11:38:32 +02:00
msvensson@pilot.(none)
f9c245611e Bug#29805 mysql_upgrade test fail if ~/.my.cnf contain a password
- "mysql" and "mysqlcheck" should not read defaults file
2007-08-27 11:31:49 +02:00
dfischer/mysqldev@mysql.com/production.mysql.com
ba419bdc8c Merge bk-internal:/home/bk/mysql-5.0
into  mysql.com:/data0/mysqldev/my/build-200708231546-5.0.48/mysql-5.0-release
2007-08-27 11:24:54 +02:00
msvensson@pilot.(none)
a91bd85215 Bug#28560 mysql_upgrade test links /usr/local/mysql/lib libraries
- Chop off .libs/ part of path if running in non installed builddir
   using libtool
2007-08-27 10:25:34 +02:00
jani@a88-113-38-195.elisa-laajakaista.fi
516cafdc79 Merge a88-113-38-195.elisa-laajakaista.fi:/home/my/bk/mysql-5.0-main
into  a88-113-38-195.elisa-laajakaista.fi:/home/my/bk/mysql-5.0-marvel
2007-08-25 11:39:56 +03:00