Commit graph

2566 commits

Author SHA1 Message Date
kostja@bodhi.(none)
6238763281 Merge bk-internal.mysql.com:/home/bk/mysql-5.1
into  bodhi.(none):/opt/local/work/mysql-5.1-runtime
2007-07-31 23:47:38 +04:00
joerg@trift2.
22d445ee70 Fix a bad BitKeeper dependency structure for the "CMakeLists.txt" files.
They had been introduced in 5.1 and were only later backported to 5.0;
as a consequence, the files in the 5.1 tree do not depend on the 5.0 ones,
and changes in 5.0 do not propagate into the 5.1 files.

To fix this, the (previous) files in 5.1 now are deleted ("bk rm"),
and the previously deleted files depending on 5.0 are now moved to the 
respective source directories ("bk mv").
The current 5.1 contents is restored in these files.

If you need the previous history of the 5.1 files ("bk revtool"),
access those in "BitKeeper/deleted".

Contrary to the original plan, I did not introduce the name
"CMakeLists.historic" - mostly in order not to clutter the source tree.

This fixes bug#29982.
2007-07-31 19:35:13 +02:00
lzhou/zhl@dev3-63.(none)
463bb1fdb4 BUG#30134 restore of backup from different endian can work for timestamp column 2007-07-31 15:09:16 +00:00
lzhou/zhl@dev3-63.(none)
da64ad06b2 Merge dev3-63.(none):/home/zhl/mysql/mysql-5.0/bug23354
into  dev3-63.(none):/home/zhl/mysql/mysql-5.1/bug23354
2007-07-30 09:29:04 +00:00
joerg@trift2.
315ece5d8f Merge trift2.:/MySQL/M51/mysql-5.1
into  trift2.:/MySQL/M51/push-5.1
2007-07-30 11:15:14 +02:00
lzhou/zhl@dev3-63.(none)
582438f98e BUG#30024 Restore of backup from different endian can work for datetime 2007-07-30 09:01:11 +00:00
baker@bk-internal.mysql.com
78da884eec Merge bk-internal.mysql.com:/data0/bk/mysql-5.1
into  bk-internal.mysql.com:/data0/bk/mysql-5.1-arch
2007-07-28 09:16:35 +02:00
malff/marcsql@weblab.(none)
32668a2e08 Merge malff@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  weblab.(none):/home/marcsql/TREE/mysql-5.1-25422-d
2007-07-27 12:22:00 -06:00
serg@janus.mylan
42cb8ae7d2 Bug #30094 mi_test_all: assertion failure
updated to keypart_map api
2007-07-27 15:37:37 +02:00
svoj@june.mysql.com
21b707e43d Merge mysql.com:/home/svoj/devel/mysql/BUG29957/mysql-5.0-engines
into  mysql.com:/home/svoj/devel/mysql/BUG29957/mysql-5.1-engines
2007-07-27 14:44:31 +05:00
malff/marcsql@weblab.(none)
c7bbd8917c WL#3984 (Revise locking of mysql.general_log and mysql.slow_log)
Bug#25422 (Hang with log tables)
Bug 17876 (Truncating mysql.slow_log in a SP after using cursor locks the
          thread)
Bug 23044 (Warnings on flush of a log table)
Bug 29129 (Resetting general_log while the GLOBAL READ LOCK is set causes
           a deadlock)

Prior to this fix, the server would hang when performing concurrent
ALTER TABLE or TRUNCATE TABLE statements against the LOG TABLES,
which are mysql.general_log and mysql.slow_log.

The root cause traces to the following code:
in sql_base.cc, open_table()
  if (table->in_use != thd)
  {
    /* wait_for_condition will unlock LOCK_open for us */
    wait_for_condition(thd, &LOCK_open, &COND_refresh);
  }
The problem with this code is that the current implementation of the
LOGGER creates 'fake' THD objects, like
- Log_to_csv_event_handler::general_log_thd
- Log_to_csv_event_handler::slow_log_thd
which are not associated to a real thread running in the server,
so that waiting for these non-existing threads to release table locks
cause the dead lock.

