Commit graph

6707 commits

Author SHA1 Message Date
svoj@mysql.com/april.(none)
005d8c5284 BUG#25951 - ignore/use index does not work with fulltext
IGNORE/USE/FORCE INDEX hints were honored when choosing FULLTEXT
index.

With this fix these hints are ignored. For regular indexes we may
perform table scan instead of index lookup when IGNORE INDEX was
specified. We cannot do this for FULLTEXT in NLQ mode.
2007-04-13 02:31:34 +05:00
igor@olga.mysql.com
520b144007 Fixed bug #27484: a crash when incompatible row expressions with nested rows
are used as arguments of the IN predicate.
Added a function to check compatibility of row expressions. Made sure that this
function to be called for Item_func_in objects by fix_length_and_dec().
2007-04-11 11:41:12 -07:00
svoj@mysql.com/april.(none)
bcbcacb8da BUG#24342 - Incorrect results with query over MERGE table
MERGE engine may return incorrect values when several representations
of equal keys are present in the index. For example "groß" and "gross"
or "gross" and "gross " (trailing space), which are considered equal,
but have different lengths.

The problem was that key length was not recalculated after key lookup.

Only MERGE engine is affected.
2007-04-11 01:40:35 +05:00
msvensson@pilot.blaudden
8d0755ba47 Update result(which mysterioulsy got lost) 2007-04-10 17:33:04 +02:00
msvensson@pilot.blaudden
f194cbe62a Merge pilot.blaudden:/home/msvensson/mysql/mysql-4.1
into  pilot.blaudden:/home/msvensson/mysql/mysql-4.1-maint
2007-04-10 14:58:55 +02:00
msvensson@pilot.blaudden
60eb839e77 Merge 192.168.0.4:mysql/mysql-4.1-maint
into  pilot.blaudden:/home/msvensson/mysql/mysql-4.1-maint
2007-04-10 13:51:32 +02:00
holyfoot/hf@mysql.com/hfmain.(none)
df913ae06a Merge bk@192.168.21.1:mysql-4.1
into  mysql.com:/d2/hf/mrg/mysql-4.1-opt
2007-04-07 11:35:14 +05:00
msvensson@shellback.(none)
2df8524391 Add "query_sorted" command to mysqltest
Usage:
  query_sorted <query>;
2007-04-05 20:12:56 +02:00
msvensson@pilot.blaudden
c159836fdc Bug#27344 Total failure to start the server
- length($sockdir) >= 80 !!
2007-04-04 19:19:26 +02:00
msvensson@pilot.blaudden
19801cbfdc Add expansion of $variables in "let from query",
"if with query" and "while with query"
2007-04-04 15:09:12 +02:00
igor@olga.mysql.com
0e14d4c7ed Improved coverage for the code added to fix bug 27532. 2007-04-03 19:45:37 -07:00
igor@olga.mysql.com
90aa05d276 Fixed bug #27532: wrong results with ORDER/GROUP BY queries containing
IN/BETWEEN predicates in sorting expressions.
Wrong results may occur when the select list contains an expression
with IN/BETWEEN predicate that differs from a sorting expression by
an additional NOT only.
 
Added the method Item_func_opt_neg::eq to compare correctly expressions
containing [NOT] IN/BETWEEN.
The eq method inherited from the Item_func returns TRUE when comparing
'a IN (1,2)' with 'a NOT IN (1,2)' that is not, of course, correct.
2007-04-03 14:32:16 -07:00
msvensson@pilot.blaudden
252e3f03c7 Merge pilot.blaudden:/home/msvensson/mysql/mysql-4.1
into  pilot.blaudden:/home/msvensson/mysql/mysql-4.1-maint
2007-04-02 10:48:11 +02:00
msvensson@pilot.blaudden
c731bad918 Cset exclude: tsmith@siva.hindu.god|ChangeSet|20070328212513|13373 2007-04-02 10:39:23 +02:00
ibabaev@bk-internal.mysql.com
466586472b Merge bk-internal.mysql.com:/data0/bk/mysql-4.1
into  bk-internal.mysql.com:/data0/bk/mysql-4.1-opt
2007-03-31 09:52:18 +02:00
sergefp@mysql.com
dcb2551347 BUG#26624: high mem usage (crash) in range optimizer
Pushbuild fixes: 
 - Make MAX_SEL_ARGS smaller (even 16K records_in_range() calls is 
   more than it makes sense to do in typical cases)
 - Don't call sel_arg->test_use_count() if we've already allocated 
   more than MAX_SEL_ARGs elements. The test will succeed but will take
   too much time for the test suite (and not provide much value).
2007-03-31 00:29:18 +04:00
msvensson@pilot.blaudden
79b2bd53b2 Merge pilot.blaudden:/home/msvensson/mysql/bug25482/my41-bug25482-alt2
into  pilot.blaudden:/home/msvensson/mysql/mysql-4.1-maint
2007-03-29 14:33:50 +02:00
msvensson@pilot.blaudden
a71d195183 Bug#25482 GRANT statements are not replicated if you use "replicate-ignore-table"
- GRANT and REVOKE statments didn't have the "updating" flag set and
   thus statements with a table specified would not replicate if
   slave filtering rules where turned on.
   For example "GRANT ... ON test.t1 TO ..." would not replicate.
