Commit graph

37406 commits

Author SHA1 Message Date
jonas@perch.ndb.mysql.com
a1ea21bf26 Merge perch.ndb.mysql.com:/home/jonas/src/51-work
into  perch.ndb.mysql.com:/home/jonas/src/mysql-5.1-new-ndb
2006-08-22 09:49:28 +02:00
jonas@perch.ndb.mysql.com
66801f44f9 ndb -
reenable some test after adding sync_with_master to end of test
    to make sure that binlog has been applied to slave before end of test
2006-08-22 09:48:15 +02:00
kroki/tomash@moonlight.intranet
0f0ddc398a BUG#21051: RESET QUERY CACHE very slow when query_cache_type=0
There were two problems: RESET QUERY CACHE took a long time to complete
and other threads were blocked during this time.

The patch does three things:
  1 fixes a bug with improper use of test-lock-test_again technique.
      AKA Double-Checked Locking is applicable here only in few places.
  2 Somewhat improves performance of RESET QUERY CACHE.
      Do my_hash_reset() instead of deleting elements one by one.  Note
      however that the slowdown also happens when inserting into sorted
      list of free blocks, should be rewritten using balanced tree.
  3 Makes RESET QUERY CACHE non-blocking.
      The patch adjusts the locking protocol of the query cache in the
      following way: it introduces a flag flush_in_progress, which is
      set when Query_cache::flush_cache() is in progress.  This call
      sets the flag on enter, and then releases the lock.  Every other
      call is able to acquire the lock, but does nothing if
      flush_in_progress is set (as if the query cache is disabled).
      The only exception is the concurrent calls to
      Query_cache::flush_cache(), that are blocked until the flush is
      over.  When leaving Query_cache::flush_cache(), the lock is
      acquired and the flag is reset, and one thread waiting on
      Query_cache::flush_cache() (if any) is notified that it may
      proceed.
2006-08-22 11:47:52 +04:00
jonas@perch.ndb.mysql.com
e0f7590e7c ndb -
fix incorrect assertion in dbacc
2006-08-22 09:45:35 +02:00
iggy@rolltop.ignatz42.dyndns.org
39a8fe6e44 Bug#21757: mysql_client_test fails in testcase when reading master.log file 2006-08-21 20:29:11 -04:00
pekka@orca.ndb.mysql.com
e7508ad397 Merge orca.ndb.mysql.com:/export/home/space/pekka/ndb/version/my50-bug21017
into  orca.ndb.mysql.com:/export/home/space/pekka/ndb/version/my51-bug21017
2006-08-21 23:45:02 +02:00
cmiller@zippy.cornsilk.net
d170f1b124 Merge bk-internal.mysql.com:/home/bk/mysql-5.1
into  zippy.cornsilk.net:/home/cmiller/work/mysql/merge/mysql-5.1
2006-08-21 16:59:53 -04:00
rburnett@bk-internal.mysql.com
f98b21b732 Merge bk-internal.mysql.com:/data0/bk/mysql-5.1
into  bk-internal.mysql.com:/data0/bk/mysql-5.1-kt
2006-08-21 20:27:32 +02:00
cmiller@zippy.cornsilk.net
f2f90320de Merge zippy.cornsilk.net:/home/cmiller/work/mysql/merge/mysql-5.0
into  zippy.cornsilk.net:/home/cmiller/work/mysql/merge/mysql-5.1
2006-08-21 12:59:46 -04:00
cmiller@zippy.cornsilk.net
ff57b304a4 Merge zippy.cornsilk.net:/home/cmiller/work/mysql/merge/tmp_merge
into  zippy.cornsilk.net:/home/cmiller/work/mysql/merge/mysql-5.1
2006-08-21 12:55:43 -04:00
dlenev@mockturtle.local
8fb55ff0cf Fix for bug#19403/12212 "Crash that happens during removing of database name
from cache" and #21216 "Simultaneous DROP TABLE and SHOW OPEN TABLES causes
server to crash".

Crash happened when one ran DROP DATABASE or SHOW OPEN TABLES statements
while concurrently doing DROP TABLE (or RENAME TABLE, CREATE TABLE LIKE
or any other command that takes name-lock) in other connection.

This problem was caused by the fact that table placeholders which were
added to table cache in order to obtain name-lock on table had
TABLE_SHARE::db and table_name set to 0. Therefore they broke assumption
that these members are non-0 for all tables in table cache on which some
of our code relies.

The fix sets these members for such placeholders to appropriate value making
this assumption true again. As attempt to avoid such problems in future
we introduce auxiliary TABLE_SHARE::set_table_cache_key() methods which
should be used when one wants to set TABLE_SHARE::table_cache_key and which
ensure that TABLE_SHARE::table_name/db are set properly.