In general, the design of Log_to_csv_event_handler does not fit into the
general architecture of the server, so that the concept of general_log_thd
and slow_log_thd has to be abandoned:
- this implementation does not work with table locking
- it will not work with commands like SHOW PROCESSLIST
- having the log tables always opened does not integrate well with DDL
operations / FLUSH TABLES / SET GLOBAL READ_ONLY

With this patch, the fundamental design of the LOGGER has been changed to:
- always open and close a log table when writing a log
- remove totally the usage of fake THD objects
- clarify how locking of log tables is implemented in general.

See WL#3984 for details related to the new locking design.

Additional changes (misc bugs exposed and fixed):

1)

mysqldump which would ignore some tables in dump_all_tables_in_db(),
 but forget to ignore the same in dump_all_views_in_db().

2)

mysqldump would also issue an empty "LOCK TABLE" command when all the tables
to lock are to be ignored (numrows == 0), instead of not issuing the query.

3)

Internal errors handlers could intercept errors but not warnings
(see sql_error.cc).

4)

Implementing a nested call to open tables, for the performance schema tables,
exposed an existing bug in remove_table_from_cache(), which would perform:
  in_use->some_tables_deleted=1;
against another thread, without any consideration about thread locking.
This call inside remove_table_from_cache() was not required anyway,
since calling mysql_lock_abort() takes care of aborting -- cleanly -- threads
that might hold a lock on a table.
This line (in_use->some_tables_deleted=1) has been removed.
2007-07-27 00:31:06 -06:00
baker@bk-internal.mysql.com
dc61cf107b Merge bk-internal.mysql.com:/data0/bk/mysql-5.1
into  bk-internal.mysql.com:/data0/bk/mysql-5.1-arch
2007-07-26 20:48:44 +02:00
acurtis/antony@ltamd64.xiphis.org
cb50eec077 Merge xiphis.org:/anubis/antony/work/mysql-5.1-engines
into  xiphis.org:/anubis/antony/work/mysql-5.1-engines.merge
2007-07-26 07:57:50 -07:00
joerg@debian.(none)
6010c58f1e Merge debian.(none):/M51/mysql-5.1
into  debian.(none):/M51/push-5.1
2007-07-26 16:21:01 +02:00
acurtis/antony@ltamd64.xiphis.org
d60c0e7de2 Merge xiphis.org:/anubis/antony/work/p2-bug25679.3
into  xiphis.org:/anubis/antony/work/p2-bug25679.3.merge-5.1
2007-07-25 17:24:59 -07:00
gshchepa/uchum@gleb.loc
3595bbb34c Merge gleb.loc:/home/uchum/work/bk/5.0-opt
into  gleb.loc:/home/uchum/work/bk/5.1-opt
2007-07-26 01:23:39 +05:00
tsmith@ramayana.hindu.god
6570f5e004 lock0iter.c:
remove unused variable "bit_no"
2007-07-25 14:06:18 -06:00
tsmith@ramayana.hindu.god
fabb334bfe Apply snapshot innodb-51-ss1644: Part #2.
I forgot to check in some new files: lock0priv.h lock0priv.ic lock0iter.c lock0iter.h
2007-07-25 13:29:57 -06:00
acurtis/antony@ltamd64.xiphis.org
1f0f46e4fc Merge xiphis.org:/anubis/antony/work/p2-bug25679.3
into  xiphis.org:/anubis/antony/work/p2-bug25679.3.merge-5.1
2007-07-25 12:29:44 -07:00
svoj@april.(none)
5c83b14b48 Merge mysql.com:/home/svoj/devel/bk/mysql-5.1-engines
into  mysql.com:/home/svoj/devel/mysql/BUG29806/mysql-5.1-engines
2007-07-25 19:58:18 +05:00
svoj@mysql.com/april.(none)
3b18aae71c BUG#29806 - binlog_innodb.test creates a server log
Stopping mysql server could result in an entry in mysql error
file: "InnoDB: Error: MySQL is freeing a thd".

