1
0
mirror of https://github.com/MariaDB/server.git synced 2025-11-03 14:33:32 +03:00
Commit Graph

22631 Commits

Author SHA1 Message Date
ramil/ram@ramil.myoffice.izhnet.ru
017ba8dadb Merge mysql.com:/home/ram/work/mysql-5.1-maint
into  mysql.com:/home/ram/work/b31604/b31604.5.1
2007-10-23 15:26:14 +05:00
ramil/ram@ramil.myoffice.izhnet.ru
c7528dff69 Merge mysql.com:/home/ram/work/b31349/b31349.5.0
into  mysql.com:/home/ram/work/b31349/b31349.5.1
2007-10-23 13:55:06 +05:00
ramil/ram@ramil.myoffice.izhnet.ru
a3bc9cd136 Merge mysql.com:/home/ram/work/mysql-5.1-maint
into  mysql.com:/home/ram/work/b31604/b31604.5.1
2007-10-23 13:54:40 +05:00
tsmith@ramayana.hindu.god
e347c1413a Merge ramayana.hindu.god:/home/tsmith/m/bk/51
into  ramayana.hindu.god:/home/tsmith/m/bk/maint/51
2007-10-22 14:32:22 -06:00
antony@pcg5ppc.xiphis.org
3b95727600 Merge anubis.xiphis.org:/usr/home/antony/work/mysql-5.1-engines
into  anubis.xiphis.org:/usr/home/antony/work/mysql-5.1-engines.merge
2007-10-19 13:06:37 -07:00
ramil/ram@mysql.com/ramil.myoffice.izhnet.ru
b4f558419f Fix for bug #31349: ERROR 1062 (23000): Duplicate entry '' for key 'group_key'
Problem: lying to the optimizer that a function (Item_func_inet_ntoa)
cannot return NULL values leads to unexpected results (in the case group
keys creation/comparison is broken). 

Fix: Item_func_inet_ntoa::maybe_null should be set properly.
2007-10-19 14:54:05 +05:00
malff@lambda.hsd1.co.comcast.net.
94b4f4a870 Merge malff@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.1-rt-merge
2007-10-18 19:21:07 -06:00
malff@lambda.hsd1.co.comcast.net.
2d6fbbda59 Merge lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.1-base
into  lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.1-rt-merge
2007-10-18 16:57:51 -06:00
davi@moksha.com.br
3b44d6e8b9 Merge moksha.com.br:/Users/davi/mysql/bugs/21557-5.1
into  moksha.com.br:/Users/davi/mysql/mysql-5.1-runtime
2007-10-18 15:47:22 -03:00
davi@moksha.com.br
dd135211d8 Bug#21557 entries in the general query log truncated at 1000 characters.
The general log write function (general_log_print) uses printf style
arguments which need to be pre-processed, meaning that the all arguments
are copied to a single buffer and the problem is that the buffer size is
constant (1022 characters) but queries can be much larger then this.

The solution is to introduce a new log write function that accepts a
buffer and it's length as arguments. The function is to be used when
a formatted output is not required, which is the case for almost all
query write-to-log calls.

This is a incompatible change with respect to the log format of prepared
statements.
2007-10-18 15:45:07 -03:00
istruewing@stella.local
672290b03d Bug#31692 - binlog_killed.test crashes sometimes
The server crashed when a thread was killed while locking the
general_log table at statement begin.

The general_log table is handled like a performance schema table.
The state of open tables is saved and cleared so that this table
seems to be the only open one. Then this table is opened and locked.
After writing, the table is closed and the open table state is
restored. Before restoring, however, it is asserted that there is
no current table open.

After locking the table, mysql_lock_tables() checks if the thread
was killed in between. If so, it unlocks the table and returns an
error. open_ltable() just returns with the error and leaves closing
of the table to close_thread_tables(), which is called at
statement end.

open_performance_schema_table() did not take this into account.
It assumed that a failed open_ltable() would not leave an open
table behind.

Fixed by closing thread tables after open_ltable() and before
restore_backup_open_tables_state() if the thread was killed.

