1
0
mirror of https://github.com/MariaDB/server.git synced 2025-11-10 23:02:54 +03:00
Commit Graph

26958 Commits

Author SHA1 Message Date
tomas@whalegate.ndb.mysql.com
fe46b09e3e remove memleak cased by dynamic variables being lost 2007-12-11 19:51:44 +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
hezx@hezx.(none)
a85e8a3f21 Merge hezx.(none):/media/hda5/work/mysql/bkroot/mysql-5.0-rpl
into  hezx.(none):/media/hda5/work/mysql/bkwork/bug#30998/5.0
2007-12-11 17:34:37 +08:00
tnurnberg@mysql.com/white.intern.koehntopp.de
3f0f275030 Bug#31990: MINUTE() and SECOND() return bogus results when used on a DATE
HOUR(), MINUTE(), ... returned spurious results when used on a DATE-cast.
This happened because DATE-cast object did not overload get_time() method
in superclass Item. The default method was inappropriate here and
misinterpreted the data.

Patch adds missing method; get_time() on DATE-casts now returns SQL-NULL
on NULL input, 0 otherwise. This coincides with the way DATE-columns
behave.

Also fixes similar bug in Date-Field now.
2007-12-11 10:12:05 +01:00
cmiller@zippy.cornsilk.net
a35a8fe550 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.0-community
2007-12-10 15:28:17 -05: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
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
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
tomas@whalegate.ndb.mysql.com
541db60153 Merge whalegate.ndb.mysql.com:/home/tomas/cge-5.1
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-new-ndb-merge
2007-12-10 10:32:21 +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
tomas@whalegate.ndb.mysql.com
ddbb4d425c Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb-merge
2007-12-10 10:31:51 +01:00
tomas@whalegate.ndb.mysql.com
9eb0ef8914 Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.1
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-new-ndb-merge
2007-12-10 10:26:01 +01:00
tnurnberg@mysql.com/white.intern.koehntopp.de
8651aeb2c4 Bug#32770: LAST_DAY() returns a DATE, but somehow internally keeps track of the TIME.
LAST_DAY() says it returns a DATE, not a DATETIME, but didn't zero the time fields.
Adapted from a patch kindly supplied by Claudio Cherubino.
2007-12-10 09:17:18 +01:00
tnurnberg@white.intern.koehntopp.de
d3889cac7c Merge tnurnberg@bk-internal.mysql.com:/home/bk/mysql-5.1-opt
into  mysql.com:/misc/mysql/31177/51-31177
2007-12-10 08:20:33 +01:00
tnurnberg@mysql.com/white.intern.koehntopp.de
2959cc58cf Bug #31177: Server variables can't be set to their current values
fixes for SLES10
2007-12-10 08:12:41 +01:00
igor@olga.mysql.com
0e3e5cf40d Forced compilers to remove the warning appeared after the patch
with a fix for bug 32694.
2007-12-09 11:53:07 -08:00
igor@olga.mysql.com
f781e154e3 Merge olga.mysql.com:/home/igor/mysql-5.0-opt
into  olga.mysql.com:/home/igor/dev-opt/mysql-5.0-opt-bug27545
2007-12-08 16:22:45 -08:00
igor@olga.mysql.com
be5485ce6d Merge olga.mysql.com:/home/igor/mysql-5.0-opt
into  olga.mysql.com:/home/igor/dev-opt/mysql-5.0-opt-bug32815
2007-12-08 14:47:56 -08:00
timour/tkatchaounov@lapi.mysql.com
3ef980cd84 Merge lapi.mysql.com:/home/tkatchaounov/mysql/src/5.0#32694
into  lapi.mysql.com:/home/tkatchaounov/mysql/src/5.1#32694
2007-12-08 23:15:43 +02:00
timour/tkatchaounov@lapi.mysql.com
9be915e743 Fix for BUG#32694 "NOT NULL table field in a subquery produces invalid results"
The problem was that when convert_constant_item is called for subqueries,
this happens when we already started executing the top-level query, and
the field argument of convert_constant_item pointed to a valid table row.
In turn convert_constant_item used the field buffer to compute the value
of its item argument. This copied the item's value into the field,
and made equalities with outer references always true.
  