This happened because InnoDB assumes that the server will never
call external_lock(F_UNLCK) in case external_lock(READ/WRITE)
failed.

Prior to this patch we haven't had strict definition whether
external_lock(F_UNLCK) must be called in case external_lock(READ/WRITE)
fails.

This patch states that we never call external_lock(F_UNLCK) in case
external_lock(READ/WRITE) fails.
2007-07-25 19:56:17 +05:00
jperkin@production.mysql.com
6df53ea2df Fix for bug#29641 - $CC on Open Server is set to contain arguments
for enabling threads.  However, duplicate AC_PROG_* macros in the
innobase plug.in file were resetting $CC and causing link errors.

As AC_PROG_* macros are already used in the main configure.in file
there should be no need for them to be duplicated here too.
2007-07-25 10:44:45 +02:00
tomas@whalegate.ndb.mysql.com
483555d323 wait_until_ready may return greater that 1 since wait time for second node to connect is 0 2007-07-25 07:22:28 +02:00
tsmith@ramayana.hindu.god
85982ab747 Apply snapshot innodb-51-ss1644
Fixes:
- Bug #23710: crash_commit_before fails if innodb_file_per_table=1
- Bug #28254: innodb crash if shutdown during innodb_table_monitor is running
- Bug #28604: innodb_force_recovery restricts data dump
- Bug #29097: fsp_get_available_space_in_free_extents() is capped at 4TB
- Bug #29155: Innodb "Parallel recovery" is not prevented
2007-07-24 19:34:31 -06:00
monty@mysql.com/nosik.monty.fi
dd81895e45 Added support for 'internal temporary tables' in HEAP tables.
Now we don't take any mutexes when creating or dropping internal HEAP tables during SELECT.
Change buffer sizes to size_t to make keycache 64 bit safe on platforms where sizeof(ulong) != sizeof(size_t)
2007-07-25 01:58:12 +03:00
tsmith@ramayana.hindu.god
8a671513da Merge ramayana.hindu.god:/home/tsmith/m/bk/51
into  ramayana.hindu.god:/home/tsmith/m/bk/maint/jul24/51
2007-07-24 16:16:16 -06:00
antony@pcg5ppc.xiphis.org
1a83641292 post 5.0 to 5.1 merge fixes 2007-07-24 07:23:59 -07:00
acurtis/antony@ltamd64.xiphis.org
f736a40f82 Merge xiphis.org:/anubis/antony/work/p2-bug25714.1
into  xiphis.org:/anubis/antony/work/p2-bug25714.1.merge-5.1
2007-07-24 00:03:01 -07:00
baker@bk-internal.mysql.com
9cac726a8e Merge bk-internal.mysql.com:/data0/bk/mysql-5.1
into  bk-internal.mysql.com:/data0/bk/mysql-5.1-arch
2007-07-23 00:45:27 +02:00
istruewing@chilla.local
3a33c745f1 Merge bk-internal.mysql.com:/home/bk/mysql-5.1
into  chilla.local:/home/mydev/mysql-5.1-axmrg
2007-07-21 03:13:59 +02:00
istruewing@chilla.local
410e4400c4 Merge chilla.local:/home/mydev/mysql-5.1-amain
into  chilla.local:/home/mydev/mysql-5.1-axmrg
2007-07-21 03:12:35 +02:00
istruewing@chilla.local
d9bd5f2364 Merge chilla.local:/home/mydev/mysql-5.1-ateam
into  chilla.local:/home/mydev/mysql-5.1-axmrg
2007-07-21 03:10:23 +02:00
acurtis/antony@xiphis.org/ltamd64.xiphis.org
c1ca591f09 silence two 'unused variable' warnings 2007-07-20 14:01:37 -07:00
acurtis/antony@xiphis.org/ltamd64.xiphis.org
395233b4f7 Bug#29875
"Disable transaction support in Federated storage engine"
  Minimal patch to disable Federated's transactions until they can be fixed.