2007-03-29 14:12:32 +02:00
tsmith@siva.hindu.god
ecd22993cf Bug #26642: create index corrupts table definition in .frm
Thanks to Martin Friebe for finding and submitting a fix for this bug!

A table with maximum number of key segments and maximum length key name
would have a corrupted .frm file, due to an incorrect calculation of the
complete key length.  Now the key length is computed correctly (I hope) :-)

MyISAM would reject a table with the maximum number of keys and the maximum
number of key segments in all keys.  It would allow one less than this total
maximum.  Now MyISAM accepts a table defined with the maximum.  (This is a
very minor issue.)
2007-03-28 15:25:13 -06:00
sergefp@mysql.com
a8d439728f BUG#26624: high mem usage (crash) in range optimizer
- Added PARAM::alloced_sel_args where we count the # of SEL_ARGs
  created by SEL_ARG tree cloning operations.
- Made the range analyzer to shortcut and not do any more cloning 
  if we've already created MAX_SEL_ARGS SEL_ARG objects in cloning.
- Added comments about space complexity of SEL_ARG-graph 
  representation.
2007-03-28 20:16:01 +04:00
istruewing@chilla.local
fd8ebd5657 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into  chilla.local:/home/mydev/mysql-4.1-axmrg
2007-03-28 08:59:30 +02:00
istruewing@chilla.local
2ce22c3f6f Merge chilla.local:/home/mydev/mysql-4.1-bug26231
into  chilla.local:/home/mydev/mysql-4.1-axmrg
2007-03-28 08:57:46 +02:00
istruewing@chilla.local
bba96f35c8 Merge bk-internal.mysql.com:/home/bk/mysql-4.1-engines
into  chilla.local:/home/mydev/mysql-4.1-bug24985
2007-03-28 08:51:12 +02:00
istruewing@chilla.local
8934e4f3cc Bug#24985 - UTF8 ENUM primary key on MEMORY using BTREE
causes incorrect duplicate entries

Keys for BTREE indexes on ENUM and SET columns of MEMORY tables
with character set UTF8 were computed incorrectly. Many
different column values got the same key value.

Apart of possible performance problems, it made unique indexes
of this type unusable because it rejected many different
values as duplicates.

The problem was that multibyte character detection was tried
on the internal numeric column value. Many values were not
identified as characters. Their key value became blank filled.

Thanks to Alexander Barkov and Ramil Kalimullin for the patch,
which sets the character set of ENUM and SET key segments to
the pseudo binary character set.
2007-03-27 10:49:48 +02:00
gkodinov/kgeorge@magare.gmz[kgeorge]
e6d81ad338 Bug #27164: not reseting the data pointer
to 0 causes wrong (large) length to be read
 from the row in _mi_calc_blob_length() when 
 storing NULL values in (e.g) POINT columns.
 This large length is then used to allocate
 a block of memory that (on some OSes) causes
 trouble.
 Fixed by calling the base class's 
 Field_blob::reset() from Field_geom::reset()
 that is called when storing a NULL value into
 the column.
2007-03-26 13:17:40 +03:00
ramil/ram@mysql.com/ramil.myoffice.izhnet.ru
ebe44e6e31 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1-maint
into  mysql.com:/home/ram/work/b25301/b25301.4.1
2007-03-26 13:45:02 +05:00
istruewing@chilla.local
af850a24f8 Merge bk-internal.mysql.com:/home/bk/mysql-4.1-engines
into  chilla.local:/home/mydev/mysql-4.1-bug26996
2007-03-23 08:28:21 +01:00
holyfoot/hf@mysql.com/hfmain.(none)
e0f0507f99 bug #16546 (DATETIME + 0 not always coerced in the same way)
fix for cast( AS DATETIME) + 0 operation.
  I just implemented Item_datetime_typecast::val() method
  as it is usually done in other classes.
  Should be fixed more radically in 5.0
2007-03-22 12:24:56 +04:00
joerg@trift2.
69a2dcda37 Test "help":
Shift the ID values up into a range where they will not collide with those
which we use for real data, when we fill the system tables.

Will be merged up to 5.0 where it is needed for 5.0.38.
2007-03-20 19:36:11 +01:00
istruewing@chilla.local
344f33bb89 Bug#26996 - Update of a Field in a Memory Table ends with wrong result
Using a MEMORY table BTREE index for scanning for updatable rows
could lead to an infinite loop.

Everytime a key was inserted into a btree index, the position
in the index scan was cleared. The search started from the
beginning and found the same key again.

Now we do not clear the position on key insert an more.
2007-03-19 15:56:53 +01:00
istruewing@chilla.local
c33486ff1b Bug#26231 - select count(*) on myisam table returns wrong value
when index is used

When the table contained TEXT columns with empty contents
('', zero length, but not NULL) _and_ strings starting with
control characters like tabulator or newline, the empty values
were not found in a "records in range" estimate. Hence count(*)
missed these records.

The reason was a different set of search flags used for key
insert and key range estimation.

I decided to fix the set of flags used in range estimation.
Otherwise millions of databases around the world would require
a repair after an upgrade.

