Commit graph

21023 commits

Author SHA1 Message Date
istruewing@chilla.local
1daa6a710d Merge chilla.local:/home/mydev/mysql-4.1-bug8283
into  chilla.local:/home/mydev/mysql-4.1-bug8283-one
2006-10-09 19:40:16 +02:00
istruewing@chilla.local
5f08a83186 Bug#8283 - OPTIMIZE TABLE causes data loss
OPTIMIZE TABLE with myisam_repair_threads > 1 performs a non-quick 
parallel repair. This means that it does not only rebuild all 
indexes, but also the data file.

Non-quick parallel repair works so that there is one thread per 
index. The first of the threads rebuilds also the new data file.

The problem was that all threads shared the read io cache on the
old data file. If there were holes (deleted records) in the table,
the first thread skipped them, writing only contiguous, non-deleted
records to the new data file. Then it built the new index so that
its entries pointed to the correct record positions. But the other
threads didn't know the new record positions, but put the positions
from the old data file into the index.

The new design is so that there is a shared io cache which is filled
by the first thread (the data file writer) with the new contiguous
records and read by the other threads. Now they know the new record
positions.

Another problem was that for the parallel repair of compressed
tables a common bit_buff and rec_buff was used. I changed it so
that thread specific buffers are used for parallel repair.

A similar problem existed for checksum calculation. I made this
multi-thread safe too.
2006-10-09 19:26:55 +02:00
svoj@mysql.com/april.(none)
09b2a2a056 Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-4.1-engines
into  mysql.com:/home/svoj/devel/mysql/BUG22937/mysql-4.1-engines
2006-10-06 15:18:25 +05:00
svoj@mysql.com/april.(none)
1e82044cd6 BUG#22937 - Valgrind failure in 'merge' test (ha_myisammrg.cc:329)
This is addition to fix for bug21617. Valgrind reports an error when
opening merge table that has underlying tables with less indexes than
in a merge table itself.

Copy at most min(file->keys, table->key_parts) elements from rec_per_key array.
This fixes problems when merge table and subtables have different number of keys.
2006-10-06 15:17:42 +05:00
svoj@mysql.com/april.(none)
6a1a765b5d Per discussion with pekka removed non-deterministic test case for bug#21381. 2006-10-06 14:47:58 +05:00
svoj@mysql.com/april.(none)
c67aa031d6 Addition to fix for bug#10974. Fixed spelling. 2006-10-06 10:54:47 +05:00
svoj@mysql.com/april.(none)
16c13a588f Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-4.1-engines
into  mysql.com:/home/svoj/devel/mysql/BUG21381/mysql-4.1-engines
2006-10-05 18:56:10 +05:00
svoj@mysql.com/april.(none)
b141a7c1b9 BUG#21381 - Engine not notified about multi-table UPDATE IGNORE
Though this is not storage engine specific problem, I was able to
repeat this problem with BDB and NDB engines only. That was the
reason to add a test case into ndb_update.test. As a result
different bad things could happen.

BDB has removed duplicate rows which is not expected.
NDB returns an error.

For multi table update notify storage engine about UPDATE IGNORE
as it is done in single table UPDATE.
2006-10-05 18:23:53 +05:00
svoj@mysql.com/april.(none)
5f3cf1eca3 Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-4.0
into  mysql.com:/home/svoj/devel/mysql/merge/mysql-4.1-engines
2006-10-02 14:46:10 +05:00
svoj@mysql.com/april.(none)
7afbe5f86e Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-4.1
into  mysql.com:/home/svoj/devel/mysql/merge/mysql-4.1-engines
2006-10-02 14:42:12 +05:00
istruewing@chilla.local
c2d73af1b2 Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into  chilla.local:/home/mydev/mysql-4.0-bug20719
2006-09-29 19:55:09 +02:00
istruewing@chilla.local
5ad8f1c464 Merge bk-internal.mysql.com:/home/bk/mysql-4.1-engines
into  chilla.local:/home/mydev/mysql-4.1-bug22384
2006-09-29 17:17:01 +02:00
svoj@mysql.com/april.(none)
0297046a10 Fix a test case according to fix for bug#10974. 2006-09-29 19:00:52 +05:00
istruewing@chilla.local
fd2a6a7a40 Merge chilla.local:/home/mydev/mysql-4.0-bug22384
into  chilla.local:/home/mydev/mysql-4.1-bug22384
2006-09-28 21:47:42 +02:00
svoj@mysql.com/april.(none)
2de51adffa Merge mysql.com:/home/svoj/devel/bk/mysql-4.1-engines
into  mysql.com:/home/svoj/devel/mysql/BUG21617/mysql-4.1-engines
2006-09-28 22:14:31 +05:00
svoj@mysql.com/april.(none)
b271d7653b BUG#21617 - crash when selecting from merge table with inconsistent indexes
Crash may happen when selecting from a merge table that has underlying
tables with less indexes than in a merge table itself.