No test case. It requires correctly timed parallel execution.
Since this bug was detected by the test suite, it seems
dispensable to add another test.
2007-10-18 16:14:27 +02:00
kaa@polly.(none)
04b1c9ca40 Post-merge changes for bug #31207: Test "join_nested" shows different strategy on IA64 CPUs / Intel's ICC compiler. 2007-10-18 15:17:21 +04:00
kaa@polly.(none)
97226f1027 Merge polly.(none):/home/kaa/src/maint/mysql-5.0-maint
into  polly.(none):/home/kaa/src/maint/mysql-5.1-maint
2007-10-18 14:32:43 +04:00
kaa@polly.(none)
3af902ec47 Merge polly.(none):/home/kaa/src/maint/bug31207/my50-bug31174
into  polly.(none):/home/kaa/src/maint/mysql-5.0-maint
2007-10-18 13:47:35 +04:00
kaa@polly.(none)
6d1f3e8de5 Fix for bug #31207: Test "join_nested" shows different strategy on IA64
CPUs / Intel's ICC compile

The bug is a combination of two problems:

1. IA64/ICC MySQL binaries use glibc's qsort(), not the one in mysys.

2. The order relation implemented by join_tab_cmp() is not transitive,
i.e. it is possible to choose such a, b and c that (a < b) && (b < c)
but (c < a). This implies that result of a sort using the relation
implemented by join_tab_cmp() depends on the order in which
elements are compared, i.e. the result is implementation-specific. Since
choose_plan() uses qsort() to pre-sort the
join tables using join_tab_cmp() as a compare function, the results of
the sorting may vary depending on qsort() implementation.

It is neither possible nor important to implement a better ordering
algorithm in join_tab_cmp(). Therefore the only way to fix it is to
force our own qsort() to be used by renaming it to my_qsort(), so we don't depend
on linker to decide that.

This patch also "fixes" bug #20530: qsort redefinition violates the
standard.
2007-10-17 20:08:58 +04:00
anozdrin/alik@station.
49a0f09bbf Fix for BUG#24923: Functions with ENUM issues.
The problem was that the RETURNS column in the mysql.proc was of
CHAR(64). That was not enough for storing long-named datatypes.

The fix is to change CHAR(64) to LONGBLOB, and to throw warnings
at the time a stored routine is created if some data is truncated
during writing into mysql.proc.
2007-10-17 12:13:56 +04:00
malff@lambda.hsd1.co.comcast.net.
ee3e6d8171 Manual merge of 5.0-runtime to 5.1-runtime 2007-10-16 20:47:08 -06:00
malff@lambda.hsd1.co.comcast.net.
a4c66084a8 Merge lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.0-runtime
into  lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.1-rt-merge
2007-10-16 15:43:16 -06:00
malff@lambda.hsd1.co.comcast.net.
f3a6483945 Fixed broken call to my_error 2007-10-16 14:27:20 -06:00
malff@lambda.hsd1.co.comcast.net.
f8d262216c Merge malff@bk-internal.mysql.com:/home/bk/mysql-5.0-runtime
into  lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.0-28318-rework
2007-10-16 11:17:27 -06:00
malff@lambda.hsd1.co.comcast.net.
a9c6ed46e2 Implementing code review comments 2007-10-16 11:16:31 -06:00
thek@adventure.(none)
b6c7a4b6b2 Merge kpettersson@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  adventure.(none):/home/thek/Development/cpp/mysql-5.1-runtime
2007-10-16 14:45:52 +02:00
thek@adventure.(none)
8c86e79aa3 Bug#30710 query_cache.test fails on embedded - per-column privs test
The embedded version of the server doesn't use column level grants, and 
the compile directive NO_EMBEDDED_ACCESS_CHECKS should be checked instead of
the redundant HAVE_QUERY_CACHE (which is always the case) to determine if 
column level grants should be compiled or not.
2007-10-16 14:42:42 +02:00
ramil/ram@mysql.com/ramil.myoffice.izhnet.ru
3d2f493fb4 Fix bug #31604: server crash when setting slow_query_log_file/global general_log_file variable
Problem: we don't evaluate given expression checking values of the
slow_query_log_file/general_log_file, don't check it for NULL.

