Commit graph

254 commits

Author SHA1 Message Date
gkodinov/kgeorge@macbook.local
13633864bb Bug #22781: SQL_BIG_RESULT fails to influence sort plan
Currently SQL_BIG_RESULT is checked only at compile time.
 However, additional optimizations may take place after
 this check that change the sort method from 'filesort'
 to sorting via index. As a result the actual plan
 executed is not the one specified by the SQL_BIG_RESULT
 hint. Similarly, there is no such test when executing
 EXPLAIN, resulting in incorrect output.
 The patch corrects the problem by testing for
 SQL_BIG_RESULT both during the explain and execution
 phases.
2006-10-09 19:51:41 +04:00
evgen@moonbone.local
c875b8eb93 Fixed bug#12185: Data type aggregation may produce wrong result
The Item::tmp_table_field_from_field_type() function creates Field_datetime
object instead of Field_timestamp object for timestamp field thus always
changing data type is a tmp table is used.

The Field_blob object constructor which is used in the 
Item::tmp_table_field_from_field_type() is always setting packlength field of
newly created blob to 4. This leads to changing fields data type for example
from the blob to the longblob if a temporary table is used.

The Item::make_string_field() function always converts Field_string objects 
to Field_varstring objects. This leads to changing data type from the 
char/binary to varchar/varbinary.

Added appropriate Field_timestamp object constructor for using in the 
Item::tmp_table_field_from_field_type() function.

Added Field_blob object constructor which sets pack length according to
max_length argument.

The Item::tmp_table_field_from_field_type() function now creates
Field_timestamp object for a timestamp field.

The Item_type_holder::display_length() now returns correct NULL length NULL
length. 

The Item::make_string_field() function now doesn't change Field_string to
Field_varstring in the case of Item_type_holder. 

The Item::tmp_table_field_from_field_type() function now uses the Field_blob
constructor which sets packlength according to max_length.
2006-07-22 02:08:00 +04:00
holyfoot@mysql.com
7ee205f67a merging 2006-05-03 16:42:39 +05:00
aivanov@mysql.com
4fba67933d Merge aivanov@bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/alexi/innodb/mysql-5.0
2006-04-23 13:32:37 +04:00
aivanov@mysql.com
364621abc0 Restoring changes erroneously removed by applying
the innodb-5.0-ss476 snapshot.
2006-04-21 01:37:31 +04:00
aivanov@mysql.com
25d9a75d12 Applied innodb-5.0-ss476 snapshot.
Fix BUG#18934: "InnoDB crashes when table uses column like DB_ROW_ID".
 Also, fix memory leaks in row_create_table_for_mysql() in rare
 corner cases.