Test cases for these bugs were added to 5.0 test-suite (with 5.0-specific
fix for bug #21216).
2006-08-21 19:02:11 +04:00
joerg@trift2.
47d6296bc7 mysql-test/mysql-test-run.pl : Use fixed path names for all NDB binaries,
because searching for them makes the script abort with all non-NDB builds.
2006-08-21 16:19:29 +02:00
kent@mysql.com/g4-2.local
b329f2c3ef Many files:
Deleted config/ac-macros/ha_berkeley.m4
  Removed more referenses to bdb
2006-08-21 15:34:29 +02:00
sergefp@mysql.com
eefa3a6e94 BUG#21277: Wrong results in index_merge queries:
Remove the code that cleared "read fields set" for merged scans. That code
was based on assumption that "We're going to just read rowids", while 
actually QUICK_RANGE_SELECT code would also need key part values to check 
that retrieved record(s) fall within the scanned intervals.
2006-08-21 17:03:07 +04:00
rburnett@bk-internal.mysql.com
e37e0786fc Merge bk-internal.mysql.com:/data0/bk/mysql-5.1
into  bk-internal.mysql.com:/data0/bk/mysql-5.1-kt
2006-08-21 14:38:58 +02:00
sergefp@mysql.com
8ed86cb168 Fix compile errors in VC++ 7.0 2006-08-21 16:21:48 +04:00
jonas@perch.ndb.mysql.com
c7a78551c6 ndb - bug#16310
better error message for creating table with non-existing tablespace
2006-08-21 14:09:50 +02:00
msvensson@shellback.(none)
adaa3a2a60 Merge bk-internal:/home/bk/mysql-5.0-maint
into  shellback.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-08-21 14:09:38 +02:00
msvensson@shellback.(none)
2b2985e0ea Print lines from log file to see what's in them 2006-08-21 14:06:59 +02:00
sergefp@mysql.com
e3bdd6c6c2 Fix by Georgi Kodinov:
Bug #18744 Test 'join_outer' fails if "classic" configuration in 5.0
 - moved an InnoDB dependent test to the appropriate file
2006-08-21 14:20:03 +04:00
jani@hasky.mysql.fi
6dc1122084 Merge jamppa@bk-internal.mysql.com:/home/bk/mysql-5.0
into  hasky.mysql.fi:/home/jani/mysql-5.0_bug21537
2006-08-21 13:06:45 +03:00
dlenev@mockturtle.local
320f8ccc2f Merge bk-internal.mysql.com:/home/bk/mysql-5.0-runtime
into  mockturtle.local:/home/dlenev/src/mysql-5.0-bg21216-2
2006-08-21 13:08:49 +04:00
mats@romeo.(none)
c2d7f7c392 Merge romeo.(none):/home/bkroot/mysql-5.1-wl3228
into  romeo.(none):/home/bk/w3259-mysql-5.1-new-rpl
2006-08-21 10:54:41 +02:00
dlenev@mockturtle.local
a486f95547 Merge mockturtle.local:/home/dlenev/src/mysql-5.0-bg21216-2
into  mockturtle.local:/home/dlenev/src/mysql-5.1-bg19403-2
2006-08-21 12:28:35 +04:00
dlenev@mockturtle.local
186fa6c291 Fix for bug#21216 "Simultaneous DROP TABLE and SHOW OPEN TABLES causes
server to crash".

Crash caused by assertion failure happened when one ran SHOW OPEN TABLES
while concurrently doing DROP TABLE (or RENAME TABLE, CREATE TABLE LIKE
or any other command that takes name-lock) in other connection.
For non-debug version of server problem exposed itself as wrong output
of SHOW OPEN TABLES statement (it was missing name-locked tables).
Finally in 5.1 both debug and non-debug versions simply crashed in
this situation due to NULL-pointer dereference.

This problem was caused by the fact that table placeholders which were
added to table cache in order to obtain name-lock had TABLE_SHARE::table_name
set to 0. Therefore they broke assumption that this member is non-0 for
all tables in table cache which was checked by assert in list_open_tables()
(in 5.1 this function simply relies on it).
The fix simply sets this member for such placeholders to appropriate value
making this assumption true again.

This patch also includes test for similar bug 12212 "Crash that happens
during removing of database name from cache" reappeared in 5.1 as bug 19403.
2006-08-21 12:18:59 +04:00
jonas@perch.ndb.mysql.com
41c876c3f2 Merge perch.ndb.mysql.com:/home/jonas/src/51-work
into  perch.ndb.mysql.com:/home/jonas/src/mysql-5.1-new-ndb
2006-08-21 09:48:48 +02:00
jonas@perch.ndb.mysql.com
8ea0b13306 ndb - bug#21710
fix bug in drop_file during pageout (LCP)
2006-08-21 09:26:52 +02:00
jonas@perch.ndb.mysql.com
21bfd9849b ndb - revert timeout changes, as a test depends on it, it mysterious ways
(mysql-test-run only)
2006-08-21 07:53:27 +02:00
jpipes@shakedown.(none)
56443ae201 Fix for bug #21642: "configure" with no arguments does not build 2006-08-20 17:24:48 -04:00
evgen@moonbone.local
b4c2f3f8e5 Fixed bug#21475: Wrongly applied constant propagation leads to a false comparison.
A date can be represented as an int (like 20060101) and as a string (like
"2006.01.01"). When a DATE/TIME field is compared in one SELECT against both
representations the constant propagation mechanism leads to comparison
of DATE as a string and DATE as an int. In this example it compares 2006 and
20060101 integers. Obviously it fails comparison although they represents the
same date.


Now the Item_bool_func2::fix_length_and_dec() function sets the comparison
context for items being compared. I.e. if items compared as strings the
comparison context is STRING.
The constant propagation mechanism now doesn't mix items used in different
comparison contexts. The context check is done in the
Item_field::equal_fields_propagator() and in the change_cond_ref_to_const() 
functions.

Also the better fix for bug 21159 is introduced.
2006-08-21 00:23:57 +04:00
brian@zim.(none)
f68ce0ddef This changeset moves the ha_myisam files to their storage directories. It also includes updates for all engines include patch for windows builds. 2006-08-19 17:38:42 -07:00
brian@zim.(none)
800e348740 Update to push all of merge into the merge storage directory. 2006-08-19 10:23:22 -07:00
brian@zim.(none)
849fac1496 Moved heap into its own directory. 2006-08-19 08:02:52 -07:00
brian@zim.(none)
3d09079e31 Major changes are plug.in files created for almost all storage engines. A few stray BDB references removed. 2006-08-18 21:19:19 -07:00
malff/marcsql@weblab.(none)
b8a1ba1215 WL#3432 (Compile the Parser with a --debug --verbose option)
Corrected build issues : the build can not be conditional.
to keep a unique source .tar.gz distribution.
2006-08-18 19:16:07 -07:00
holyfoot/hf@mysql.com/deer.(none)
cf76884b38 Fix for the failing gis.test 2006-08-18 22:29:35 +05:00
joerg@trift2.
1f79db41fa mysql-test-run.pl : Fix the search path for "ndb_mgmd" and "ndbd". bug#21721 2006-08-18 18:24:38 +02:00
rburnett@bk-internal.mysql.com
d094b5f2f5 Merge bk-internal.mysql.com:/data0/bk/mysql-5.1
into  bk-internal.mysql.com:/data0/bk/mysql-5.1-kt
2006-08-18 15:46:41 +02:00
petr/cps@mysql.com/owlet
30ef47a93c Merge pchardin@bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/cps/mysql/trees/mysql-5.0-virgin
2006-08-18 16:48:32 +04:00
tnurnberg@salvation.intern.azundris.com
c8d1c498fb innodb r702
innodb r719
2006-08-18 14:16:11 +02:00
pekka@orca.ndb.mysql.com
1b6f2f1c32 ndb - bug#18781 bug#21017 bug#21050 : block index ops during NR + fix asserts 2006-08-18 09:56:52 +02:00
malff/marcsql@weblab.(none)
4a22b07ed5 WL#3432 (Compile the Parser with a --debug --verbose option)
Changed the automake build process :
- ./configure.in
- ./sql/Makefile.am
to compile an instrumented parser for debug=yes or debug=full builds

Changed the (primary) runtime invocation of the parser :
- sql/sql_parse.cc
to generate bison traces in stderr when the DBUG "parser_debug" flag is set.
2006-08-17 16:08:51 -07:00
rburnett@bk-internal.mysql.com
4b7e3775be Merge bk-internal.mysql.com:/data0/bk/mysql-5.1
into  bk-internal.mysql.com:/data0/bk/mysql-5.1-kt
2006-08-17 22:30:32 +02:00
rburnett@production.mysql.com
284fa931bb A couple of adjustments to the merge to fix the broken build
instance.cc:
  Removed wrongly placed closing brace
item_geofunc.cc:
  needed to pass in a TABLE_SHARE* instead of a TABLE*
2006-08-17 22:24:35 +02:00
jonas@perch.ndb.mysql.com
40754dd6e3 ndb - rpl_ndb_basic
fix for change of deadlock timeout in config.ini
2006-08-17 20:59:42 +02:00
jonas@perch.ndb.mysql.com
a1420b1df8 merge 2006-08-17 20:51:44 +02:00
jonas@perch.ndb.mysql.com
560fc3e3b3 Merge perch.ndb.mysql.com:/home/jonas/src/51-clean
into  perch.ndb.mysql.com:/home/jonas/src/mysql-5.1-new-ndb
2006-08-17 19:49:00 +02:00
andrey@example.com
30b4a45998 Merge ahristov@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  example.com:/work/mysql-5.1-runtime
2006-08-17 19:09:55 +02:00
rburnett@bk-internal.mysql.com
9d531c4f43 rename to avoid case sensitive collision 2006-08-17 18:50:58 +02:00
andrey@example.com
081b865936 Cleanup patch.
There is an existing macros for initializing LEX_STRINGs
with constant strings -> C_STRING_WITH_LEN. Change existing code to use it.
(char *) STRING_WITH_LEN -> C_STRING_WITH_LEN
2006-08-17 18:13:45 +02:00