Fix: evaluate the expression, check result returned.
2007-10-16 17:19:07 +05:00
malff@lambda.hsd1.co.comcast.net.
99a270ba0f Bug#28318 (CREATE FUNCTION (UDF) requires a schema) -- part II
The root cause of the issue was that the CREATE FUNCTION grammar,
for User Defined Functions, was using the sp_name rule.
The sp_name rule is intended for fully qualified stored procedure names,
like either ident.ident, or just ident but with a default database
implicitly selected.

A UDF does not have a fully qualified name, only a name (ident), and should
not use the sp_name grammar fragment during parsing.

The fix is to re-organize the CREATE FUNCTION grammar, to better separate:
- creating UDF (no definer, can have AGGREGATE, simple ident)
- creating Stored Functions (definer, no AGGREGATE, fully qualified name)

With the test case provided, another issue was exposed which is also fixed:
the DROP FUNCTION statement was using sp_name and also failing when no database
is implicitly selected, when droping UDF functions.
The fix is also to change the grammar so that DROP FUNCTION works with
both the ident.ident syntax (to drop a stored function), or just the ident
syntax (to drop either a UDF or a Stored Function, in the current database)
2007-10-15 19:15:38 -06:00
dkatz@damien-katzs-computer.local
223536e526 fix problem caused by previous submission for bugs BUG#29589 BUG#29772 2007-10-15 15:53:39 -04:00
dkatz@damien-katzs-computer.local
53aeee3a0d Merge bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  damien-katzs-computer.local:/Users/dkatz/mysql-5.1-runtime
2007-10-15 13:25:12 -04:00
dkatz@damien-katzs-computer.local
f721a6f610 Merge bk-internal.mysql.com:/home/bk/mysql-5.0-runtime
into  damien-katzs-computer.local:/Users/dkatz/mysql-5.0-runtime
2007-10-15 13:23:16 -04:00
kostja@bodhi.(none)
1c9e362f75 Add comments, tidy up sql_delete.cc to refer to thd->row_count_func
explicitly.
2007-10-15 16:42:41 +04:00
kostja@bodhi.(none)
5cda50307f Fix broken compilation. 2007-10-15 15:49:16 +04:00
kostja@bodhi.(none)
227e13c4ca Remove an unused variable that was there since the first implementation
of the stored procedure cursors (materialized on disk).
2007-10-15 15:45:20 +04:00
ramil/ram@ramil.myoffice.izhnet.ru
71775c2432 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-5.0-maint
into  mysql.com:/home/ram/work/b31154/b31154.5.0
2007-10-15 10:28:58 +05:00
ramil/ram@ramil.myoffice.izhnet.ru
4c94aaa3b4 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-5.1-maint
into  mysql.com:/home/ram/work/b31154/b31154.5.1
2007-10-15 10:21:22 +05:00
ramil/ram@ramil.myoffice.izhnet.ru
b3d7188639 Merge mysql.com:/home/ram/work/b31154/b31154.5.0
into  mysql.com:/home/ram/work/b31154/b31154.5.1
2007-10-15 09:44:22 +05:00
davi@moksha.com.br
0dce64d635 Merge bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  moksha.com.br:/Users/davi/mysql/mysql-5.1-runtime
2007-10-12 11:03:10 -03:00
davi@moksha.com.br
abdd328374 Merge moksha.com.br:/Users/davi/mysql/bugs/post-rename-5.0
into  moksha.com.br:/Users/davi/mysql/mysql-5.0-runtime
2007-10-12 10:56:59 -03:00
davi@moksha.com.br
0eea821636 Merge moksha.com.br:/Users/davi/mysql/bugs/post-rename-5.0
into  moksha.com.br:/Users/davi/mysql/mysql-5.1-runtime
2007-10-12 10:56:50 -03:00
davi@moksha.com.br
b92f3309f1 Bug#31409 RENAME TABLE causes server crash or deadlock when used with HANDLER statements
If mysql_lock_tables fails because the lock was aborted, we need to
reset thd->some_tables_delete, otherwise we might loop indefinitely
because handler's tables are not closed in a standard way, meaning
that close_thread_tables() (which resets some_tables_deleted) is not
used.

