1
0
mirror of https://github.com/MariaDB/server.git synced 2025-11-22 17:44:29 +03:00
Commit Graph

26958 Commits

Author SHA1 Message Date
cbell/Chuck@suse.vabb.com
baf4272152 Merge cbell@bk-internal.mysql.com:/home/bk/mysql-5.1-new-rpl
into  suse.vabb.com:/home/Chuck/development/mysql-5.1-new-rpl
2007-01-11 11:12:31 -05:00
cmiller@zippy.cornsilk.net
896e2623eb Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.0-maint
2007-01-11 09:43:44 -05:00
gluh@eagle.(none)
215d3da7d2 Merge sgluhov@bk-internal.mysql.com:/home/bk/mysql-5.1-opt
into  mysql.com:/home/gluh/MySQL/Merge/5.1-opt
2007-01-11 18:15:40 +04:00
evgen@moonbone.local
fc0e206cb5 Bug#23409: Arguments of the ENCODE() and the DECODE() functions were not printed
correctly.

The Item_func::print method was used to print the Item_func_encode and the
Item_func_decode objects. The last argument to ENCODE and DECODE functions
is a plain C string and thus Item_func::print wasn't able to print it.

The print() method is added to the Item_func_encode class. It correctly
prints the Item_func_encode and the Item_func_decode objects.
2007-01-11 16:45:38 +03:00
evgen@moonbone.local
f35e10d43c Merge fix for bug#17711 2007-01-11 16:20:08 +03:00
evgen@moonbone.local
c17bf5cb23 Bug#17711: DELETE doesn't use index when ORDER BY, LIMIT and non-restricting
WHERE is present.

If a DELETE statement with ORDER BY and LIMIT contains a WHERE clause
with conditions that for sure cannot be used for index access (like in
WHERE @var:= field) the execution always follows the filesort path.    
It happens currently even when for the above case there is an index that
can be used to speedup sorting by the order by list.