The consequence is that the manual must be fixed, which claims
that TEXT columns are compared with "end space padding". This
is true for CHAR/VARCHAR but wrong for TEXT. See also bug 21335.
2007-03-16 10:28:48 +01:00
svoj@mysql.com/april.(none)
cb132bea8f BUG#26881 - Large MERGE tables report incorrect specification when no
differences in tables
Certain merge tables were wrongly reported as having incorrect definition:
- Some fields that are 1 byte long (e.g. TINYINT, CHAR(1)), might
  be internally casted (in certain cases) to a different type on a
  storage engine layer. (affects 4.1 and up)
- If tables in a merge (and a MERGE table itself) had short VARCHAR column (less
  than 4 bytes) and at least one (but not all) tables were ALTER'ed (even to an
  identical table: ALTER TABLE xxx ENGINE=yyy), table definitions went ouf of
  sync. (affects 4.1 only)

This is fixed by relaxing a check for underlying conformance and setting
field type to FIELD_TYPE_STRING in case varchar is shorter than 4
when a table is created.
2007-03-13 18:02:06 +04:00
svoj@mysql.com/april.(none)
576db4f44c Merge mysql.com:/home/svoj/devel/bk/mysql-4.1
into  mysql.com:/home/svoj/devel/mysql/BUG26881/mysql-4.1-engines
2007-03-13 16:57:16 +04:00
istruewing@chilla.local
17dcc22a6e Merge bk-internal.mysql.com:/home/bk/mysql-4.1-engines
into  chilla.local:/home/mydev/mysql-4.1-bug25673
2007-03-10 17:01:52 +01:00
holyfoot/hf@mysql.com/hfmain.(none)
618ccf376f Merge bk@192.168.21.1:mysql-4.1
into  mysql.com:/home/hf/work/mrg/mysql-4.1-opt
2007-03-08 21:14:31 +04:00
msvensson@pilot.blaudden
193c3178bc Merge bk-internal:/home/bk/mysql-4.1-maint
into  pilot.blaudden:/home/msvensson/mysql/mysql-4.1-maint
2007-03-08 15:10:24 +01:00
istruewing@chilla.local
2d6ad76abd Bug#25673 - spatial index corruption, error 126
incorrect key file for table

In certain cases it could happen that deleting a row could
corrupt an RTREE index.

According to Guttman's algorithm, page underflow is handled
by storing the page in a list for later re-insertion. The
keys from the stored pages have to be inserted into the
remaining pages of the same level of the tree. Hence the
level number is stored in the re-insertion list together
with the page.

In the MySQL RTree implementation the level counts from zero
at the root page, increasing numbers for levels down the tree.

If during re-insertion of the keys the tree height grows, all
level numbers become invalid. The remaining keys will be
inserted at the wrong level.

The fix is to increment the level numbers stored in the
reinsert list after a split of the root block during reinsertion.
2007-03-08 09:54:37 +01:00
tsmith@quadxeon.mysql.com
98f9b507fc Merge tsmith@bk-internal.mysql.com:/home/bk/mysql-4.1-runtime
into  quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/maint/mrg0306/41
2007-03-07 07:02:00 +01:00
ramil/ram@mysql.com/ramil.myoffice.izhnet.ru
213957d06f Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1-maint
into  mysql.com:/home/ram/work/b26038/b26038.4.1
2007-03-05 18:21:52 +04:00
istruewing@chilla.local
629fed6c4d Bug#26464 - insert delayed + update + merge = corruption
Using INSERT DELAYED on MERGE tables could lead to table
corruptions.

The manual lists a couple of storage engines, which can be
used with INSERT DELAYED. MERGE is not in this list.

The attempt to try it anyway has not been rejected yet.
This bug was not detected earlier as it can work under
special circumstances. Most notable is low concurrency.

To be safe, this patch rejects any attempt to use INSERT
DELAYED on MERGE tables.
2007-03-05 11:52:28 +01:00
msvensson@pilot.blaudden
94c616d186 Bug #26792 Add DBX debugger support to mysql-test-run.pl
- Add --debugger=dbx
 - Fix --debugger=devenv, --debugger=DevEnv and --debugger=/path/devenv
2007-03-05 09:52:40 +01:00
ramil/ram@mysql.com/ramil.myoffice.izhnet.ru
3a5b7e63e2 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1-maint
into  mysql.com:/home/ram/work/b23616/b23616.4.1
2007-03-05 12:07:59 +04:00
evgen@sunlight.local
629c12316d Bug#25126: Wrongly resolved field leads to a crash.
When the ORDER BY clause gets fixed it's allowed to search in the current
item_list in order to find aliased fields and expressions. This is ok for a
SELECT but wrong for an UPDATE statement. If the ORDER BY clause will
contain a non-existing field which is mentioned in the UPDATE set list
then the server will crash due to using of non-existing (0x0) field.

When an Item_field is getting fixed it's allowed to search item list for
aliased expressions and fields only for selects.
2007-03-04 00:47:42 +03:00
msvensson@pilot.blaudden
86625d711f Fix bug in mtr.pl where slave wes using same query log file as master 2007-03-01 18:31:09 +01:00
malff/marcsql@weblab.(none)
14e1ed367e Merge weblab.(none):/home/marcsql/TREE/mysql-4.1-base
into  weblab.(none):/home/marcsql/TREE/mysql-4.1-runtime
2007-03-01 05:59:16 -07:00
msvensson@pilot.blaudden
c1f8e7f913 MySQL versions before 5.0 still use cygwin, no need
to convert path
2007-03-01 11:41:29 +01:00
msvensson@pilot.blaudden
3fc549d430 Bug#20166 mysql-test-run.pl does not test system privilege tables creation
- Build lib/init-db.sql from the output of mysql_create_system_tables
 - Remove mysql-test/init_db.sql and mysql-test/lib/init_db.sql
 - Leave netware/init_db.sql until 5.0 where we should soon have possibility
   to test with mysql-test-run.pl
