Commit graph

36929 commits

Author SHA1 Message Date
jonas@perch.ndb.mysql.com
6285f743b3 Merge perch.ndb.mysql.com:/home/jonas/src/41-work
into  perch.ndb.mysql.com:/home/jonas/src/50-work
2006-08-04 10:16:42 +02:00
jonas@perch.ndb.mysql.com
8a825e3cfa ndb - bug#21400
Fix docs for NdbOpertation::sub_reg
2006-08-04 09:43:23 +02:00
jonas@perch.ndb.mysql.com
fe87ad292f Merge perch.ndb.mysql.com:/home/jonas/src/41-work
into  perch.ndb.mysql.com:/home/jonas/src/50-work
2006-08-04 08:41:50 +02:00
jonas@perch.ndb.mysql.com
9bf1aec1c4 ndb - bug#20296 (recommit in 4.1)
Make sure that tupkeyErrorLab is run if interpretedUpdate(fail), so that entry is not inserted into index.
     Yeilding crash on following dml on tupel
2006-08-04 08:41:32 +02:00
tsmith@maint1.mysql.com
a4eb61b88c Merge bk-internal:/home/bk/mysql-5.1-new-maint
into  maint1.mysql.com:/data/localhome/tsmith/bk/mrg51-c
2006-08-04 00:40:30 +02:00
kostja@bodhi.local
2f9a6c7c4b Add my_memmem.c to mysys.dsp (needed by mysql_client_test) 2006-08-04 01:41:21 +04:00
kostja@bodhi.local
12051070a7 Fix a bug in the .dsp file. Ignore a symlink. 2006-08-04 00:00:48 +04:00
msvensson@neptunus.(none)
f2aa07f80d Merge bk-internal:/home/bk/mysql-5.1-new-maint
into  neptunus.(none):/home/msvensson/mysql/mysql-5.1-new-maint
2006-08-03 21:25:28 +02:00
jimw@rama.(none)
47f71efe0f Merge rama.(none):/home/jimw/my/mysql-5.1-17122
into  rama.(none):/home/jimw/my/mysql-5.1-clean
2006-08-03 11:12:48 -07:00
tsmith@maint1.mysql.com
d6c4c3bad2 Manual merge resolve, part 6 of 6+ 2006-08-03 19:43:52 +02:00
msvensson@neptunus.(none)
34d48ce10a Use "--source" command instead of "source", makes mysql-test-run.pl dtecte this as test case that need binlog format row. 2006-08-03 19:35:00 +02:00
tsmith@maint1.mysql.com
e0b9910728 Merge maint1.mysql.com:/data/localhome/tsmith/bk/mrg51-a
into  maint1.mysql.com:/data/localhome/tsmith/bk/mrg51-c
2006-08-03 19:28:20 +02:00
petr/cps@mysql.com/owlet.
be2ce2614b Fix Bug #18559 "log tables cannot change engine, and
gets deadlocked when dropping w/ log on"

Log tables rely on concurrent insert machinery to add data.
This means that log tables are always opened and locked by
special (artificial) logger threads. Because of this, the thread
which tries to drop a log table starts to wait for the table
to be unlocked. Which will happen only if the log table is disabled.
Alike situation happens if one tries to alter a log table.
However in addition to the problem above, alter table calls
check_if_locking_is_allowed() routine for the engine. The
routine does not allow alter for the log tables. So, alter
doesn't start waiting forever for logs to be disabled, but 
returns with an error.
Another problem is that not all engines could be used for
the log tables. That's because they need concurrent insert.

In this patch we:
(1) Explicitly disallow to drop/alter a log table if it
    is currently used by the logger.
(2) Update MyISAM to support log tables
(3) Allow to drop log tables/alter log tables if log is
    disabled