If number of keys in merge table is not bigger than requested key number,
return error.
2006-09-28 22:10:06 +05:00
istruewing@chilla.local
52758d8615 Merge bk-internal.mysql.com:/home/bk/mysql-4.1-engines
into  chilla.local:/home/mydev/mysql-4.1-bug20719-m
2006-09-28 12:20:17 +02:00
istruewing@chilla.local
4027fc8dca Bug#22384 - DELETE FROM table causes "Incorrect key file for table"
Deletes on a big index could crash the index when it needs to
shrink.

Put a forgotten negation operator in.

No test case. It is too big for the test suite. And it does not
work with 4.0, only with higher versions. It is attached to the
bug report.
2006-09-28 11:41:38 +02:00
gkodinov@dl145s.mysql.com
55cc4fd5c6 Merge dl145s.mysql.com:/data/bk/team_tree_merge/mysql-4.1
into  dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-4.1-opt
2006-09-28 10:19:25 +02:00
gluh@mysql.com/gluh.(none)
a039376c43 Patch for bug#21432 is reverted 2006-09-27 17:49:16 +05:00
svoj@mysql.com/april.(none)
a324cb8934 Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-4.1-engines
into  mysql.com:/home/svoj/devel/mysql/merge/mysql-4.1-engines
2006-09-27 15:34:52 +05:00
istruewing@chilla.local
cab5981250 Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into  chilla.local:/home/mydev/mysql-4.0-bug20719
2006-09-27 12:29:12 +02:00
istruewing@chilla.local
ac778232cd Bug#20719 - Reading dynamic records with write buffer could fail
After merge fix.
2006-09-27 11:55:30 +02:00
istruewing@chilla.local
6ff6d80e57 Merge chilla.local:/home/mydev/mysql-4.1-bug20719
into  chilla.local:/home/mydev/mysql-4.1-bug20719-m
2006-09-27 09:30:54 +02:00
holyfoot/hf@mysql.com/deer.(none)
4716c99a17 Merge bk@192.168.21.1:mysql-4.1-opt
into  mysql.com:/home/hf/work/mysql-4.1.15428
2006-09-27 11:44:05 +05:00
igor@rurik.mysql.com
55dd569bab Fixed bug : assert failure for a grouping query with
an ALL/ANY quantified subquery in HAVING.
The Item::split_sum_func2 method should not create Item_ref
for objects of any class derived from Item_subselect.
2006-09-25 05:24:07 -07:00
holyfoot/hf@mysql.com/deer.(none)
14b16d89d9 Merge mysql.com:/home/hf/work/mysql-4.1.12991
into  mysql.com:/home/hf/work/mysql-4.1.15428
2006-09-25 16:35:57 +05:00
holyfoot/hf@mysql.com/deer.(none)
4a9cff00c5 Merge bk@192.168.21.1:mysql-4.1-opt
into  mysql.com:/home/hf/work/mysql-4.1.15428
2006-09-25 16:33:51 +05:00
kent@mysql.com/c-644072d5.010-2112-6f72651.cust.bredbandsbolaget.se
878416e054 mysql_config.sh:
Filter out plain -O and Sun C/C++ style optimization flags, -xO<level>
  Filter out icc specific options from cflags/libs(_r)