The fix saves/restores the original field's value when it belongs to an
outer table.
2007-12-08 23:05:00 +02:00
igor@olga.mysql.com
c04d3727dc Fixed bug #27545.
Both arguments of the function NAME_CONST must be constant expressions.
This constraint is checked in the Item_name_const::fix_fields method. 
Yet if the argument of the function was not a constant expression no
error message was reported. As a result the client hanged waiting for a
response.
Now the function Item_name_const::fix_fields reports an error message
when any of the additional context conditions imposed on the function
NAME_CONST is not satisfied.
2007-12-07 23:36:58 -08:00
igor@olga.mysql.com
c394dbe14a Fixed bug #32815.
The index (key_part_1, key_part-2) was erroneously considered as compatible
with the required ordering in the function test_test_if_order_by_key when 
a query with an ORDER BY clause contained a condition of the form
  key_part_1=const OR key_part_1 IS NULL 
and the order list contained only key_part_2. This happened because the value
of the const_key_parts field in the KEYUSE structure was not formed correctly
for the keys that could be used for ref_or_null access. 
This was fixed in the code of the update_ref_and_keys function.
The problem could not manifest itself for MyISAM databases because the
implementation of the keys_to_use_for_scanning() handler function always
returns an empty bitmap for the MyISAM engine.
2007-12-07 17:14:59 -08: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
jani@a88-113-38-195.elisa-laajakaista.fi
0d63a0d63f Merge a88-113-38-195.elisa-laajakaista.fi:/home/my/bk/mysql-5.1-main
into  a88-113-38-195.elisa-laajakaista.fi:/home/my/bk/mysql-5.1-marvel
2007-12-07 22:27:48 +02:00
evgen@moonbone.local
a836535cde Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.1-opt
into  moonbone.local:/work/32482-5.1-opt-mysql
2007-12-07 22:56:16 +03:00
evgen@moonbone.local
f1bff761d9 Bug#32482: Crash for a query with ORDER BY a user variable.
The Item_func_set_user_var::register_field_in_read_map() did not check 
that the result_field was null.This caused server crashes for queries that
required order by such a field and were executed without using a temporary
table.

The Item_func_set_user_var::register_field_in_read_map() now checks the
result_field to be not null.
2007-12-07 22:54:47 +03: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
gkodinov/kgeorge@macbook.gmz
2264ca3646 Merge macbook.gmz:/Users/kgeorge/mysql/work/mysql-5.0-opt
into  macbook.gmz:/Users/kgeorge/mysql/work/merge-5.1-opt
2007-12-07 16:15:58 +02:00
svoj@mysql.com/june.mysql.com
1d0ea2d043 BUG#25677 - With --skip-symbolic-links option on, DATA DIRECTORY
clause is silently ignored

When symbolic links are disabled by command line option or
NO_DIR_IN_CREATE sql mode, CREATE TABLE silently ignores
DATA/INDEX DIRECTORY options.