2007-02-28 15:03:47 +01:00
msvensson@pilot.blaudden
c0da93cd97 When using a --mem=<dir> the memdir must be removed to assure
afresh start
2007-02-28 13:47:41 +01:00
msvensson@pilot.blaudden
44959af241 Bug#26416 mysql-test-run exits with "Hangup" when piped to grep
- Thanks to Christian for the patch!
2007-02-28 10:52:51 +01:00
msvensson@pilot.blaudden
3393c1e489 Bug#26686 mysql-test-run.pl aborts when waitpid returns -1
- Add error handling for waitpid returns -1 for "simple run of command"
2007-02-28 10:37:32 +01:00
msvensson@pilot.blaudden
23b6b4a565 Only allow a version number to be read from "/etc/debian_version" 2007-02-26 14:52:51 +01:00
ramil/ram@mysql.com/ramil.myoffice.izhnet.ru
049251624a Fix for bug #26038: X() value of empty NOT NULL POINT is neither NULL nor NOT NULL
Having maybe_null flag unset for geometry/spatial functions leads to
wrong Item_func_isnull::val_int()'s results.
Fix: set maybe_null flag and add is_null() methods.
2007-02-21 14:45:19 +04:00
msvensson@pilot.blaudden
d6584a920b Add "diff_files" command to mysqltest 2007-02-20 18:20:58 +01:00
msvensson@pilot.blaudden
d2fe11cb56 Commment out two test's thats just confusing for cmd.exe 2007-02-19 18:23:59 +01:00
msvensson@pilot.blaudden
cb84744145 Add cat_file command to mysqltest 2007-02-19 18:19:47 +01:00
msvensson@pilot.blaudden
d2c02cd10d Add "append_file" command to mysqltest 2007-02-19 16:39:50 +01:00
thek@kpdesk.mysql.com
8f24815af1 Merge kpdesk.mysql.com:/home/thek/dev/bug23240/my41-bug23240
into  kpdesk.mysql.com:/home/thek/dev/mysql-4.1-runtime
2007-02-19 15:26:07 +01:00
thek@kpdesk.mysql.com
dd41fd5732 Bug#23240 --init-file statements with NOW() reports '1970-01-01 11:00:00'as the date time
- Starting time of a query sent by file bootstrapping wasn't initialized
  and starting time defaulted to 0. This later used value by the Now-
  item and is translated to 1970-01-01 11:00:00.
- marking the time with thd->set_time() before the call to 
  mysql_parse resolves this issue.
2007-02-19 09:37:34 +01:00
msvensson@neptunus.(none)
8931166e55 Workaround for problem where cygwin's bash/sh randomly fails with error 128 which
mainly occurs on win2003 64bit.
 - Execute "exec" commands directly with cmd.exe and replace "--exec echo ..." with "--exec .\echo.exe ..."
2007-02-16 15:19:38 +01:00
cmiller@calliope.local.cmiller/calliope.local
80a35bfd39 Merge calliope.local.cmiller:/Volumes/Source/src/mysql-4.1-maint--bug25126
into  calliope.local.cmiller:/Volumes/Source/src/mysql-4.1-maint
2007-02-14 12:24:11 -05:00
cmiller@zippy.cornsilk.net
11e8f48734 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into  zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-4.1-maint
2007-02-13 10:54:04 -05:00
tnurnberg@mysql.com/sin.azundris.com
8dc8e07fcf Merge tnurnberg@bk-internal.mysql.com:/home/bk/mysql-4.1-maint
into  mysql.com:/home/tnurnberg/24660/41-24660
2007-02-12 14:39:45 +01:00
tnurnberg@mysql.com/sin.azundris.com
db7ac2c0c7 Bug#24660: "enum" field type definition problem
ENUMs weren't allowed to have character 0xff, a perfectly good character in some locales.
This was circumvented by mapping 0xff in ENUMs to ',', thereby prevent actual commas from
being used. 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.
2007-02-12 14:31:44 +01:00
cmiller@calliope.local.cmiller/calliope.local
0733ea7462 Bug#25126: Reference to non-existant column in UPDATE...ORDER BY... crashes server
"update existingtable set anycolumn=nonexisting order by nonexisting" would crash
the server.

Though we would find the reference to a field, that doesn't mean we can then use
it to set some values.  It could be a reference to another field.  If it is NULL, 
don't try to use it to set values in the Item_field and instead return an error.