2006-04-21 01:07:37 +04:00
gkodinov@mysql.com
94e556137d BUG#17152: Wrong result with BINARY comparison on aliased column
Testsuite added
2006-04-17 16:46:56 +03:00
holyfoot@deer.(none)
c2acfc5b7c bug #15860 (SPATIAL keys in INNODB) 2006-04-12 22:05:23 +05:00
ramil@mysql.com
1e29244200 Fix for bug #14360: Date Between Interval Broken. 2006-04-11 16:13:57 +05:00
aivanov@mysql.com
6ad6cda2ca Fixed test case result (after BUG#15868 fix). 2006-04-10 22:44:01 +04:00
monty@mysql.com
82b77cdd90 Fixes to embedded server to be able to run tests with it
(Needed for "list of pushes" web page and autopush)
2006-02-24 18:34:15 +02:00
ingo@mysql.com
65a4e27633 Merge mysql.com:/home/mydev/mysql-5.0
into  mysql.com:/home/mydev/mysql-5.0-bug8841
2006-02-16 08:59:55 +01:00
ingo@mysql.com
c5a7bffcee Bug#8841 - CHECKSUM TABLE is broken in MyISAM
There are (at least) two implementations of the checksum
computation. One is in MyISAM for the quick checksum. It
is executed on every row change. The other is in the
SQL layer for the extended checksum. It retrieves all rows
of a table via the respective storage engine.

In former MySQL versions varchars were stored with their 
maximum length, but now with their real length similar to
blobs.

This change had been forgotten to take care of in the
extended checksum calculation. Hence too much data was
checksumed. In MyISAM this change had been taken care of 
already. Only the real data is included in the checksum.

I changed mysql_checksum_table() so that it uses the
length information of true varchar fields instead
of the field length like in former varchar 
implementations.
2006-02-01 16:46:44 +01:00
aivanov@mysql.com
9296fb241d Fixed: BUG#15653, BUG#16157, BUG#16229, BUG#16298, BUG#16387, BUG#16582.
Applied innodb-5.0-ss149/162 snapshots.
2006-01-31 21:41:48 +03:00
aivanov@mysql.com
5f7279d0d5 Applied patch recieved from Marko:
Make innodb_thread_concurrency 0 by default, and extend the usable
 range from 0 to 1000 (0 disables the thread throttling).
2006-01-18 15:20:56 +03:00
aivanov@mysql.com
708f9b3ceb Changes from the innodb-5.0-ss115 snapshot.
Fixed bugs:
 BUG#15991: "innodb-file-per-table + symlink database + rename = crash"
 BUG#15650: "DELETE with LEFT JOIN crashes server"
 BUG#15308: "Problem of Order with Enum Column in Primary Key"
 BUG#14189: "VARBINARY and BINARY variables: trailing space ignored"
2006-01-16 14:32:43 +03:00
aivanov@mysql.com
2e499986aa Fix BUG#12071: "Windows hang:'Opening tables' or 'Waiting for
table' lockup".
 Changes from the innodb-5.0-ss92 snapshot.
 Do not call os_file_create_tmpfile() at runtime. Instead, create
 all tempfiles at startup and guard access to them with mutexes.
2005-12-13 21:35:24 +03:00
jimw@mysql.com
642984d420 Fix innodb.result file (was missing a line) 2005-12-06 18:18:35 -08:00
aivanov@mysql.com
9eee25472e Fix BUG#14747: "Race condition can cause btr_search_drop_page_hash_index()
to crash".
 Changes from snapshot innodb-5.0-ss52.
 Note that buf_block_t::index should be protected by btr_search_latch
 or an s-latch or x-latch on the index page.
 btr_search_drop_page_hash_index(): Read block->index while holding
 btr_search_latch and use the cached value in the loop. Remove some
 redundant assertions.
 Also fix 13778. When FOREIGN_KEY_CHECKS=0 we still need to check that
 datatypes between foreign key references are compatible.
 Also added test cases to 9802.
2005-12-06 22:02:40 +03:00
jimw@mysql.com
e86048ce59 Enable key lengths of up to 3K on 32-bit platforms. 2005-12-01 11:11:03 -08:00
elliot@mysql.com
0955163bb1 BUG#14056 Column prefix index on UTF-8 primary key column causes 'Can't find record..'
Applying InnoDB patch from Jan Lindstrom
2005-10-19 12:06:29 -04:00
serg@mysql.com
30077692dc innodb.result:
somehow it didn't get into the previous changeset
2005-10-04 21:37:50 +02:00
serg@serg.mylan
bef3c587c6 Bug#11238
"SELECT ... FOR UPDATE executed as consistent read inside LOCK TABLES"
Do not discard lock_type information as handler::start_stmt() may require knowledge.
(fixed by Antony)
2005-09-30 20:20:10 +02:00
serg@serg.mylan
8c813c0a16 duplicate error message removed 2005-09-30 12:01:39 +02:00
sergefp@mysql.com
7d383eecb5 Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/psergey/mysql-5.0-bug13455
2005-09-30 01:38:04 +04:00
sergefp@mysql.com
71d8990f8e Fix for BUG#13455: Make "ref" optimizer able to make this inference:
"t.key BETWEEN c1 AND c2" and c1 = c2 -> can access table t using "t.key = c1".
2005-09-30 01:34:19 +04:00
jan@hundin.mysql.fi
81f51fd47b Fix incorrectly merged changeset, these may not be before a first 5.0 test
i.e. range test.
2005-09-29 13:50:27 +03:00
jan@hundin.mysql.fi
43b2dc617b Merge jlindstrom@bk-internal.mysql.com:/home/bk/mysql-5.0
into  hundin.mysql.fi:/home/jan/mysql-5.0
2005-09-29 13:15:09 +03:00
jan@hundin.mysql.fi
6734ca6cbe Fixed a bug checksum table locks the InnoDB table and does not use a
consistent read (Bug #12669). This fixes InnoDB part of the bug.
2005-09-29 08:34:38 +03:00
msvensson@neptunus.(none)
13161c2a84 Merge neptunus.(none):/home/msvensson/mysql/mysql-4.1
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0
2005-09-28 15:32:05 +02:00
jan@hundin.mysql.fi
dc80450410 Fixed a bug checksum table locks the InnoDB table and does not use a
consistent read (Bug #12669).
2005-09-28 14:14:49 +03:00
osku@127.(none)
d563a01afe Merge 127.(none):/home/osku/mysql/5.0/clean
into  127.(none):/home/osku/mysql/5.0/3443
2005-09-23 16:44:25 +03:00
osku@127.(none)
d61708d1c9 Fix bug #3443, better foreign key error messsages. 2005-09-23 16:22:27 +03:00
osku@127.(none)
e6b3261556 InnoDB: Fix bug #13315, index columns having a maximum length of 767. 2005-09-23 11:20:34 +03:00
serg@serg.mylan
3b41e3362b aftermerge fix 2005-09-21 17:38:26 +02:00
serg@serg.mylan
a083ff160e merged 2005-09-21 13:53:22 +02:00
evgen@moonbone.local
afa8187fb7 Fix bug #13218: InnoDB: using a partial-field key prefix in search
This is backport from 5.0 of fix for bug #11039
2005-09-19 04:39:49 +04:00
jani@a193-229-222-105.elisa-laajakaista.fi
e760a58f07 Merged from 4.1 to 5.0. 2005-09-13 01:44:50 +03:00
jani@a193-229-222-105.elisa-laajakaista.fi
01ce8a8aa9 Merge a193-229-222-105.elisa-laajakaista.fi:/home/my/bk/mysql-4.1
into  a193-229-222-105.elisa-laajakaista.fi:/home/my/bk/mysql-5.0
2005-09-12 20:18:49 +03:00
monty@mishka.mysql.com
0965bfa832 Review fixes since last pull
Fix for bug #13025; Server crash in filesort because wrong call to handler::position()
2005-09-12 18:48:17 +03:00
osku@127.(none)
2c69c199a1 Add testcase for bug #12084. 2005-09-06 16:08:05 +03:00
ingo@mysql.com
3e06800b7f Merge mysql.com:/home/mydev/mysql-5.0
into  mysql.com:/home/mydev/mysql-5.0-5000
2005-08-30 12:35:37 +02:00
ingo@mysql.com
b2b93f0abc After merge fix. 2005-08-29 21:06:45 +02:00
ingo@mysql.com
5d41d5e0f4 Merge mysql.com:/home/mydev/mysql-4.1-4100
into  mysql.com:/home/mydev/mysql-5.0-5000
2005-08-29 18:18:30 +02:00
ingo@mysql.com
32e3238da7 Bug#11816 - Truncate table doesn't work with temporary innodb tables
Handle temporary tables like permanent tables: If the storage engine
cannot truncate, delete instead.
2005-08-29 17:01:46 +02:00
osku@127.(none)
55c752fb37 Merge osalerma@bk-internal.mysql.com:/home/bk/mysql-5.0
into  127.(none):/home/osku/mysql-5.0
2005-08-24 09:25:32 +03:00
timour@mysql.com
e040300393 WL#2486 - natural and using join according to SQL:2003
* Provide backwards compatibility extension to name resolution of
  coalesced columns. The patch allows such columns to be qualified
  with a table (and db) name, as it is in 4.1.
  Based on a patch from Monty.

* Adjusted tests accordingly to test both backwards compatible name
  resolution of qualified columns, and ANSI-style resolution of
  non-qualified columns.
  For this, each affected test has two versions - one with qualified
  columns, and one without.
2005-08-23 18:08:04 +03:00
osku@127.(none)
70be812365 Merge osalerma@bk-internal.mysql.com:/home/bk/mysql-5.0
into  127.(none):/home/osku/mysql-5.0
2005-08-19 11:34:04 +03:00
andrey@lmy004.
7f9e97f70c test fix for fix of 12591 2005-08-19 09:08:41 +02:00
osku@127.(none)
fb48039444 Fix bug #11946, truncate not always resetting the auto-increment counter
in InnoDB tables.
2005-08-17 11:00:20 +03:00