Commit graph

51744 commits

Author SHA1 Message Date
dkatz@damien-katzs-computer.local
af6db482d5 Merge bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  damien-katzs-computer.local:/Users/dkatz/51runtime
2007-12-13 14:31:20 -05:00
davi@endora.local
d099e6a257 Merge mysql.com:/Users/davi/mysql/bugs/32395-5.1
into  mysql.com:/Users/davi/mysql/mysql-5.1-runtime
2007-12-13 16:33:04 -02:00
anozdrin/alik@station.
93eef1ce40 Merge station.:/mnt/raid/alik/MySQL/devel/5.1
into  station.:/mnt/raid/alik/MySQL/devel/5.1-rt
2007-12-13 12:06:37 +03:00
kostja@bodhi.(none)
2789a12b6a Fix a compilation warning and a subtle bug with truncation of the
last_insert_id introduced by the patch for Bug#12713 (part 1)
2007-12-13 05:37:38 +03:00
kostja@bodhi.(none)
572ab7a6b0 Silence a new warning printed by rpl_row_tabledefs_3innodb test execution. 2007-12-13 04:33:54 +03:00
kostja@bodhi.(none)
098832c5ca Fix a compilation error. 2007-12-13 04:19:23 +03:00
davi@mysql.com/endora.local
137e90ed55 Bug#32395 Alter table under a impending global read lock causes a server crash
The problem is that some DDL statements (ALTER TABLE, CREATE
TRIGGER, FLUSH TABLES, ...) when under LOCK TABLES need to
momentarily drop the lock, reopen the table and grab the write
lock again (using reopen_tables). When grabbing the lock again,
reopen_tables doesn't pass a flag to mysql_lock_tables in
order to ignore the impending global read lock, which causes a
assertion because LOCK_open is being hold. Also dropping the
lock must not signal to any threads that the table has been
relinquished (related to the locking/flushing protocol).

The solution is to correct the way the table is reopenned
and the locks grabbed. When reopening the table and under
LOCK TABLES, the table version should be set to 0 so other
threads have to wait for the table. When grabbing the lock,
any other flush should be ignored because it's theoretically
a atomic operation. The chosen solution also fixes a potential
discrepancy between binlog and GRL (global read lock) because
table placeholders were being ignored, now a FLUSH TABLES WITH
READ LOCK will properly for table with open placeholders.

It's also important to mention that this patch doesn't fix
a potential deadlock if one uses two GRLs under LOCK TABLES
concurrently.
2007-12-12 19:44:14 -02:00
istruewing@stella.local
8506efa91e Merge stella.local:/home2/mydev/mysql-5.0-axmrg
into  stella.local:/home2/mydev/mysql-5.1-axmrg
2007-12-12 19:52:52 +01:00
istruewing@stella.local
9217f01136 Dummy push to help pushbuild running again.
Fixed case of comment.
2007-12-12 19:49:08 +01:00
dkatz@damien-katzs-computer.local
ed00d6955a Merge bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  damien-katzs-computer.local:/Users/dkatz/mysql-5.1-runtime
2007-12-12 13:14:02 -05:00
dkatz@damien-katzs-computer.local
9a2b51d34a Bug #29993 Default value of log_output should be 'FILE', not 'TABLE'
Ensure default logging is "file" logging, for additional ways the option can be turned on. Verified on OS X, but not tested automatically.
2007-12-12 13:05:32 -05:00
kostja@bodhi.(none)
657ce57e4e Merge bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  bodhi.(none):/opt/local/work/mysql-5.1-12713-1
2007-12-12 18:36:10 +03:00
kostja@bodhi.(none)
ebb9c5d983 Bug#12713 "Error in a stored function called from a SELECT doesn't
cause ROLLBACK of statement", part 1. Review fixes.

Do not send OK/EOF packets to the client until we reached the end of 
the current statement.
This is a consolidation, to keep the functionality that is shared by all 
SQL statements in one place in the server.
Currently this functionality includes:
- close_thread_tables()
- log_slow_statement().

After this patch and the subsequent patch for Bug#12713, it shall also include:
- ha_autocommit_or_rollback()
- net_end_statement()
- query_cache_end_of_result().