Over the previous patch, this signals an error at the location of the error, rather
than letting the subsequent deref signal it.
2007-02-09 11:05:36 +01:00
tsmith@siva.hindu.god
4579445b2a Merge siva.hindu.god:/home/tsmith/m/bk/41
into  siva.hindu.god:/home/tsmith/m/bk/maint/41
2007-02-08 16:01:13 -07:00
malff/marcsql@weblab.(none)
dc8e36ebcf Merge weblab.(none):/home/marcsql/TREE/mysql-4.1
into  weblab.(none):/home/marcsql/TREE/mysql-4.1-rtmerge
2007-02-08 08:51:13 -07:00
gluh@mysql.com/eagle.(none)
da9f2149de Merge mysql.com:/home/gluh/MySQL/Merge/4.1
into  mysql.com:/home/gluh/MySQL/Merge/4.1-opt
2007-02-08 14:54:49 +04:00
ramil/ram@mysql.com/ramil.myoffice.izhnet.ru
fab56c1f24 Fix for bug #25301: Non-zero dates with year 0000 are invalid
The 0000 year is valid.
The ISO standard for "Representation of dates and times" says:
"Calendar years are numbered in ascending order according to the 
Gregorian calendar by values in the range [0000] to [9999]."

Reverted fix for 21789: DATETIME with 0000-00-00 11:22:33 should be invalid, but is accepted
as it's not a bug.

Fix for 19370: DateTime datatype in MySQL has two bugs in it
will be reverted during 4.1 -> 5.0 merging as it was pushed to the 
5.0 tree.
2007-02-08 11:56:18 +04:00
tomas@poseidon.mysql.com
097c8431e2 Merge tulin@bk-internal.mysql.com:/home/bk/mysql-4.1
into  poseidon.mysql.com:/home/tomas/mysql-4.1-ndb
2007-02-08 00:25:30 +07:00
msvensson@pilot.mysql.com
256cb08ba9 Merge 192.168.0.10:mysql/mysql-4.1-maint
into  pilot.mysql.com:/home/msvensson/mysql/mysql-4.1-maint
2007-02-06 14:44:05 +01:00
msvensson@neptunus.(none)
6502f4300b Merge neptunus.(none):/home/msvensson/mysql/my41-nmj
into  neptunus.(none):/home/msvensson/mysql/mysql-4.1-maint
2007-02-06 14:42:40 +01:00
ramil/ram@mysql.com/myoffice.izhnet.ru
d69e5063b2 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1-maint
into  mysql.com:/usr/home/ram/work/bug23938/my41-bug23938
2007-02-06 14:58:07 +04:00
istruewing@chilla.local
972df14cc6 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into  chilla.local:/home/mydev/mysql-4.1-axmrg
2007-02-02 20:23:03 +01:00
gluh@mysql.com/eagle.(none)
31c3059ae9 Valgrind errors
added valgrind.supp to EXTRA_SCRIPTS(for pushbuild)
2007-02-02 15:01:11 +04:00
istruewing@chilla.local
33e1d1091a Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into  chilla.local:/home/mydev/mysql-4.1-axmrg
2007-02-01 15:51:25 +01:00
gluh@mysql.com/eagle.(none)
010dc0b55c Valgrind error fixes
Notes:
This patch doesn't fix all issues in the tree and we need jani's fix for that
This patch shoud not be merged into 5.0
2007-02-01 18:00:24 +04:00
istruewing@chilla.local
97cf413d55 Merge bk-internal.mysql.com:/home/bk/mysql-4.1-engines
into  chilla.local:/home/mydev/mysql-4.1-axmrg
2007-02-01 07:52:28 +01:00
cmiller@zippy.cornsilk.net
a795b7097f Merge bk-internal.mysql.com:/home/bk/mysql-4.1-maint
into  zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-4.1-maint
2007-01-31 16:26:12 -05:00
cmiller@zippy.cornsilk.net
85896c0af5 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into  zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-4.1-maint
2007-01-31 16:23:10 -05:00
svoj@mysql.com/june.mysql.com
a69107598e Merge mysql.com:/home/svoj/devel/bk/mysql-4.1-engines
into  mysql.com:/home/svoj/devel/mysql/WL3567/mysql-4.1-engines
2007-01-31 16:17:27 +04:00
svoj@mysql.com/june.mysql.com
a51aae601d WL#3567 - MERGE engine: a check for underlying table conformance
When a merge table is opened compare column and key definition of
underlying tables against column and key definition of merge table.

If any of underlying tables have different column/key definition
refuse to open merge table.
2007-01-31 16:15:20 +04:00
ramil/ram@mysql.com/ramil.myoffice.izhnet.ru
10dda8e248 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1-maint
into  mysql.com:/home/ram/work/b19690/b19690.4.1
2007-01-31 14:47:06 +04:00
ramil/ram@mysql.com/ramil.myoffice.izhnet.ru
eb415e4920 fix for bug #19690: ORDER BY eliminates rows from the result
Depending on the queries we use different data processing methods
and can lose some data in case of double (and decimal in 4.1) fields.