Now if a DELETE statement with ORDER BY and LIMIT contains such WHERE
clause conditions that cannot be used to build any quick select then
the mysql_delete() tries to use an index like there is no WHERE clause at all.
2007-01-11 16:05:03 +03:00
gluh@mysql.com/eagle.(none)
63e5959202 after merge fix 2007-01-11 16:50:34 +04:00
holyfoot/hf@mysql.com/hfmain.(none)
3ff9dff06a Merge bk@192.168.21.1:mysql-5.0-opt
into  mysql.com:/d2/hf/mr10/my50-mr10
2007-01-11 13:18:49 +04:00
mmj@tiger.mmj.dk
49913f2a95 Merge mjorgensen@bk-internal.mysql.com:/home/bk/mysql-5.0-sage
into  tiger.mmj.dk:/Users/mmj/bktrees/mysql-5.0
2007-01-11 09:19:32 +01:00
igor@olga.mysql.com
f5f8c35ef2 Merge ibabaev@bk-internal.mysql.com:/home/bk/mysql-4.1-opt
into  olga.mysql.com:/home/igor/mysql-4.1-opt
2007-01-10 10:49:46 -08:00
cbell/Chuck@suse.vabb.com
e4c74a6ba4 Merge cbell@bk-internal.mysql.com:/home/bk/mysql-5.0-rpl
into  suse.vabb.com:/home/Chuck/development/mysql-5.0-rpl
2007-01-10 14:45:42 -04:00
cbell/Chuck@suse.vabb.com
183c675980 BUG#22645 - LC_TIME_NAMES: Statement not replicated
This patch is an additional code change to the get_str_len_and_pointer
method in log_events.cc. This change is necessary to correct a problem
encountered on 64-bit SUSE where the auto_increment_* variables were
being overwritten. The change corrects a cast mismatch which caused
the problem.
2007-01-10 13:45:41 -05:00
cbell/Chuck@suse.vabb.com
20036a42b8 BUG#22645 - LC_TIME_NAMES: Statement not replicated
This patch is an additional code change to the get_str_len_and_pointer 
method in log_events.cc. This change is necessary to correct a problem
encountered on 64-bit SUSE where the auto_increment_* variables were
being overwritten. The change corrects a cast mismatch which caused
the problem.
2007-01-10 12:20:13 -05:00
igor@olga.mysql.com
61cd864bc0 Merge olga.mysql.com:/home/igor/mysql-4.1-opt
into  olga.mysql.com:/home/igor/mysql-5.0-opt
2007-01-10 08:55:55 -08:00
malff/marcsql@weblab.(none)
cb8174760a Merge malff@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  weblab.(none):/home/marcsql/TREE/mysql-5.1-25302
2007-01-10 09:33:43 -07:00
holyfoot/hf@deer.(none)
ebc89b9816 Merge mysql.com:/home/hf/work/24502/my51-24502
into  mysql.com:/home/hf/work/mysql-5.1-mrg
2007-01-10 16:23:54 +04:00
holyfoot/hf@mysql.com/hfmain.(none)
bcd4d84de9 Merge mysql.com:/d2/hf/common/my50-common
into  mysql.com:/d2/hf/mr10/my50-mr10
2007-01-10 14:33:34 +04:00
gluh@eagle.(none)
42e49682b7 Merge mysql.com:/home/gluh/MySQL/Merge/5.0-opt
into  mysql.com:/home/gluh/MySQL/Merge/5.1-opt
2007-01-10 14:14:22 +04:00
gluh@mysql.com/eagle.(none)
4a3fe2b682 after merge fix 2007-01-10 14:03:36 +04:00
gluh@mysql.com/eagle.(none)
9da22c73d0 Merge mysql.com:/home/gluh/MySQL/Merge/4.1-opt
into  mysql.com:/home/gluh/MySQL/Merge/5.0-opt
2007-01-10 13:04:58 +04:00
gluh@mysql.com/eagle.(none)
b61f3545f5 Fix for bug#20867 InnoDB Bug - create temporary table+crash => mysqld needs to clean up
2nd version
During tmp tables cleanup we get the handler for temporary table
and delete table using handler method.
2007-01-10 12:57:03 +04:00
igor@olga.mysql.com
578fae9dc8 Fixed bug #25427.
In the method Item_field::fix_fields we try to resolve the name of
the field against the names of the aliases that occur in the select
list. This is done by a call of the function find_item_in_list.
When this function finds several occurrences of the field name
it sends an error message to the error queue and returns 0.
Yet the code did not take into account that find_item_in_list
could return 0 and tried to dereference the returned value.
2007-01-10 00:27:11 -08:00
tsmith@siva.hindu.god
bac65ee90a WL #3670: Compile-time option to remove GRANT-related startup options
- configure --disable-grant-options defines DISABLE_GRANT_OPTIONS
- configure.js/cmake also updated
- if DISABLE_GRANT_OPTIONS is defined, mysqld no longer recognizes:
  --bootstrap
  --init-file
  --skip-grant-tables

Scripts which rely on those three options are modified to check the environment for MYSQLD_BOOTSTRAP; it should be set to the full path of a mysqld which does handle those options.

For example:

$ export MYSQLD_BOOTSTRAP
$ MYSQLD_BOOTSTRAP=/path/to/full/MySQL/bin/mysqld
$ mysql_install_db
$ make test
2007-01-09 19:22:01 -07:00
igor@olga.mysql.com
add0ab219d Merge ibabaev@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  olga.mysql.com:/home/igor/mysql-5.0-opt
2007-01-09 17:31:14 -08:00
evgen@moonbone.local
e098f736e1 Fixed bug#16861: User defined variable can have a wrong value if a tmp table was
used.

The Item::save_in_field() function is called from fill_record() to fill the 
new row with data while execution of the CREATE TABLE ... SELECT statement.
Item::save_in_field() calls val_xxx() methods in order to get values.
val_xxx() methods do not take into account the result field. Due to this
Item_func_set_user_var::val_xxx() methods returns values from the original
table, not from the temporary one.

The save_in_field() member function is added to the Item_func_set_user_var
class. It detects whether the result field should be used and properly updates
the value of the user variable.
2007-01-09 23:24:56 +03:00
igor@olga.mysql.com
ebc68a176c Merge ibabaev@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  olga.mysql.com:/home/igor/mysql-5.0-opt
2007-01-09 12:07:13 -08:00
evgen@moonbone.local
ac48c8bae1 Bug#14171: Wrong internal default value for a BINARY field.
A BINARY field is represented by the Field_string class. The space character
is used as the filler for unused characters in such a field. But a BINARY field 
should use \x00 instead.