At the same time we (4) Disallow to alter log tables to
unsupported engine (after this patch CSV and MyISAM are 
alowed)
Recommit with review fixes.
2006-08-03 21:28:15 +04:00
tsmith@maint1.mysql.com
b9ac526884 5.0 -> 5.1 manual merge, part 5 of 5 (or more?) 2006-08-03 19:27:00 +02:00
msvensson@neptunus.(none)
fbad0da826 Replace FEDERATED_EQ with STRING_WITH_LEN("=") 2006-08-03 19:15:55 +02:00
msvensson@neptunus.(none)
62e553c1c5 Merge neptunus.(none):/home/msvensson/mysql/my51-m-bug20942
into  neptunus.(none):/home/msvensson/mysql/mysql-5.1-new-maint
2006-08-03 19:10:18 +02:00
msvensson@neptunus.(none)
b9b2ef9cfb Make test case for bug#21215repeateble by calling "reset master" 2006-08-03 16:47:24 +02:00
msvensson@neptunus.(none)
ac4e03a315 Update result after merge, since the function Item::tmp_table_field_from_field_type()
now takes mbmaxlen into account when calculating max_length of new field.
2006-08-03 15:48:28 +02:00
jonas@perch.ndb.mysql.com
cb9f224a1f ndb - bug#21384
merge 4.1->5.0 (variable rename)
2006-08-03 15:38:04 +02:00
petr/cps@mysql.com/owlet.
7aec120549 Fix Bug #20139 Infinite loop after "FLUSH" and "LOCK tabX, general_log"
Due to incorrect handling of FLUSH TABLES, log tables were marked for flush,
but not reopened. Later we started to wait for the log table to be closed
(disabled) after the flush. And as nobody disabled logs in concurrent treads,
the command lasted forever.
After internal consultations it was decided to skip logs during FLUSH TABLES.
The reasoning is that logging is done in the "log device", whatever it is
which is always active and controlled by FLUSH LOGS. So, to flush logs
one should use FLUSH LOGS, and not FLUSH TABLES.
2006-08-03 17:23:37 +04:00
jonas@perch.ndb.mysql.com
ff9a106b24 ndb - bug#20892
Correction of bug#19852 (that also revealed another bug)
  Do grow noOfPagesToGrow with more than was actually allocated
2006-08-03 14:46:11 +02:00
jonas@perch.ndb.mysql.com
7d5a9b8df0 Merge perch.ndb.mysql.com:/home/jonas/src/41-work
into  perch.ndb.mysql.com:/home/jonas/src/50-work
2006-08-03 14:02:39 +02:00
jonas@perch.ndb.mysql.com
cfd29d00d2 ndb - bug#20892
Fix bug in tup buddy allocator, which made it make invalid access to cfreepagelist[16] (which is not defined)
2006-08-03 14:01:37 +02:00
svoj@may.pils.ru
34c83fba8d Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-4.1
into  may.pils.ru:/home/svoj/devel/mysql/BUG7391/mysql-4.1
2006-08-03 15:49:41 +05:00
msvensson@neptunus.(none)
5fc215e2e3 Bug#21419 test case lowercase_fs_off fails on Windows
- Backport patch from 5.0
2006-08-03 12:16:24 +02:00
msvensson@neptunus.(none)
10a7b8cedf Merge neptunus.(none):/home/msvensson/mysql/mysql-5.0
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-08-03 12:11:07 +02:00
msvensson@neptunus.(none)
61c5d97309 Remove double error printout in mysqldump 2006-08-03 12:09:22 +02:00
msvensson@neptunus.(none)
c71ac0efa6 Merge neptunus.(none):/home/msvensson/mysql/my41-bug21218
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-08-03 11:59:57 +02:00
msvensson@neptunus.(none)
83167f06a3 Merge neptunus.(none):/home/msvensson/mysql/my41-bug21218
into  neptunus.(none):/home/msvensson/mysql/mysql-4.1
2006-08-03 11:57:52 +02:00
msvensson@neptunus.(none)
743948404a Merge neptunus.(none):/home/msvensson/mysql/my50-m-bug21215
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0
2006-08-03 11:48:08 +02:00
svoj@may.pils.ru
395d3c3985 Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-4.1
into  may.pils.ru:/home/svoj/devel/mysql/BUG7391/mysql-4.1
2006-08-03 14:08:43 +05:00
svoj@may.pils.ru
67db270c71 BUG#7391 - Cross-database multi-table UPDATE uses active database
privileges

This problem is 4.1 specific. It doesn't affect 4.0 and was fixed
in 5.x before.

Having any mysql user who is allowed to issue multi table update
statement and any column/table grants, allows this user to update
any table on a server (mysql grant tables are not exception).