The fix consists of two parts:
1. double comparison changed, now double a is equal to double b 
if (a-b) is less than 5*0.1^(1 + max(a->decimals, b->decimals)). 
For example, if a->decimals==1, b->decimals==2, a==b if (a-b)<0.005
2. if we use a temporary table, store double values there as is 
to avoid any data conversion (rounding).
2007-01-31 09:51:05 +04:00
istruewing@chilla.local
79e099e8a6 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into  chilla.local:/home/mydev/mysql-4.1-axmrg
2007-01-29 17:20:18 +01:00
gluh@mysql.com/eagle.(none)
658777d808 Merge mysql.com:/home/gluh/MySQL/Merge/4.1-opt
into  mysql.com:/home/gluh/MySQL/Merge/4.1
2007-01-26 16:28:32 +04:00
igor@olga.mysql.com
36df33d80a Fixed bug #24653.
The bug report has demonstrated the following two problems.
1. If an ORDER/GROUP BY list includes a constant expression being 
optimized away and, at the same time, containing single-row
subselects that return more that one row, no error is reported.
Strictly speaking the standard allows to ignore error in this case.
Yet, now a corresponding fatal error is reported in this case.
2. If a query requires sorting by expressions containing single-row
subselects that, however, return more than one row, then the execution
of the query may cause a server crash. 
To fix this some code has been added that blocks execution of a subselect
item in case of a fatal error in the method Item_subselect::exec.
2007-01-25 18:44:35 -08:00
istruewing@chilla.local
928d672c46 Bug#24607 - MyISAM pointer size determined incorrectly
Fixed test. On 32-bit machines which compile without
-DBIG_TABLES, MAX_ROWS is truncated to a 32-bit value.
Using a value below 4G is portable.
2007-01-24 13:17:01 +01:00
istruewing@chilla.local
26153490ec Merge bk-internal.mysql.com:/home/bk/mysql-4.1-engines
into  chilla.local:/home/mydev/mysql-4.1-bug24607
2007-01-23 22:27:03 +01:00
igor@olga.mysql.com
9659c11b6e Fixed bug #25637: LEFT JOIN with BOOLEAN FULLTEXT loses left table matches.
The bug is actually a duplicate of the bug 14708.
Down-ported the fix for 14708 from 5.0.  
Merged the test case for bug 14708 from 5.0.
2007-01-22 14:23:53 -08:00
df@kahlann.erinye.com
c124372550 after-merge fix 2007-01-22 16:32:57 +01:00
df@kahlann.erinye.com
58bf072264 Merge kahlann.erinye.com:/home/df/mysql/build/mysql-4.1-build-work1-testcases-20061
into  kahlann.erinye.com:/home/df/mysql/build/mysql-4.1-build-work
2007-01-22 16:30:53 +01:00
msvensson@pilot.mysql.com
5c13f0778d Merge bk-internal:/home/bk/mysql-4.1-maint
into  pilot.mysql.com:/home/msvensson/mysql/mysql-4.1-maint
2007-01-22 15:24:46 +01:00
knielsen@ymer.(none)
4d7a8de047 Merge ymer.(none):/usr/local/mysql/mysql-4.1-maint
into  ymer.(none):/usr/local/mysql/x/mysql-4.1-maint
2007-01-22 08:58:49 +01:00
knielsen@ymer.(none)
ba6e6d0754 Implement mysql-test-run.pl option to limit the number of saved core
files. This helps stability of multiple parallel automated test runs,
avoiding the situation where one bad build fills up disk with 1000s of
core files, causing failures in other test runs.
2007-01-19 09:41:08 +01:00
ramil/ram@mysql.com/myoffice.izhnet.ru
6e91557408 after merge fix. 2007-01-19 12:19:53 +04:00
ramil/ram@mysql.com/myoffice.izhnet.ru
ce855aba98 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1-maint
into  mysql.com:/usr/home/ram/work/bug22533/my41-bug22533
2007-01-19 09:12:52 +04:00
malff/marcsql@weblab.(none)
436e1f591a Bug#24562 (ALTER TABLE ... ORDER BY ... with complex expression asserts)
WL#3681 (ALTER TABLE ORDER BY)

Before this fix, the ALTER TABLE statement implemented an ORDER BY option
with the following characteristics :

1) The order by clause accepts a list of criteria, with optional ASC or
DESC keywords

2) Each criteria can be a general expression, involving operators,
native functions, stored functions, user defined functions, subselects ...

With this fix :

1) has been left unchanged, since it's a de-facto existing feature,
that was already present in the code base and partially covered in the test
suite. Code coverage for ASC and DESC was missing and has been improved.

2) has been changed to limit the kind of criteria that are permissible:
now only a column name is valid.
2007-01-18 16:53:49 -07:00
tsmith@siva.hindu.god
f5aab8b213 ndb_types.test: sleep a bit longer, to ensure that timestamp > @now 2007-01-18 13:26:26 -07:00
tsmith@siva.hindu.god
6fd02a439f Merge siva.hindu.god:/home/tsmith/m/bk/mrg-jan17/41
into  siva.hindu.god:/home/tsmith/m/bk/mrg-jan17/maint/41
2007-01-18 09:53:30 -07:00
ramil/ram@mysql.com/myoffice.izhnet.ru
c91d648b73 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1-maint
into  mysql.com:/usr/home/ram/work/bug22533/my41-bug22533
2007-01-18 17:17:03 +04:00
lars/lthalmann@mysql.com/dl145j.mysql.com
bbaf32754f Merge mysql.com:/nfsdisk1/lars/bkroot/mysql-4.1-rpl
into  mysql.com:/nfsdisk1/lars/MERGE/mysql-4.1-merge
2007-01-17 19:28:55 +01:00
msvensson@pilot.mysql.com
bd3283936d Merge 192.168.0.10:mysql/mysql-4.1-maint
into  pilot.mysql.com:/home/msvensson/mysql/mysql-4.1-maint
2007-01-17 13:58:42 +01:00
msvensson@pilot.mysql.com
543bc0165f Bug#21122 SHOW CREATE TABLE: directory output only sometimes
Bug #25000  	myisam.test fails on 'pb-valgrind-*' Valgrind
 - Move tests that need symlink to symlink.test
