Commit graph

49680 commits

Author SHA1 Message Date
unknown
bc2ecae3e8 Merge kindahl-laptop.dnsalias.net:/home/bkroot/mysql-5.1-rpl
into  kindahl-laptop.dnsalias.net:/home/bk/b29549-mysql-5.1-target-5.1.22


mysql-test/suite/rpl/t/disabled.def:
  Auto merged
mysql-test/suite/rpl_ndb/t/disabled.def:
  Auto merged
sql/log.cc:
  Auto merged
sql/rpl_record.cc:
  Auto merged
sql/sql_show.cc:
  Auto merged
BitKeeper/deleted/.del-rpl_ndb_innodb2ndb.result~1:
  Delete: mysql-test/suite/rpl_ndb/r/rpl_ndb_innodb2ndb.result
BitKeeper/deleted/.del-rpl_ndb_myisam2ndb.result~1:
  Delete: mysql-test/suite/rpl_ndb/r/rpl_ndb_myisam2ndb.result
mysql-test/suite/rpl_ndb/t/rpl_ndb_innodb2ndb-slave.opt:
  Manual merge
mysql-test/suite/rpl_ndb/t/rpl_ndb_innodb2ndb.test:
  Manual merge
mysql-test/suite/rpl_ndb/t/rpl_ndb_myisam2ndb-slave.opt:
  Manual merge
mysql-test/suite/rpl_ndb/t/rpl_ndb_myisam2ndb.test:
  Manual merge
sql/log_event.cc:
  Manual merge
sql/field.cc:
  Manual merge and adding comment.
sql/field.h:
  Manual merge.
2007-10-12 09:40:24 +02:00
unknown
06fb8c2d10 BUG#29549 (Endians: test failures on Solaris):
Refactoring code to add parameter to pack() and unpack() functions with
purpose of indicating if data should be packed in little-endian or
native order. Using new functions to always pack data for binary log
in little-endian order. The purpose of this refactoring is to allow
proper implementation of endian-agnostic pack() and unpack() functions.

Eliminating several versions of virtual pack() and unpack() functions
in favor for one single virtual function which is overridden in
subclasses.

Implementing pack() and unpack() functions for some field types that
packed data in native format regardless of the value of the
st_table_share::db_low_byte_first flag.

The field types that were packed in native format regardless are:
Field_real, Field_decimal, Field_tiny, Field_short, Field_medium,
Field_long, Field_longlong, and Field_blob.

Before the patch, row-based logging wrote the rows incorrectly on
big-endian machines where the storage engine defined its own
low_byte_first() to be FALSE on big-endian machines (the default
is TRUE), while little-endian machines wrote the fields in correct
order. The only known storage engine that does this is NDB. In effect,
this means that row-based replication from or to a big-endian
machine where the table was using NDB as storage engine failed if the
other engine was either non-NDB or on a little-endian machine.

With this patch, row-based logging is now always done in little-endian
order, while ORDER BY uses the native order if the storage engine
defines low_byte_first() to return FALSE for big-endian machines.

In addition, the max_data_length() function available in Field_blob
was generalized to the entire Field hierarchy to give the maximum
number of bytes that Field::pack() will write.


mysql-test/extra/rpl_tests/rpl_extraMaster_Col.test:
  Sorting by columns that produces deterministic order.
mysql-test/suite/rpl/r/rpl_extraColmaster_innodb.result:
  Result change.
mysql-test/suite/rpl/r/rpl_extraColmaster_myisam.result:
  Result change.
mysql-test/suite/rpl/r/rpl_row_extraColmaster_ndb.result:
  Result change.
mysql-test/suite/rpl/t/disabled.def:
  Enabling tests.
mysql-test/suite/rpl/t/rpl_row_mysqlbinlog.test:
  Adding missing sync_slave_with_master causing slave to keep tables
  after shutdown.
mysql-test/suite/rpl_ndb/t/disabled.def:
  Enabling tests.
mysql-test/suite/rpl_ndb/t/rpl_ndb_innodb2ndb-slave.opt:
  Adding --new option
mysql-test/suite/rpl_ndb/t/rpl_ndb_innodb2ndb.test:
  Adding have_log_bin.