check_grant() accepts number of tables (in table list) to be checked
in 5-th param. While checking grants for multi table update, number
of tables must be 1. It must never be 0 (actually we have
DBUG_ASSERT(number > 0) in 5.x in grant_check() function).
2006-08-03 14:03:08 +05:00
tsmith@maint1.mysql.com
cc4a6e0015 5.0 -> 5.1 manual merge, part 4 of 4 (or more?) 2006-08-03 10:48:01 +02:00
tsmith@maint1.mysql.com
8e0cc34af4 Merge maint1.mysql.com:/data/localhome/tsmith/bk/mrg50-c
into  maint1.mysql.com:/data/localhome/tsmith/bk/mrg51-c
2006-08-03 10:41:14 +02:00
tsmith@maint1.mysql.com
06060fd602 Merge maint1.mysql.com:/data/localhome/tsmith/bk/mrg50-b
into  maint1.mysql.com:/data/localhome/tsmith/bk/mrg51-b
2006-08-03 10:18:04 +02:00
tsmith@maint1.mysql.com
242ed711d2 5.0 -> 5.1 manual merge, part 1 of 3 (or more?) 2006-08-03 10:04:25 +02:00
msvensson@neptunus.(none)
1572beadcd Removing disabling of lowercase_fs_off 2006-08-03 09:48:42 +02:00
msvensson@neptunus.(none)
7280f63100 Merge neptunus.(none):/home/msvensson/mysql/mysql-5.0
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-08-03 09:32:58 +02:00
ingo/istruewing@chilla.local
ff32920719 Bug#18775 - Temporary table from alter table visible to other threads
New test cases. Names with umlauts don't compare well on Windows.
2006-08-03 08:12:56 +02:00
jimw@rama.(none)
9d67aacead Merge rama.(none):/home/jimw/my/mysql-5.0-19147
into  rama.(none):/home/jimw/my/mysql-5.0-16502
2006-08-02 19:52:11 -07:00
jimw@rama.(none)
41956bee4f Merge rama.(none):/home/jimw/my/mysql-5.0-16881
into  rama.(none):/home/jimw/my/mysql-5.0-16502
2006-08-02 19:51:34 -07:00
jimw@rama.(none)
95b3b2ea8d Merge bk-internal:/home/bk/mysql-5.0-maint
into  rama.(none):/home/jimw/my/mysql-5.0-16502
2006-08-02 19:48:12 -07:00
cmiller@zippy.cornsilk.net
dd5eeaf676 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into  zippy.cornsilk.net:/home/cmiller/work/mysql/m41-maint--07OBQ
2006-08-02 14:57:12 -04:00
kostja@bodhi.local
35af3d5578 Disable a failing test case (filed a p1 bug) 2006-08-02 22:21:12 +04:00
kostja@bodhi.local
1b145118b9 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  bodhi.local:/opt/local/work/mysql-5.0-runtime-merge
2006-08-02 21:54:10 +04:00
cmiller@zippy.cornsilk.net
c9f64f71c8 Bug#9719: DELETE with WHERE on HEAP table just deletes first row of matched
set.

(Ramil's patch, recreated.)
2006-08-02 13:06:59 -04:00
ingo/istruewing@chilla.local
c8ad865ffe Bug#18775 - Temporary table from alter table visible to other threads
Reverting part of the patch. NDB has unencoded names in their
data dictionary.
2006-08-02 18:39:21 +02:00
ingo/istruewing@chilla.local
c20030ef26 Merge istruewing@bk-internal.mysql.com:/home/bk/mysql-5.1-engines
into  chilla.local:/home/mydev/mysql-5.1-bug18775
2006-08-02 18:10:51 +02:00
ingo/istruewing@chilla.local
8e4c36ad4a Bug#18775 - Temporary table from alter table visible to other threads
Continued implementation of WL#1324 (table name to filename encoding)

The intermediate (not temporary) files of the new table
during ALTER TABLE was visible for SHOW TABLES. These
intermediate files are copies of the original table with
the changes done by ALTER TABLE. After all the data is
copied over from the original table, these files are renamed 
to the original tables file names. So they are not temporary 
files. They persist after ALTER TABLE, but just with another 
name.

In 5.0 the intermediate files are invisible for SHOW TABLES
because all file names beginning with "#sql" were suppressed.

This failed since 5.1.6 because even temporary table names were
converted when making file names from them. The prefix became
converted to "@0023sql". Converting the prefix during SHOW TABLES
would suppress the listing of user tables that start with "#sql".

The solution of the problem is to continue the implementation of
the table name to file name conversion feature. One requirement
is to suppress the conversion for temporary table names.

This change is straightforward for real temporary tables as there
is a function that creates temporary file names.

But the generated path names are located in TMPDIR and have no
relation to the internal table name. This cannot be used for
ALTER TABLE. Its intermediate files need to be in the same
directory as the old table files. And it is necessary to be
able to deduce the same path from the same table name repeatedly.

Consequently the intermediate table files must be handled like normal
tables. Their internal names shall start with tmp_file_prefix
(#sql) and they shall not be converted like normal table names.

I added a flags parameter to all relevant functions that are
called from ALTER TABLE. It is used to suppress the conversion
for the intermediate table files.

The outcome is that the suppression of #sql in SHOW TABLES
works again. It does not suppress user tables as these are
converted to @0023sql on file level.

This patch does also fix ALTER TABLE ... RENAME, which could not 
rename a table with non-ASCII characters in its name.

It does also fix the problem that a user could create a table like
`#sql-xxxx-yyyy`, where xxxx is mysqld's pid and yyyy is the thread
ID of some other thread, which prevented this thread from running 
ALTER TABLE.

Some of the above problems are mentioned in Bug 1405, which can
be closed with this patch.

This patch does also contain some minor fixes for other forgotten
conversions. Still known problems are reported as bugs 21370,
21373, and 21387.
2006-08-02 17:57:06 +02:00
kostja@bodhi.local
3d3bf24a93 A post-merge fix. 2006-08-02 19:39:47 +04:00