In future it may also include:
- mysql_reset_thd_for_next_command().
2007-12-12 18:21:01 +03:00
kostja@bodhi.(none)
685f114368 Merge bodhi.(none):/opt/local/work/mysql-5.0-runtime
into  bodhi.(none):/opt/local/work/mysql-5.1-runtime
2007-12-12 06:05:14 +03:00
kostja@bodhi.(none)
90ce3a011e Merge bk-internal.mysql.com:/home/bk/mysql-5.1
into  bodhi.(none):/opt/local/work/mysql-5.1-runtime
2007-12-12 06:04:21 +03:00
kostja@bodhi.(none)
4c83efbb95 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  bodhi.(none):/opt/local/work/mysql-5.0-runtime
2007-12-12 06:00:10 +03:00
istruewing@stella.local
94c74110d9 Merge stella.local:/home2/mydev/mysql-5.0-axmrg
into  stella.local:/home2/mydev/mysql-5.1-axmrg
2007-12-11 23:59:16 +01:00
istruewing@stella.local
a7c4af78dc Merge stella.local:/home2/mydev/mysql-5.1-amain
into  stella.local:/home2/mydev/mysql-5.1-axmrg
2007-12-11 23:58:38 +01:00
istruewing@stella.local
9b0ab3fc0f Merge stella.local:/home2/mydev/mysql-5.1-ateam
into  stella.local:/home2/mydev/mysql-5.1-axmrg
2007-12-11 23:57:57 +01:00
dkatz@damien-katzs-computer.local
4abafe2617 Bug #30651 Problems with thread_handling system variable
Changed thread_handling variable to a global only, read only variable, as it is currently used.
2007-12-11 17:30:42 -05:00
istruewing@stella.local
fb93ba7a08 Merge stella.local:/home2/mydev/mysql-5.0-amain
into  stella.local:/home2/mydev/mysql-5.0-axmrg
2007-12-11 23:18:14 +01:00
istruewing@stella.local
34b317c883 Merge stella.local:/home2/mydev/mysql-5.0-axmrg
into  stella.local:/home2/mydev/mysql-5.1-axmrg
2007-12-11 21:38:50 +01:00
istruewing@stella.local
65fda831ce Merge stella.local:/home2/mydev/mysql-5.1-bug30273
into  stella.local:/home2/mydev/mysql-5.1-axmrg
2007-12-11 21:38:08 +01:00
istruewing@stella.local
03d99c5956 Merge stella.local:/home2/mydev/mysql-5.1-amain
into  stella.local:/home2/mydev/mysql-5.1-axmrg
2007-12-11 21:37:33 +01:00
df@pippilotta.erinye.com
bcb3c304ff Merge pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.0
into  pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.1
2007-12-11 17:41:11 +01:00
df@pippilotta.erinye.com
de716f1f86 No we're still at 5.0.54. 2007-12-11 17:38:49 +01:00
istruewing@stella.local
ba2d58ae5e Merge stella.local:/home2/mydev/mysql-5.0-amain
into  stella.local:/home2/mydev/mysql-5.0-axmrg
2007-12-11 17:09:43 +01:00
istruewing@stella.local
55aa6376f1 Bug#30273 - merge tables: Can't lock file (errno: 155)
The patch for Bug 26379 (Combination of FLUSH TABLE and
REPAIR TABLE corrupts a MERGE table) fixed this bug too.
However it revealed a new bug that crashed the server.

Flushing a merge table at the moment when it is between open
and attach of children crashed the server.

The flushing thread wants to abort locks on the flushed table.
It calls ha_myisammrg::lock_count() and ha_myisammrg::store_lock()
on the TABLE object of the other thread.

Changed ha_myisammrg::lock_count() and ha_myisammrg::store_lock()
to accept non-attached children. ha_myisammrg::lock_count() returns
the number of MyISAM tables in the MERGE table so that the memory
allocation done by get_lock_data() is done correctly, even if the
children become attached before ha_myisammrg::store_lock() is
called. ha_myisammrg::store_lock() will not return any lock if the
children are not attached.

This is however a change in the handler interface. lock_count()
can now return a higher number than store_lock() stores locks.
This is more safe than the reverse implementation would be.
get_lock_data() in the SQL layer is adjusted accordingly. It sets
MYSQL_LOCK::lock_count based on the number of locks returned by
the handler::store_lock() calls, not based on the numbers returned
by the handler::lock_count() calls. The latter are only used for
allocation of memory now.