This patch fixes sporadical failures of handler_myisam/innodb tests
which were introduced by previous fix for this bug.
2007-10-12 10:55:46 -03:00
tnurnberg@sin.intern.azundris.com
fa942cf8d0 Merge tnurnberg@bk-internal.mysql.com:/home/bk/mysql-5.0-maint
into  sin.intern.azundris.com:/home/tnurnberg/30821/50-30821
2007-10-12 11:30:53 +02:00
tnurnberg@sin.intern.azundris.com
5c21619b3a Bug#30821: setting --tc_heuristic_recover tries to set myisam_stats_method
Options to mysqld were not processed correctly because switch statement
was missing some "break"s. CS adds them.

No test case; would require .opt file and server restart. Manually tested.
2007-10-12 11:23:45 +02:00
malff/marcsql@weblab.(none)
fd2bc98871 Merge malff@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  weblab.(none):/home/marcsql/TREE/mysql-5.1-27858-b
2007-10-11 17:58:32 -06:00
malff/marcsql@weblab.(none)
6428dacd44 Bug#27858 (Failing to log to a log table doesn't log anything to error log)
Before this patch, failures to write to the log tables (mysql.slow_log
and mysql.general_log) were improperly printed (the time was printed twice),
or not printed at all.

With this patch, failures to write to the log tables is reported in the
error log, for all cases of failures.
2007-10-11 17:55:18 -06:00
davi@moksha.com.br
2adf38c12e Bug#29223 declare cursor c for SHOW .....
"DECLARE CURSOR FOR SHOW ..." is a syntax that currently appears to work,
but is untested for some SHOW commands and does not work for other SHOW
commands.

Since this is an un-intended feature that leaked as a result of a coding bug
(in the parser grammar), the correct fix is to fix the grammar to not accept
this construct.

In other words, "DECLARE CURSOR FOR SHOW <other commands that don't work>"
is not considered a bug, and we will not implement other features to make all
the SHOW commands usable inside a cursor just because someone exploited a bug.
2007-10-11 17:38:40 -03:00
anozdrin/alik@station.
7237c31698 A patch for BUG#31418: User locks misfunctioning after
mysql_change_user().

The problem was that THD::ull was not reset in THD::cleanup().

The fix is to reset it.
2007-10-11 17:11:12 +04:00
ramil/ram@mysql.com/ramil.myoffice.izhnet.ru
84d1e3f8f0 Fix for bug #31154: field.h:1649: virtual int Field_bit::cmp(const uchar*, const uchar*): Assertion
Problem: GROUP_CONCAT(DISTINCT BIT_FIELD...) uses a tree to store keys;
which are constructed using a temporary table fields,
see Item_func_group_concat::setup().
As a) we don't store null bits in the tree where the bit fields store parts 
of their data and b) there's no method to properly compare two table records
we've got problem.

Fix: convert BIT fields to INT in the temporary table used.
2007-10-11 17:20:34 +05:00
davi@moksha.com.br
9f088628eb Merge moksha.com.br:/Users/davi/mysql/mysql-5.0-runtime
into  moksha.com.br:/Users/davi/mysql/bugs/31409-5.1
2007-10-10 21:16:53 -03:00
davi@moksha.com.br
2f946efda7 Mismerge broken 5.1-runtime compilation because do_command was defined
static but it's still used by another compilation unit.

Remove static qualifier from do_command definition.
2007-10-10 21:07:23 -03:00
davi@moksha.com.br
ed55fe3d96 Merge moksha.com.br:/Users/davi/mysql/mysql-5.0-runtime
into  moksha.com.br:/Users/davi/mysql/mysql-5.1-runtime
2007-10-10 19:44:12 -03:00
davi@moksha.com.br
f74f363aac Merge moksha.com.br:/Users/davi/mysql/bugs/21587-5.0
into  moksha.com.br:/Users/davi/mysql/bugs/21587-5.1
2007-10-10 18:17:11 -03:00
tsmith@ramayana.hindu.god
06c6fce750 Merge ramayana.hindu.god:/home/tsmith/m/bk/51
into  ramayana.hindu.god:/home/tsmith/m/bk/maint/51
2007-10-10 14:15:09 -06:00