2007-01-17 12:22:00 +01:00
msvensson@pilot.mysql.com
248c768230 Cset exclude: msvensson@pilot.mysql.com|ChangeSet|20070117102733|42618 2007-01-17 12:12:24 +01:00
msvensson@pilot.mysql.com
55ed38e533 Cset exclude: msvensson@neptunus.(none)|ChangeSet|20060825084614|09755 2007-01-17 11:27:33 +01:00
msvensson@pilot.mysql.com
8154355a07 Merge pilot.mysql.com:/home/msvensson/mysql/mysql-4.1
into  pilot.mysql.com:/home/msvensson/mysql/mysql-4.1-maint
2007-01-17 11:13:03 +01:00
kostja@bodhi.local
51a2f5153f A fix for the broken 4.1-runtime tree. 2007-01-16 21:23:52 +03:00
msvensson@neptunus.(none)
f44d73a58d Always use two masters for ndb tests 2007-01-16 09:35:14 +01:00
kostja@bodhi.local
d53072d190 Merge bk-internal.mysql.com:/home/bk/mysql-4.1-runtime
into  bodhi.local:/opt/local/work/mysql-4.1-4968-to-push
2007-01-15 13:03:21 +03:00
igor@olga.mysql.com
34eea49eb7 Fixed bug #24776: an assertion abort in handler::ha_index_init
for queries using 'range checked for each record'.
The problem was fixed in 5.0 by the patch for bug 12291.
This patch down-ported the corresponding code from 5.0 into 
QUICK_SELECT::init() and added a new test case.
2007-01-13 10:49:26 -08:00
lars/lthalmann@mysql.com/dl145j.mysql.com
22398faa91 Merge mysql.com:/nfsdisk1/lars/bkroot/mysql-4.1-rpl
into  mysql.com:/nfsdisk1/lars/MERGE/mysql-4.1-merge
2007-01-12 12:21:44 +01: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
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
istruewing@chilla.local
a66da6203d Bug#24607 - MyISAM pointer size determined incorrectly
The function mi_get_pointer_length() computed too small
pointer size for very large tables.

Inserted missing 'else' between the branches for very
large tables.
2007-01-05 10:26:51 +01:00
holyfoot/hf@mysql.com/hfmain.(none)
5b1b0a6ff4 Merge mysql.com:/d2/hf/common/my41-common
into  mysql.com:/d2/hf/opt/my41-opt
2007-01-03 11:17:00 +04:00
holyfoot/hf@mysql.com/hfmain.(none)
998167acce embedded-server related fixes 2007-01-02 17:46:20 +04:00
holyfoot/hf@mysql.com/hfmain.(none)
0831699f5c Merge mysql.com:/d2/hf/clean/my41-clean
into  mysql.com:/d2/hf/common/my41-common
2006-12-31 12:37:42 +04:00
ramil/ram@mysql.com/ramil.myoffice.izhnet.ru
10475626c1 Fix for bug #23616: Week() changed behaviour between 5.0.22 and 5.0.24
Consider double values as legal date{time} function's arguments
(i.e. allow dates in internal format YYYYMMDDHHMMSS.XXXXXX).
2006-12-26 15:08:41 +04:00
gluh@mysql.com/eagle.(none)
24a4d9d3f5 Merge mysql.com:/home/gluh/MySQL/Merge/4.1
into  mysql.com:/home/gluh/MySQL/Merge/4.1-opt
2006-12-25 12:58:44 +04:00
tsmith/tim@siva.hindu.god
26c0934ee3 Merge tsmith@bk-internal.mysql.com:/home/bk/mysql-4.1-maint
into  siva.hindu.god:/usr/home/tim/m/bk/41
2006-12-22 13:23:12 -07:00
kaa@polly.local
2e68c3408e Merge polly.local:/tmp/maint/bug24037/my41-bug24037
into  polly.local:/home/kaa/src/maint/mysql-4.1-maint
2006-12-22 16:19:45 +03:00
kaa@polly.local
86a9ad6883 Fix for the bug #24037 "Lossy Hebrew to Unicode conversion".
Added definitions for the following Hebrew characters as specified by the ISO/IEC 8859-8:1999:

LEFT-TO-RIGHT MARK (LRM)
RIGHT-TO-LEFT MARK (RLM)
2006-12-22 15:30:37 +03:00
tsmith/tim@siva.hindu.god
93bbb19fc1 Merge siva.hindu.god:/usr/home/tim/m/bk/g41
into  siva.hindu.god:/usr/home/tim/m/bk/41
2006-12-21 18:18:27 -07:00
msvensson@pilot.mysql.com
e1fcd181ef Merge neptunus:mysql/mysql-4.1-maint
into  pilot.mysql.com:/home/msvensson/mysql/mysql-4.1-maint
2006-12-22 00:58:32 +01:00
msvensson@neptunus.(none)
da6773f97b Count number of masters the test is actually using and only start as
many as neeeded
2006-12-20 23:44:53 +01:00
msvensson@neptunus.(none)
5ccd3608d5 When running with --valgrind and --debug send all the output from
mysqld and valgrind to tracefile.
2006-12-20 16:54:37 +01:00
msvensson@neptunus.(none)
be0368c230 Add possibility to activate --mark-progress of mysqltest 2006-12-20 16:53:06 +01:00
svoj@mysql.com/april.(none)
5424cf19de Merge mysql.com:/home/svoj/devel/bk/mysql-4.1-engines
into  mysql.com:/home/svoj/devel/mysql/BUG21310/mysql-4.1-engines
2006-12-20 19:08:28 +04:00
svoj@mysql.com/april.(none)
5ad9035605 BUG#21310 - Trees in SQL causing a "crashed" table with MyISAM storage engine
An update that used a join of a table to itself and modified the
table on one side of the join reported the table as crashed or
updated wrong rows.