Field_string:reset() now detects whether the current field is a BINARY one
and if so uses the \x00 character as a default value filler.
2007-01-09 22:35:30 +03:00
tnurnberg@mysql.com/sin.azundris.com
34122240cf Bug#24660: "enum" field type definition problem
ENUMs weren't allowed to have character 0xff, a perfectly good character in many locales.
This was circumvented by mapping 0xff in ENUMs to ',', thereby prevent actual commas from
being used (because they too would get converted to 0xff on load). Now if 0xff makes an
appearance, we find a character not used in the enum and use that as a separator. If no
such character exists, we throw an error.

Any solution would have broken some sort of existing behaviour. This solution should
serve both fractions (those with 0xff and those with ',' in their enums), but
WILL REQUIRE A DUMP/RESTORE CYCLE FROM THOSE WITH 0xff IN THEIR ENUMS. :-/
That is, mysqldump with their current server, and restore when upgrading to one with
this patch.

(port of the original 4.1 patch. incorporates some suggestions by kaamos.)
2007-01-09 20:23:12 +01:00
igor@olga.mysql.com
5cd4ba4e0b Merge olga.mysql.com:/home/igor/mysql-5.0-opt
into  olga.mysql.com:/home/igor/dev-opt/mysql-5.0-opt-bug25027
2007-01-09 10:26:28 -08:00
lenz@metis.lenznet
cd2a657b01 Merge metis.lenznet:/space/my/bk/mysql-5.0
into  metis.lenznet:/space/my/bk/mysql-5.0-community
2007-01-09 12:27:56 +01:00
kroki/tomash@moonlight.home
6a99943e15 Merge moonlight.home:/home/tomash/src/mysql_ab/mysql-5.0
into  moonlight.home:/home/tomash/src/mysql_ab/mysql-5.0-bug23443
2007-01-09 12:47:10 +03:00
kroki/tomash@moonlight.home
69ec67fcd8 Merge moonlight.home:/home/tomash/src/mysql_ab/mysql-4.1-runtime
into  moonlight.home:/home/tomash/src/mysql_ab/mysql-4.1-bug23443
2007-01-09 12:47:03 +03:00
kroki/tomash@moonlight.home
e1ea142c0a Merge moonlight.home:/home/tomash/src/mysql_ab/mysql-4.0
into  moonlight.home:/home/tomash/src/mysql_ab/mysql-4.0-bug23443
2007-01-09 12:46:35 +03:00
kroki/tomash@moonlight.home
7bf893f551 Merge moonlight.home:/home/tomash/src/mysql_ab/mysql-5.0-bug23443
into  moonlight.home:/home/tomash/src/mysql_ab/mysql-5.1-bug23443
2007-01-09 12:44:16 +03:00
kroki/tomash@moonlight.home
1eb5b28fb7 Merge moonlight.home:/home/tomash/src/mysql_ab/mysql-4.1-bug23443
into  moonlight.home:/home/tomash/src/mysql_ab/mysql-5.0-bug23443
2007-01-09 12:40:34 +03:00
kroki/tomash@moonlight.home
45e9762027 Merge moonlight.home:/home/tomash/src/mysql_ab/mysql-4.0-bug23443
into  moonlight.home:/home/tomash/src/mysql_ab/mysql-4.1-bug23443
2007-01-09 12:39:05 +03:00
kroki/tomash@moonlight.home
5b4d9d8706 BUG#23443: user-defined variables can consume too much memory in the
server

The problem was that when memory was exhausted HEAP engine could crash
(GROUP BY uses HEAP TABLE).  Alternatively, if SET was used, it could
report an error "You may only use constant expressions with SET" instead
of "Out of memory (Needed NNNNNN bytes)".

The solution is:
 - pass MY_WME to (some) calls to my_malloc() to get correct message.
 - fix heap_write() so that the first key is skipped during cleanup
   on ENOMEM because it wasn't inserted and doesn't have to be
   deleted.

