Commit graph

13461 commits

Author SHA1 Message Date
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
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
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
evgen@moonbone.local
7451ffcd0a Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-4.1
into  moonbone.local:/work/tmp_merge-4.1-opt-mysql
2006-08-02 18:16:05 +04:00
evgen@moonbone.local
83896aa8f6 Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  moonbone.local:/work/tmp_merge-5.0-opt-mysql
2006-08-02 18:11:59 +04:00
msvensson@neptunus.(none)
554b1f019b Merge neptunus.(none):/home/msvensson/mysql/mysql-5.1
into  neptunus.(none):/home/msvensson/mysql/mysql-5.1-new-maint
2006-08-02 15:45:03 +02:00
msvensson@neptunus.(none)
e6348e0277 Disable crash_commit_before waiting for a "crash()" function that won't generate a core. 2006-08-02 15:41:59 +02:00
evgen@moonbone.local
90f23a251a Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-4.1
into  moonbone.local:/work/tmp_merge-5.0-opt-mysql
2006-08-02 16:48:17 +04:00
evgen@moonbone.local
7f0a080660 Merge moonbone.local:/work/tmp_merge-4.1-opt-mysql
into  moonbone.local:/work/tmp_merge-5.0-opt-mysql
2006-08-02 16:46:55 +04:00
evgen@moonbone.local
67c85a170a Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0
into  moonbone.local:/work/tmp_merge-5.0-opt-mysql
2006-08-02 16:44:56 +04:00
evgen@moonbone.local
cac5ad03b9 Merge moonbone.local:/work/tmp_merge-4.1
into  moonbone.local:/work/tmp_merge-4.1-opt-mysql
2006-08-02 16:40:32 +04:00
svoj@may.pils.ru
6c6f435b03 BUG#14770 - LOAD DATA INFILE doesn't respect default values for
columns
Fixed confusing warning.

Quoting INSERT section of the manual:
----
Inserting NULL into a column that has been declared NOT NULL. For
multiple-row INSERT statements or INSERT INTO ... SELECT statements, the
column is set to the implicit default value for the column data type. This
is 0 for numeric types, the empty string ('') for string types, and the
"zero" value for date and time types. INSERT INTO ... SELECT statements are
handled the same way as multiple-row inserts because the server does not
examine the result set from the SELECT to see whether it returns a single
row. (For a single-row INSERT, no warning occurs when NULL is inserted into
a NOT NULL column. Instead, the statement fails with an error.)
----
This is also true for LOAD DATA INFILE. For INSERT user can specify
DEFAULT keyword as a value to set column default. There is no similiar
feature available for LOAD DATA INFILE.
2006-08-02 17:15:50 +05:00
evgen@moonbone.local
40a1fbdffb Merge moonbone.local:/work/tmp_merge-4.1
into  moonbone.local:/work/tmp_merge-4.1-opt-mysql
2006-08-02 16:10:52 +04:00
holyfoot/hf@mysql.com/deer.(none)
2119067eee Merge bk@192.168.21.1:mysql-4.1
into  mysql.com:/home/hf/work/mysql-4.1.20317
2006-08-02 16:57:46 +05:00
kostja@bodhi.local
4bfc67fc3c Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  bodhi.local:/opt/local/work/mysql-5.0-runtime-merge
2006-08-02 14:13:01 +04:00
holyfoot/hf@mysql.com/deer.(none)
f069fcdb11 Merge bk@192.168.21.1:mysql-5.0-kt
into  mysql.com:/home/hf/work/mysql-5.0.14807
2006-08-02 14:03:20 +05:00
msvensson@neptunus.(none)
502498ed7b Disable test case for for bug 21042 2006-08-02 08:46:58 +02:00
tsmith@maint1.mysql.com
438b94e204 .del-sp.test.orig:
Delete: mysql-test/t/sp.test.orig
2006-08-02 02:21:36 +02:00
evgen@sunlight.local
d6cf536d93 Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.1
into  sunlight.local:/local_work/tmp_merge-5.1-opt-mysql
2006-08-02 02:19:46 +04:00
msvensson@neptunus.(none)
31be565d2e Merge neptunus.(none):/home/msvensson/mysql/mysql-5.0
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-08-01 20:24:30 +02:00
evgen@sunlight.local
d4f92cbb5c Merge sunlight.local:/local_work/tmp_merge-5.0-opt-mysql
into  sunlight.local:/local_work/tmp_merge-5.1-opt-mysql
2006-08-01 20:52:21 +04:00
evgen@sunlight.local
a8405f650d func_str.result:
After merge fix
2006-08-01 18:55:44 +04:00
msvensson@neptunus.(none)
09a36146b8 Merge bk-internal:/home/bk/mysql-5.0-maint
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-08-01 15:22:54 +02:00
msvensson@neptunus.(none)
c1f0f4dc58 Add missing $ 2006-08-01 15:21:09 +02:00
igreenhoe@maint1.mysql.com
ff3a640e8f Merge igreenhoe@bk-internal.mysql.com:/home/bk/mysql-5.0-maint
into  maint1.mysql.com:/data/localhome/igreenhoe/mysql-5.0-maint
2006-08-01 13:04:48 +02:00
msvensson@neptunus.(none)
111513f09f Bug#21367 IM tests do not recognize "win2003-amd64" as Windows
- Disable Instance manager on Windows
2006-08-01 11:35:37 +02:00
msvensson@neptunus.(none)
e9b624df99 Change error code to test for "unknown error" with to 10000 2006-08-01 11:29:10 +02:00
gkodinov/kgeorge@rakia.(none)
8cf5a4c04e Merge gkodinov@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  rakia.(none):/home/kgeorge/mysql/autopush/B20103-5.0-opt
2006-08-01 11:17:14 +03:00
gkodinov/kgeorge@macbook.gmz
7b5e4ed026 Bug #20103: Escaping with backslash does not work
- make the client to respect the server-side 
   no_backslash_escapes option and disable the 
   special meaning of backslash also at client side.
2006-08-01 11:05:54 +03:00
bar@bar.intranet.mysql.r18.ru
b1b24507ab Merge abarkov@bk-internal.mysql.com:/home/bk/mysql-5.1-kt
into  mysql.com:/usr/home/bar/mysql-5.1.b20795
2006-08-01 12:47:38 +05:00
msvensson@neptunus.(none)
39130d15eb Merge neptunus.(none):/home/msvensson/mysql/my51-m-bug19535
into  neptunus.(none):/home/msvensson/mysql/mysql-5.1-new-maint
2006-08-01 09:33:00 +02:00
evgen@sunlight.local
dda7a95c59 Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.1-opt
into  sunlight.local:/local_work/tmp_merge-5.1-opt-mysql
2006-08-01 09:24:19 +04:00
evgen@sunlight.local
799ecc9f2a After merge fix 2006-08-01 08:49:43 +04:00