mysql-test/suite/rpl_ndb/t/rpl_ndb_myisam2ndb-slave.opt:
  Adding --new option
mysql-test/suite/rpl_ndb/t/rpl_ndb_myisam2ndb.test:
  Adding have_log_bin
mysql-test/t/partition.test:
  Adding have_archive, since that is used in the test.
sql/field.cc:
  Eliminating all two-argument pack() and unpack() functions and moving
  functionality into the four-argument version. The four argument version
  is introduced so that it is possible to avoid using the storage engine
  default when writing and reading the packed format (the unpacked format
  still uses the storage engine's default). This is used by row-based
  replication to write the fields in a storage engine- and endian-agnostic
  format.
  
  Packing integral and floating-point numbers in little-endian format
  (if requested).
  
  Using pad_char for the field instead of spaces (0x20) when unpacking.
  
  Adding some Doxygen documentation.
  ---
  Adding max_data_length() to denote the maximum number of bytes that
  pack() will write.
  
  Adding casts to remove warnings for debug printouts.
sql/field.h:
  Eliminating all virtual pack() and unpack() functions except the four-
  argument version, which now is the function that shall be overridden.
  The two-argument versions are convenience functions, to prevent changes
  to code that uses these.
  
  Adding code to pack integer numbers and floating-point numbers in
  little-endian format, if requested.
  ---
  Adding max_data_length() to denote the maximum number of bytes that
  pack() will write.
sql/log.cc:
  Removing debug printout causing crash when starting NDB on Solaris.
sql/log_event.cc:
  Adding missing #ifndef causing compile failure. Adding debug printouts.
sql/rpl_record.cc:
  Debriding code. Using new pack() and unpack() functions to always pack
  fields little-endian. Adding debug printouts.
  ---
  Using max_data_length() when packing field into row.
  
  Adding casts to debug printouts.
sql/sql_show.cc:
  Adding code that causes crash on Solaris machines since printf() cannot
  handle NULL values for strings properly.
mysql-test/suite/rpl_ndb/r/rpl_ndb_innodb2ndb.result:
  New BitKeeper file ``mysql-test/suite/rpl_ndb/r/rpl_ndb_innodb2ndb.result''
mysql-test/suite/rpl_ndb/r/rpl_ndb_myisam2ndb.result:
  New BitKeeper file ``mysql-test/suite/rpl_ndb/r/rpl_ndb_myisam2ndb.result''
2007-10-11 18:18:05 +02:00
unknown
9b7512af5c Merge kindahl-laptop.dnsalias.net:/home/bkroot/mysql-5.1-rpl
into  kindahl-laptop.dnsalias.net:/home/bk/b31076-mysql-5.1-rpl


sql/log_event.cc:
  Auto merged
2007-09-24 11:46:11 +02:00
unknown
a78445a7bc BUG#31076 (Server crashes when start slave is issued):
Second patch to initailize more uninitialized variables.


sql/log_event.cc:
  Intializing several uninitialized fields in the Table_map_log_event.
2007-09-24 10:50:57 +02:00
unknown
08c5f26784 Fixing bug in test in that a database was not dropped and was visible
in following tests.


mysql-test/suite/rpl/r/rpl_bug31076.result:
  Result file change.
mysql-test/suite/rpl/t/rpl_bug31076.test:
  Dropping database so that following tests don't see it.
2007-09-21 08:13:52 +02:00
unknown
cdd5e2a494 Merge kindahl-laptop.dnsalias.net:/home/bkroot/mysql-5.1-rpl
into  kindahl-laptop.dnsalias.net:/home/bk/b31076-mysql-5.1-rpl


sql/log_event.cc:
  Auto merged
2007-09-20 18:30:00 +02:00
unknown
e40080ea66 BUG#31076 (Server crashes when start slave is issued):
Row-based replication crashes when replicating from pre-5.1.22 to 5.1.22
due to an uninitialized variable.


sql/log_event.cc:
  Initializing m_null_bits to null so that it can be detected that it
  was not initialized later.
mysql-test/suite/rpl/r/rpl_bug31076.result:
  New BitKeeper file ``mysql-test/suite/rpl/r/rpl_bug31076.result''
mysql-test/suite/rpl/t/rpl_bug31076.test:
  New BitKeeper file ``mysql-test/suite/rpl/t/rpl_bug31076.test''
2007-09-20 16:31:05 +02:00
unknown
1bd213692b Merge lthalmann@bk-internal.mysql.com:/home/bk/mysql-5.1-new-rpl
into  mysql.com:/nfsdisk1/lars/bkroot/mysql-5.1-new-rpl
2007-09-17 14:14:02 +02:00
unknown
7afdcf95d8 Merge mysql.com:/nfsdisk1/lars/MERGE/mysql-5.0-merge
into  mysql.com:/nfsdisk1/lars/MERGE/mysql-5.1-merge


sql/sql_insert.cc:
  Auto merged
2007-09-17 13:31:35 +02:00
unknown
a7ace70e95 Merge mysql.com:/nfsdisk1/lars/bkroot/mysql-5.1-new-rpl
into  mysql.com:/nfsdisk1/lars/MERGE/mysql-5.1-merge


sql/field.cc:
  Auto merged
sql/log_event.cc:
  Auto merged
sql/rpl_utility.cc:
  Auto merged
sql/rpl_utility.h:
  Auto merged
sql/slave.cc:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_update.cc:
  Auto merged
2007-09-17 12:38:22 +02:00
unknown
fe24b460c4 Merge: bug@27417,23333 and bug#28960 tests with 5.1
mysql-test/suite/binlog/r/binlog_row_mix_innodb_myisam.result:
  results changed
mysql-test/suite/binlog/r/binlog_stm_mix_innodb_myisam.result:
  results changed
mysql-test/suite/binlog/t/binlog_row_mix_innodb_myisam.test:
  calling included file with testing bug#27417,23333. bug#28960 is not an rbr bug.
mysql-test/suite/binlog/t/binlog_stm_mix_innodb_myisam.test:
  moved SF() with side effects bugs to a separate includable file.
  This test verifies STMT format whereas binlog_row test is reposible for
  ROW format.
mysql-test/extra/binlog_tests/mix_innodb_myisam_side_effects.test:
  sourced part for bugs with SF() etc having side effects of midifying
  non-transactional tables.
2007-09-17 12:31:10 +02:00
unknown
14f5002d83 Merge: bug#27417,23333 manual work for fixing tests and a source code.
mysql-test/suite/binlog/r/binlog_stm_mix_innodb_myisam.result:
  results changed due to 
  1. tt table made temporary is it's supposed to; 
  2. show master status is turned into binlog pos masking-out macro
  3. merge defect for select_insert::abort()
mysql-test/suite/binlog/t/binlog_stm_mix_innodb_myisam.test:
  masking-out binlog postions in the results via 
  source include/show_binlog_events.inc;
sql/sql_insert.cc:
  merging defect in not applied hunk for select_insert::abort() is fixed
2007-09-16 18:16:40 +02:00
unknown
68297025a0 Manual merge fixes/tests for bugs_28960,27417,23333.
mysql-test/extra/binlog_tests/mix_innodb_myisam_binlog.test:
  follow-up of the previous manual resolve. The snippet is moved into the heading
  file.
mysql-test/suite/binlog/r/binlog_stm_mix_innodb_myisam.result:
  results changed
mysql-test/suite/binlog/t/binlog_stm_mix_innodb_myisam.test:
  removing explicit offsets from report;
  appending bug#27417,23333,28960 related snippet, addressing left TODO:s.
mysql-test/suite/rpl/r/rpl_packet.result:
  results changed
mysql-test/suite/rpl/t/rpl_packet.test:
  fixing row/stmt compatibility with #-ing out unneeded values
2007-09-16 12:07:00 +02:00
unknown
e35c1ab9a2 Merge dl145j.mysql.com:/tmp/andrei/mysql-5.0-rpl
into  dl145j.mysql.com:/tmp/andrei/5.1-merge


BitKeeper/deleted/.del-sp_trans_log.result:
  Auto merged
BitKeeper/deleted/.del-sp_trans_log.test:
  Auto merged
mysql-test/suite/rpl/r/rpl_packet.result:
  Auto merged
sql/sql_delete.cc:
  Auto merged
sql/sql_update.cc:
  Auto merged
mysql-test/suite/binlog/r/binlog_stm_mix_innodb_myisam.result:
  should be re-recorded
mysql-test/extra/binlog_tests/mix_innodb_myisam_binlog.test:
  manual merge
mysql-test/suite/rpl/t/rpl_packet.test:
  manual merge
sql/slave.cc:
  manual merge
sql/sql_insert.cc:
  manual merge - installing 5.0 patch logics
sql/sql_load.cc:
  manual merge
2007-09-15 21:25:56 +02:00
unknown
48f38afb8e Merge mysql_cab_desk.:C:/source/c++/mysql-5.1-new-rpl
into  mysql_cab_desk.:C:/source/c++/mysql-5.1_BUG_30790
2007-09-14 11:32:14 -04:00
unknown
431fd2c1aa BUG#30790 : Suspicious code in rpl_utility.cc
This patch clarifies some of the coding choices with documentationa and
removes a limitation in the code for future expansion of the CHAR and
BINARY fields to length > 255.


sql/field.cc:
  BUG#30790 : Suspicious code in rpl_utility.cc
  
  This patch adds an assertion to ensure we are not attempting to encode
  negative values.
sql/log_event.cc:
  BUG#30790 : Suspicious code in rpl_utility.cc
  
  This patch adds comments to help explain the choice of variable types.
sql/rpl_utility.cc:
  BUG#30790 : Suspicious code in rpl_utility.cc
  
  This patch removes code from the calc_field_size that is not needed and
  was ambiguous. Originally intended to future expansion, the code was
  not needed.
  
  Also added are comments to help explain some portions of the code.
  
  A change was made to the korr method to use the unsigned version to 
  avoid extended sign problems.
sql/rpl_utility.h:
  BUG#30790 : Suspicious code in rpl_utility.cc
  
  This patch corrects some type discrepencies and removes an extra cast.
2007-09-14 11:22:41 -04:00
unknown
5418752d5b 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
unknown
98dfab5628 Merge mysql.com:/nfsdisk1/lars/bkroot/mysql-5.1-new-rpl
into  mysql.com:/nfsdisk1/lars/MERGE/mysql-5.1-merge


mysql-test/suite/ndb/r/ndb_dd_basic.result:
  Auto merged
mysql-test/suite/rpl/include/rpl_mixed_dml.inc:
  Auto merged
mysql-test/suite/rpl/r/rpl_innodb_mixed_dml.result:
  Auto merged
sql/field.cc:
  Auto merged
sql/handler.cc:
  Auto merged
sql/log.cc:
  Auto merged
sql/log_event_old.cc:
  Auto merged
sql/log_event_old.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/rpl_record.cc:
  Auto merged
sql/rpl_record.h:
  Auto merged
sql/rpl_utility.cc:
  Auto merged
sql/rpl_utility.h:
  Auto merged
sql/slave.cc:
  Auto merged
sql/slave.h:
  Auto merged
sql/sp_head.cc:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_string.cc:
  Auto merged
sql/sql_table.cc:
  Auto merged
sql/unireg.h:
  Auto merged
mysql-test/suite/rpl/t/disabled.def:
  Manual merge
mysql-test/suite/rpl_ndb/t/disabled.def:
  Manual merge
sql/log_event.cc:
  Manual merge
sql/log_event.h:
  Manual merge
sql/sql_yacc.yy:
  Manual merge
2007-09-10 13:59:38 +02:00
unknown
3d5b214727 Merge mysql.com:/nfsdisk1/lars/bkroot/mysql-5.0-rpl
into  mysql.com:/nfsdisk1/lars/MERGE/mysql-5.0-merge


sql/sql_insert.cc:
  Auto merged
2007-09-10 13:15:04 +02:00
unknown
a46fc5d837 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
unknown
4b2606f382 replaced '--exec rm' to '--remove_file' 2007-09-07 12:04:57 +04:00
unknown
0e1cdf8d94 Test cleanup in rpl_binlog_grant: XID values are unpredictable 2007-09-06 12:06:22 -06:00
unknown
9179dc33b9 Merge bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  moksha.local:/Users/davi/mysql/push/mysql-5.1-runtime
2007-09-06 13:28:00 -03:00
unknown
16c328056c The test case for bug 28587 doesn't work with the embedded version,
the first query is not running while we are doing wait queries on
a second connection.


mysql-test/r/insert_notembedded.result:
  Test case result for bug 28587 moved from insert_update.result
mysql-test/r/insert_update.result:
  Remove test case result for bug 28587, moving to insert_notembedded.result
mysql-test/t/insert_notembedded.test:
  Test case result for bug 28587, moved from insert_update.test
mysql-test/t/insert_update.test:
  Remove test case for bug 28587, moving to insert_notembedded.test
2007-09-06 13:22:34 -03:00
unknown
ed34d91121 Make events.test more robust against timing issues.
mysql-test/t/events.test:
  Wait until event scheduler thread reaches exactly the same state
  which later appears in the results of select from processlist.
2007-09-06 15:57:36 +04:00
unknown
7f553f341f Merge omega.weblab:/home/malff/TREE/mysql-5.1-base
into  omega.weblab:/home/malff/TREE/mysql-5.1-rt-merge
2007-09-05 14:52:40 -06:00
unknown
41ae90df8f Merge malff@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  omega.weblab:/home/malff/TREE/mysql-5.1-cleanup
2007-09-05 12:15:24 -06:00
unknown
712b9b00fb Test events_logs_tests cleanup
Fixed test failure under heavy load, in case truncate table is slow.


mysql-test/r/events_logs_tests.result:
  Fixed test failure under heavy load, in case truncate table is slow.
mysql-test/t/events_logs_tests.test:
  Fixed test failure under heavy load, in case truncate table is slow.
2007-09-05 12:14:43 -06:00
unknown
bfbe3350dd The test case for Bug#29936 doesn't work with the embedded version,
the first query is not running while we are doing wait queries on
a second connection.


mysql-test/r/sp.result:
  Remove test case result for Bug#29936, moving to sp_notembedded.result
mysql-test/r/sp_notembedded.result:
  Test case result for Bug#29936, moved from sp.result
mysql-test/t/sp.test:
  Remove test case for Bug#29936, moving to sp_notembedded.test
mysql-test/t/sp_notembedded.test:
  Test case result for Bug#29936, moved from sp.test
2007-09-05 15:03:02 -03:00
unknown
700d8b1f09 Discovered a bug while working with backup. Since it is possible to execute a statement in a pre/post statment clause that can return a result, we need to test for that and free it.
client/mysqlslap.c:
  Cleanup resuls if rows are returned.
2007-09-04 20:03:12 -07:00
unknown
ddf8272b75 Merge weblab.(none):/home/marcsql/TREE/mysql-5.0-runtime
into  weblab.(none):/home/marcsql/TREE/mysql-5.1-rt50-merge


mysql-test/r/sp.result:
  Auto merged
mysql-test/t/mysql.test:
  Auto merged
mysql-test/t/sp.test:
  Auto merged
sql/item_cmpfunc.h:
  Auto merged
sql/sql_cache.cc:
  Auto merged
sql/sql_lex.cc:
  Auto merged
2007-09-04 16:50:09 -06:00
unknown
5c836d24f6 Fixed whitespace 2007-09-04 16:40:27 -06:00
unknown
3a94137ce0 Merge weblab.(none):/home/marcsql/TREE/mysql-5.0-base
into  weblab.(none):/home/marcsql/TREE/mysql-5.0-rt-merge


mysql-test/r/sp.result:
  Auto merged
mysql-test/t/mysql.test:
  Auto merged
mysql-test/t/sp.test:
  Auto merged
2007-09-04 14:38:26 -06:00
unknown
c458f7f6a3 Merge weblab.(none):/home/marcsql/TREE/mysql-5.1-base
into  weblab.(none):/home/marcsql/TREE/mysql-5.1-rt50-merge


mysql-test/r/sp.result:
  Auto merged
mysql-test/t/mysql.test:
  Auto merged
mysql-test/t/query_cache.test:
  Auto merged
mysql-test/t/sp.test:
  Auto merged
sql/item_cmpfunc.h:
  Auto merged
sql/rpl_utility.h:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_cache.cc:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
2007-09-04 12:25:54 -06:00
unknown
6bfae914a2 Merge kpettersson@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  adventure.(none):/home/thek/Development/cpp/mysql-5.1-runtime
2007-09-04 17:46:01 +02:00
unknown
6f74c4ed29 Merge adventure.(none):/home/thek/Development/cpp/bug21074/my51-bug21074
into  adventure.(none):/home/thek/Development/cpp/mysql-5.1-runtime


sql/sql_cache.cc:
  Auto merged
2007-09-04 17:43:29 +02:00
unknown
0e466b540c Disabling rpl_ndb_2other test.
mysql-test/suite/rpl_ndb/t/disabled.def:
  The rpl_ndb_2other test must be disabled until replication correctly
  handles endianess issues.
2007-09-04 15:24:04 +02:00
unknown
11e90a65c8 Merge bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  station.:/mnt/raid/alik/MySQL/5.1-rt-build
2007-09-03 17:24:59 +04:00
unknown
0f70a032c2 Merge adventure.(none):/home/thek/Development/cpp/bug21074/my50-bug21074
into  adventure.(none):/home/thek/Development/cpp/mysql-5.0-runtime


sql/sql_cache.cc:
  Auto merged
2007-09-03 13:46:10 +02:00
unknown
48d905d1f3 Merge adventure.(none):/home/thek/Development/cpp/bug21074/my50-bug21074
into  adventure.(none):/home/thek/Development/cpp/bug21074/my51-bug21074


sql/sql_cache.cc:
  Null merge
2007-09-03 13:44:02 +02:00
unknown
d2a0a4d53a - Fix cross compatibility issues by exchanging pthread_yield with my_sleep(0) 2007-09-03 13:42:32 +02:00
unknown
81dff1351a Rewrite test case for BUG 25843 to avoid SHOW BINLOG EVENTS
statement.


mysql-test/suite/rpl/r/rpl_ps.result:
  Update result file.
2007-09-03 15:13:34 +04:00
unknown
424bda7815 Make mysql compilable on gcc-4.2.1.
c++config.h now has the following code:
// For example, <windows.h> is known to #define min and max as macros...
#undef min
#undef max

So, our defines in my_global.h are undefined when <new> header
is included.

Move definitions of min()/max() to the end of my_global.h.
2007-09-03 15:12:28 +04:00
unknown
46d7b333c0 Merge adventure.(none):/home/thek/Development/cpp/bug21074/my51-bug21074
into  adventure.(none):/home/thek/Development/cpp/mysql-5.1-runtime


sql/sql_cache.cc:
  Auto merged
2007-09-03 11:07:32 +02:00
unknown
11987c913a Merge kpettersson@bk-internal.mysql.com:/home/bk/mysql-5.0-runtime
into  adventure.(none):/home/thek/Development/cpp/mysql-5.0-runtime


sql/sql_cache.cc:
  Auto merged
2007-09-03 10:59:44 +02:00
unknown
37db876e10 Merge adventure.(none):/home/thek/Development/cpp/bug21074/my50-bug21074
into  adventure.(none):/home/thek/Development/cpp/mysql-5.0-runtime


sql/sql_cache.cc:
  Auto merged
2007-09-03 10:54:33 +02:00
unknown
8811fde4ba Merge adventure.(none):/home/thek/Development/cpp/bug21074/my50-bug21074
into  adventure.(none):/home/thek/Development/cpp/bug21074/my51-bug21074


sql/sql_cache.cc:
  Null merge
2007-09-03 10:52:14 +02:00
unknown
733bd4fe81 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.


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.
2007-09-03 10:47:24 +02:00
unknown
943ed8fe35 Merge bk-internal:/home/bk/mysql-5.1-maint
into  pilot.(none):/data/msvensson/mysql/mysql-5.1-new-maint
2007-09-01 11:43:44 +02:00
unknown
8ffb011bb7 Merge pilot.(none):/data/msvensson/mysql/mysql-5.0-maint
into  pilot.(none):/data/msvensson/mysql/mysql-5.1-new-maint


mysql-test/lib/mtr_misc.pl:
  Auto merged
2007-09-01 11:42:43 +02:00