2007-07-20 11:35:19 -07:00
gshchepa/uchum@gleb.loc
95d43074cc Merge gleb.loc:/home/uchum/work/bk/5.1
into  gleb.loc:/home/uchum/work/bk/5.1-opt
2007-07-20 04:21:46 +05:00
cmiller@zippy.cornsilk.net
65c59c1d04 Merge zippy.cornsilk.net:/home/cmiller/work/mysql/bug26909/my51-bug26909
into  zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.1-maint
2007-07-19 15:37:43 -04:00
cmiller@zippy.cornsilk.net
784dff6da3 Merge zippy.cornsilk.net:/home/cmiller/work/mysql/bug26909/my50-bug26909
into  zippy.cornsilk.net:/home/cmiller/work/mysql/bug26909/my51-bug26909
2007-07-19 15:34:40 -04:00
gshchepa/uchum@gleb.loc
35a2a20160 Merge gleb.loc:/home/uchum/work/bk/5.1
into  gleb.loc:/home/uchum/work/bk/5.1-opt
2007-07-19 20:01:13 +05:00
gkodinov/kgeorge@magare.gmz
d5a0cf134b 5.0-opt -> 5.1-opt merge 2007-07-18 18:08:05 +03:00
gkodinov/kgeorge@magare.gmz
f6225e2048 Merge magare.gmz:/home/kgeorge/mysql/work/mysql-5.0-opt
into  magare.gmz:/home/kgeorge/mysql/work/merge-5.0-5.1-opt
2007-07-18 15:56:29 +03:00
baker@bk-internal.mysql.com
3fcc8a9c46 Merge bk-internal.mysql.com:/data0/bk/mysql-5.1
into  bk-internal.mysql.com:/data0/bk/mysql-5.1-arch
2007-07-17 21:08:17 +02:00
tsmith@ramayana.hindu.god
23695e4e1e Merge ramayana.hindu.god:/home/tsmith/m/bk/51
into  ramayana.hindu.god:/home/tsmith/m/bk/maint/51
2007-07-17 11:33:26 -06:00
kostja@bodhi.(none)
6b3784870c Merge bk-internal.mysql.com:/home/bk/mysql-5.1-engines
into  bodhi.(none):/opt/local/work/mysql-5.1-runtime
2007-07-17 13:10:02 +04:00
kostja@bodhi.(none)
88fc7cab26 Merge bodhi.(none):/opt/local/work/mysql-5.0-runtime
into  bodhi.(none):/opt/local/work/mysql-5.1-runtime
2007-07-16 23:31:36 +04:00
istruewing@chilla.local
e307a089a9 Merge chilla.local:/home/mydev/mysql-5.1-amain
into  chilla.local:/home/mydev/mysql-5.1-axmrg
2007-07-14 19:35:43 +02:00
pekka@clam.ndb.mysql.com/clam.(none)
283c679dc3 ndb - threads and timings to hugo* pk ops 2007-07-14 11:48:51 +03:00
ramil/ram@ramil.myoffice.izhnet.ru
9febf0d3bf Merge mysql.com:/home/ram/work/mysql-5.1-maint
into  mysql.com:/home/ram/work/b29253/b29253.5.1
2007-07-14 10:23:48 +05:00
ramil/ram@mysql.com/ramil.myoffice.izhnet.ru
11a0cf3a6f Fix for bug #29253: csv table reportedly marked as crashed
Problem: the data file changes made during delete/update are not visible to 
other threads as the file is reopened, so reading data 
with old descriptors might miss the changes.

Fix: reopen the data file before reading if it was reopened during 
delete/update to ensure there's no data behind.

Note: there's no simple test case.
2007-07-14 00:13:37 +05:00
gshchepa/uchum@gleb.loc
127c6ca608 Merge gleb.loc:/home/uchum/work/bk/5.1
into  gleb.loc:/home/uchum/work/bk/5.1-opt
2007-07-13 20:52:03 +05:00
tomas@whalegate.ndb.mysql.com
a0b5dd6ee7 Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-new-ndb
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-new-maint
2007-07-13 15:59:06 +02:00