No test case is provided because we can't test out-of-memory behaviour
in our current test framework.
2007-01-09 12:24:25 +03:00
igor@olga.mysql.com
ae6bee30fc Merge olga.mysql.com:/home/igor/mysql-5.0-opt
into  olga.mysql.com:/home/igor/dev-opt/mysql-5.0-opt-bug24345
2007-01-09 00:17:48 -08:00
guilhem@gbichot3.local
c144de06e4 Merge gbichot3.local:/home/mysql_src/mysql-5.0-rpl-19725
into  gbichot3.local:/home/mysql_src/mysql-5.1-rpl-19725
2007-01-08 22:06:19 +01:00
guilhem@gbichot3.local
3e760410a0 Fix for BUG#19725 "Calls to SF in other database are not replicated
correctly in some cases".
In short, calls to a stored function located in another database
than the default database, may fail to replicate if the call was made
by SET, SELECT, or DO.
Longer: when a stored function is called from a statement which does not go
to binlog ("SET @a=somedb.myfunc()", "SELECT somedb.myfunc()",
"DO somedb.myfunc()"), this crafted statement is binlogged:
"SELECT myfunc();" (accompanied with a mention of the default database
if there is one). So, if "somedb" is not the default database,
the slave would fail to find myfunc(). The fix is to specify the
function's database name in the crafted binlogged statement, like this:
"SELECT somedb.myfunc();". Test added in rpl_sp.test.
2007-01-08 22:01:06 +01:00
mskold/marty@mysql.com/linux.site
a74b06c723 bug#24820 CREATE INDEX ....USING HASH on NDB table creates ordered index, not HASH index: Added error checking 2007-01-08 11:42:32 +01:00
gkodinov/kgeorge@macbook.local
a30c09c33f Merge macbook.local:/Users/kgeorge/mysql/work/mysql-5.0-opt
into  macbook.local:/Users/kgeorge/mysql/work/merge-5.1-opt
2007-01-08 12:32:48 +02:00
mskold/marty@mysql.com/linux.site
0627ce96c8 Merge mysql.com:/windows/Linux_space/MySQL/mysql-5.0
into  mysql.com:/windows/Linux_space/MySQL/mysql-5.0-ndb
2007-01-08 11:18:24 +01:00
mskold/marty@mysql.com/linux.site
db0107b801 bug#24820 CREATE INDEX ....USING HASH on NDB table creates ordered index, not HASH index: Added error checking 2007-01-08 10:38:53 +01:00
cmiller@zippy.cornsilk.net
a16eaf3301 Merge bk-internal.mysql.com:/home/bk/mysql-5.1
into  zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.1-maint-greener
2007-01-07 09:31:49 -05:00
gkodinov/kgeorge@macbook.gmz
a63df24a68 Bug #15881: cast problems
The optimizer removes expressions from GROUP BY/DISTINCT
  if they happen to participate in a <expression> = <const>
  predicates of the WHERE clause (the idea being that if
  it's always equal to a constant it can't have multiple 
  values).
  However for predicates where the expression and the 
  constant item are of different result type this is not
  valid (e.g. a string column compared to 0).
  Fixed by additional check of the result types of the 
  expression and the constant and if they differ the 
  expression don't get removed from the group by list.
2007-01-05 14:02:50 +02:00
mskold/marty@mysql.com/linux.site
da3a1cff4d Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/windows/Linux_space/MySQL/mysql-5.0-ndb
2007-01-05 09:26:57 +01:00
mskold/marty@mysql.com/linux.site
4ddf45b19c ha_ndbcluster.h, ndb_dd_alter.result, ha_ndbcluster.cc:
bug#25296  Truncate table converts NDB disk based tables to in-memory tables: Changed fix to use get_tablespace_name directly instead
2007-01-04 17:26:53 +01:00
mskold/marty@mysql.com/linux.site
408e4a61d1 bug #25296 Truncate table converts NDB disk based tables to in-memory tables: ha_ndbcluster::update_create_info should only update for TRUNCATE since we need to detect change of STORAGE at ALTER TABLE 2007-01-04 09:15:09 +01:00
cmiller@zippy.cornsilk.net
68428545a5 Merge bk-internal.mysql.com:/home/bk/mysql-5.0-community
into  zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.0-community
2007-01-03 18:24:28 -05:00