No test case. The test suite cannot reliably run FLUSH between
lock_count() and store_lock() of another thread. The bug report
contains a program that can repeat the problem with some
probability.
2007-12-11 15:32:10 +01:00
mattiasj@witty.
749ded6feb Merge witty.:/Users/mattiasj/clones/mysql-5.1-bug32948
into  witty.:/Users/mattiasj/clones/51_push32948
2007-12-11 11:15:30 +01:00
thek@adventure.(none)
8651e9dddf Merge adventure.(none):/home/thek/Development/cpp/mysql-5.0-runtime
into  adventure.(none):/home/thek/Development/cpp/mysql-5.1-runtime
2007-12-10 16:47:45 +01:00
thek@adventure.(none)
7be4b6b5f4 Test fails because of non deterministric function: show grants for current_user() 2007-12-10 16:16:21 +01:00
df@pippilotta.erinye.com
ffa270d616 after-merge fix 2007-12-10 12:21:02 +01:00
thek@adventure.(none)
0f1665da3c Merge adventure.(none):/home/thek/Development/cpp/bug27440/my50-bug27440
into  adventure.(none):/home/thek/Development/cpp/mysql-5.0-runtime
2007-12-10 12:19:48 +01:00
df@pippilotta.erinye.com
42945c7726 Merge pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.0-build
into  pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.1-build
2007-12-10 12:16:41 +01:00
thek@adventure.(none)
dfda7855f4 Merge adventure.(none):/home/thek/Development/cpp/bug27440/my51-bug27440
into  adventure.(none):/home/thek/Development/cpp/mysql-5.1-runtime
2007-12-10 12:14:52 +01:00
df@pippilotta.erinye.com
a079cb9f49 Merge pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.0-release
into  pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.0-build
2007-12-10 12:02:02 +01:00
df@pippilotta.erinye.com
9455fafe1b Merge pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.0-build
into  pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.1-build
2007-12-10 10:53:44 +01:00
df@pippilotta.erinye.com
efd74cb680 Merge pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-4.1-build
into  pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.0-build
2007-12-10 10:52:05 +01:00
df@pippilotta.erinye.com
3f79b0f108 Merge pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.1
into  pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.1-build
2007-12-10 10:46:00 +01:00
df@pippilotta.erinye.com
45c93a5866 Merge pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.0
into  pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.0-build
2007-12-10 10:42:58 +01:00
df@pippilotta.erinye.com
353cd3300a Merge pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-4.1
into  pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-4.1-build
2007-12-10 10:41:34 +01:00
thek@adventure.(none)
049ea31436 Merge adventure.(none):/home/thek/Development/cpp/bug27440/my50-bug27440
into  adventure.(none):/home/thek/Development/cpp/bug27440/my51-bug27440
2007-12-10 10:32:07 +01:00
dkatz@damien-katzs-computer.local
71160422ee Bug#29830 Test case 'events_scheduling' fails on Mac OS X and Windows.
Change LAST_EXECUTED time the execution start time, instead of the execution completion time. This ensures the END time always the same or later than the LAST_EXECUTED time.
2007-12-07 19:27:45 -05:00
tsmith@ramayana.hindu.god
31a4940b3f Merge ramayana.hindu.god:/home/tsmith/m/bk/maint/50
into  ramayana.hindu.god:/home/tsmith/m/bk/maint/51
2007-12-07 15:04:45 -07:00
tsmith@ramayana.hindu.god
4eb097ba12 Add a way to remove options which mysql-test-run.pl no longer uses. 2007-12-07 14:43:31 -07:00
mleich@five.local.lan
4fc04761b9 Merge five.local.lan:/work/merge/mysql-5.1-build
into  five.local.lan:/work/merge/mysql-5.1-build-parts
2007-12-07 18:45:09 +01:00
thek@adventure.(none)
392cc185b3 Bug #27440 read_only allows create and drop database
When read_only option was enabled, a user without SUPER privilege could
perform CREATE DATABASE and DROP DATABASE operations.

This patch adds a check to make sure this isn't possible. It also attempts to 
simplify the logic used to determine if relevant tables are updated,
making it more human readable.
2007-12-07 15:39:41 +01:00
joerg@trift2.
72e382ecc7 Merge trift2.:/MySQL/M51/embedtest-5.1
into  trift2.:/MySQL/M51/push-5.1
2007-12-07 15:02:31 +01:00
joerg@trift2.
151504a3d0 Makefile.am
Makefile syntax error, comment should precede the whole target.
2007-12-07 14:46:52 +01:00
joerg@trift2.
74799dc453 Merge trift2.:/MySQL/M50/push-5.0
into  trift2.:/MySQL/M51/push-5.1
2007-12-07 13:54:56 +01:00