Fixed by creating temporary table for self-joined multi update statement.
2006-12-20 19:05:35 +04:00
df@kahlann.erinye.com
6b27694ac8 remove hard-coded socket paths from some tests 2006-12-19 15:10:15 +01:00
istruewing@chilla.local
f3f5eb5cf6 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into  chilla.local:/home/mydev/mysql-4.1-axmrg
2006-12-19 10:40:53 +01:00
df@kahlann.erinye.com
4a98f36e59 Use a temporary directory for sockets if the socket path becomes too long. 2006-12-18 13:44:21 +01:00
tsmith/tim@siva.hindu.god
8e5be1ad97 myisam.result: a test was moved from the .test file, but the results were not updated. 2006-12-14 16:23:54 -07:00
thek@kpdesk.mysql.com
165ae199ab Merge kpettersson@bk-internal:/home/bk/mysql-4.1-maint
into  kpdesk.mysql.com:/home/thek/dev/mysql-4.1-maint
2006-12-14 16:09:15 +01:00
Kristofer.Pettersson@naruto.
e09e2694d6 Merge kpettersson@bk-internal:/home/bk/mysql-4.1-maint
into  naruto.:C:/cpp/mysql-4.1-maint
2006-12-14 16:02:43 +01:00
thek@kpdesk.mysql.com
1d14b89871 Merge kpdesk.mysql.com:/home/thek/dev/bug17489/my41-bug17498
into  kpdesk.mysql.com:/home/thek/dev/mysql-4.1-maint
2006-12-14 15:30:00 +01:00
df@kahlann.erinye.com
02d6bcaae0 Merge kahlann.erinye.com:/home/df/mysql/build/mysql-4.1-build
into  kahlann.erinye.com:/home/df/mysql/build/mysql-4.1-build-work
2006-12-14 13:32:27 +01:00
thek@kpdesk.mysql.com
29f72a0ba1 Bug#17498 failed to put data file in custom directory use "data directory" option
- When this bug was corrected it changed the behavior 
  for data/index directory in the myisam test case.
- This patch moves the OS depending tests to a non-windows
  test file.
2006-12-14 13:23:31 +01:00
mskold/marty@mysql.com/linux.site
c032cbe03f Merge mskold@bk-internal.mysql.com:/home/bk/mysql-4.1
into  mysql.com:/windows/Linux_space/MySQL/mysql-4.1-ndb
2006-12-14 11:28:28 +01:00
df@kahlann.erinye.com
9497df0b86 Merge kahlann.erinye.com:/home/df/mysql/build/mysql-4.1
into  kahlann.erinye.com:/home/df/mysql/build/mysql-4.1-build
2006-12-14 09:34:24 +01:00
svoj@mysql.com/april.(none)
f92ae8d6c1 Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-4.1-engines
into  mysql.com:/home/svoj/devel/mysql/BUG23404/mysql-4.1-engines
2006-12-13 15:53:37 +04:00
ramil/ram@mysql.com/myoffice.izhnet.ru
46e07cc9d2 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1-maint
into  mysql.com:/usr/home/ram/work/bug22377/my41-bug22377
2006-12-13 14:05:29 +04:00
msvensson@neptunus.(none)
8bc9d6dd41 Improve error message that describes waitpid($pid) returned unexpected result 2006-12-12 12:28:02 +01:00
igor@olga.mysql.com
53d97a7d72 Fixed bug #24670: optimizations that are legal only for subqueries without tables
and no WHERE condition were applied for any subquery without tables.
2006-12-11 18:57:23 -08:00
Kristofer.Pettersson@naruto.
119afb19c3 Merge naruto.:C:/cpp/bug17489/my41-bug17489
into  naruto.:C:/cpp/mysql-4.1-maint
2006-12-11 13:06:59 +01:00
gluh@mysql.com/gluh.(none)
f0f4d3c0bd Merge mysql.com:/home/gluh/MySQL/Merge/4.1
into  mysql.com:/home/gluh/MySQL/Merge/4.1-opt
2006-12-11 15:32:07 +04:00
msvensson@neptunus.(none)
ba6d2bbf64 Pass --no-defaults to embedded server to avoid that it reads any defaults file 2006-12-11 12:16:20 +01:00
df@kahlann.erinye.com
78e1df3e9f Merge kahlann.erinye.com:/home/df/mysql/build/mysql-4.1
into  kahlann.erinye.com:/home/df/mysql/build/mysql-4.1-build
2006-12-11 10:51:29 +01:00