With this fix a warning is issued when symbolic links are disabled.
2007-12-07 17:40:42 +04:00
mskold/marty@mysql.com/quadfish.(none)
0c62882776 Removed illegal cast 2007-12-07 14:06:44 +01:00
mskold/marty@quadfish.(none)
9532e822f1 Merge mysql.com:/home/marty/MySQL/mysql-5.0-ndb
into  mysql.com:/home/marty/MySQL/mysql-5.1-new-ndb
2007-12-07 14:04:58 +01:00
mskold/marty@mysql.com/quadfish.(none)
4619caa5d5 Removed illegal cast 2007-12-07 14:03:54 +01:00
mskold/marty@quadfish.(none)
844936abdc Merge mysql.com:/home/marty/MySQL/mysql-5.0-ndb
into  mysql.com:/home/marty/MySQL/mysql-5.1-new-ndb
2007-12-07 13:45:01 +01:00
mskold/marty@mysql.com/quadfish.(none)
6047fb2e44 Removed illegal cast 2007-12-07 13:42:44 +01:00
joerg@trift2.
cc609742fa Merge trift2.:/MySQL/M51/mysql-5.1
into  trift2.:/MySQL/M51/push-5.1
2007-12-07 12:33:48 +01:00
tsmith@ramayana.hindu.god
3d01ffd78d Merge tsmith@bk-internal.mysql.com:/home/bk/mysql-5.1
into  ramayana.hindu.god:/home/tsmith/m/bk/maint/51
2007-12-07 03:56:03 -07:00
tsmith@ramayana.hindu.god
8c5f194505 Merge tsmith@bk-internal.mysql.com:/home/bk/mysql-5.0
into  ramayana.hindu.god:/home/tsmith/m/bk/maint/50
2007-12-07 03:51:23 -07:00
tsmith@ramayana.hindu.god
04d363d1f6 Merge ramayana.hindu.god:/home/tsmith/m/bk/maint/50
into  ramayana.hindu.god:/home/tsmith/m/bk/maint/51-merge
2007-12-07 03:42:39 -07:00
mskold/marty@mysql.com/quadfish.(none)
af908e61b7 bug#21072 Duplicate key error in NDB references wrong key: Post-merge fixes 2007-12-07 11:05:19 +01:00
mskold/marty@quadfish.(none)
e051994b10 Merge mysql.com:/home/marty/MySQL/mysql-5.0-ndb
into  mysql.com:/home/marty/MySQL/mysql-5.1-new-ndb
2007-12-07 10:46:12 +01:00
mskold/marty@mysql.com/quadfish.(none)
fc6f839b03 bug#21072 Duplicate key error in NDB references wrong key: Post-review fixes 2007-12-07 10:33:50 +01:00
tsmith@ramayana.hindu.god
b922c9646c Fix compiler warning about wrong integer size (probably harmless) 2007-12-06 16:11:26 -07:00
holyfoot/hf@hfmain.(none)
45edb712d4 Merge abotchkov@bk-internal.mysql.com:/home/bk/mysql-5.1-opt
into  mysql.com:/home/hf/work/mrg/my51-mrg
2007-12-06 22:31:22 +04:00
tnurnberg@sin.intern.azundris.com
5cab4a77e1 Bug#31177: Server variables can't be set to their current values
initialise limits properly for getopt_ll_limit()
(fixes falcon_opt test)
2007-12-06 18:03:30 +01:00
mskold/marty@mysql.com/quadfish.(none)
27c025061d bug#21072 Duplicate key error in NDB references wrong key: Return correct key for non-batching inserts 2007-12-06 17:15:21 +01:00
mattiasj@witty.ndb.mysql.com
c27d93c83a Bug#32948: FKs allowed to reference partitioned table
Problem: when alter to partitioned table,
it does not see it as change of engine.

Solution: If alter includes partitioning, check if it is possible
to change engines (eg. is the table referenced by a FK)
2007-12-06 14:43:06 +01:00
holyfoot/hf@hfmain.(none)
18e6de9f15 Merge mysql.com:/home/hf/work/32247/my51-32247
into  mysql.com:/home/hf/work/mrg/my51-mrg
2007-12-06 16:43:52 +04:00
holyfoot/hf@mysql.com/hfmain.(none)
dc01dba255 Bug #32247 Test reports wrong value of "AUTO_INCREMENT" (on a partitioned InnoDB table).
ha_partition::update_create_info() just calls update_create_info
of a first partition, so only get the autoincrement maximum
of the first partition, so SHOW CREATE TABLE can show
small AUTO_INCREMENT parameters.
Fixed by implementing ha_partition::update_create_info() in a way
other handlers work.
HA_ARCHIVE:stats.auto_increment handling made consistent with other engines
2007-12-06 16:39:42 +04:00