2006-09-25 00:54:46 +02:00
istruewing@chilla.local
af6b36e818 Merge chilla.local:/home/mydev/mysql-4.0-bug14400
into  chilla.local:/home/mydev/mysql-4.1-bug14400-monty
2006-09-23 11:24:47 +02:00
lars/lthalmann@mysql.com/dl145h.mysql.com
80dadacb03 Merge mysql.com:/users/lthalmann/bkroot/mysql-4.1
into  mysql.com:/users/lthalmann/bk/MERGE/mysql-4.1-merge
2006-09-23 07:11:32 +02:00
lars/lthalmann@mysql.com/dl145h.mysql.com
7e45d80362 Merge mysql.com:/users/lthalmann/bkroot/mysql-4.1-rpl
into  mysql.com:/users/lthalmann/bk/MERGE/mysql-4.1-merge
2006-09-23 05:58:48 +02:00
istruewing@chilla.local
2b121cd0e1 Bug#14400 - Query joins wrong rows from table which is subject of
"concurrent insert"
After merge fix.
2006-09-22 17:23:25 +02:00
istruewing@chilla.local
9d0cedffad Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into  chilla.local:/home/mydev/mysql-4.0-bug14400
2006-09-22 15:06:01 +02:00
istruewing@chilla.local
bb2a7fec48 Merge chilla.local:/home/mydev/mysql-4.0--team
into  chilla.local:/home/mydev/mysql-4.0-bug14400
2006-09-22 15:03:50 +02:00
lars/lthalmann@mysql.com/dl145h.mysql.com
9538acf5dc Adding proper setup phase for test case rpl_insert_id 2006-09-21 13:19:52 +02:00
lars/lthalmann@mysql.com/dl145h.mysql.com
fe782f92d6 Vertical printout in test to make easier to read 2006-09-21 03:32:42 +02:00
igor@rurik.mysql.com
d957636471 Fixed bug .
Any default value for a enum fields over UCS2 charsets was corrupted
when we put it into the frm file, as it had been overwritten by its
HEX representation.
To fix it now we save a copy of structure that represents the enum
type and when putting the default values we use this copy.
2006-09-20 09:46:12 -07:00
lars/lthalmann@mysql.com/dl145j.mysql.com
0c03f9348d Merge mysql.com:/users/lthalmann/bkroot/mysql-4.1-rpl
into  mysql.com:/users/lthalmann/bk/MERGE/mysql-4.1-merge
2006-09-20 16:17:30 +02:00
istruewing@chilla.local
1782889d35 Merge bk-internal.mysql.com:/home/bk/mysql-4.1-engines
into  chilla.local:/home/mydev/mysql-4.1-bug14400-monty
2006-09-20 08:33:46 +02:00
svoj@mysql.com/april.(none)
c0ebc0fb2a BUG#10974 - No error message if merge table based on union of innodb, memory
Fixed confusing error message from the storage engine when
it fails to open underlying table. The error message is issued
when a table is _opened_ (not when it is created).
2006-09-20 01:40:59 +05:00
igor@rurik.mysql.com
294c0ccaa9 Merge ibabaev@bk-internal.mysql.com:/home/bk/mysql-4.1-opt
into  rurik.mysql.com:/home/igor/mysql-4.1-opt
2006-09-19 08:42:58 -07:00
istruewing@chilla.local
47dc3fbe8a Merge bk-internal:/home/bk/mysql-4.0
into  chilla.local:/home/mydev/mysql-4.1-bug14400-monty
2006-09-19 10:17:25 +02:00
svoj@may.pils.ru
43097593e3 Merge may.pils.ru:/home/svoj/devel/mysql/merge/mysql-4.1
into  may.pils.ru:/home/svoj/devel/mysql/merge/mysql-4.1-engines
2006-09-18 20:35:33 +05:00
gkodinov@dl145s.mysql.com
fcf99e859f Merge bk-internal:/home/bk/mysql-4.1-opt
into  dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-4.1-opt
2006-09-18 11:09:56 +02:00
igor@rurik.mysql.com
dd3b8e4f9a Fixed bug : Crash on the execution of a prepared
statement that uses an aggregating IN subquery with 
HAVING clause.
A wrong order of the call of split_sum_func2 for the HAVING
clause of the subquery and the transformation for the 
subquery resulted in the creation of a andor structure
that could not be restored at an execution of the prepared
statement.
2006-09-16 11:50:00 -07:00
gkodinov/kgeorge@macbook.gmz
c73d2318a3 Merge bk-internal:/home/bk/mysql-4.1-opt
into  macbook.gmz:/Users/kgeorge/mysql/work/B21180-4.1-opt
2006-09-15 18:56:05 +03:00
istruewing@chilla.local
45f7514d03 Merge bk-internal.mysql.com:/home/bk/mysql-4.1-engines
into  chilla.local:/home/mydev/mysql-4.1-bug14400
2006-09-15 14:02:43 +02:00
gkodinov@dl145s.mysql.com
325f820909 Merge dl145s.mysql.com:/data/bk/team_tree_merge/CLEAN/mysql-4.1
into  dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-4.1-opt
2006-09-15 11:43:28 +02:00
lars/lthalmann@mysql.com/dl145j.mysql.com
ec51f809b8 Merge mysql.com:/users/lthalmann/bkroot/mysql-4.1-rpl
into  mysql.com:/users/lthalmann/bk/MERGE/mysql-4.1-merge
2006-09-15 01:15:39 +02:00