Commit graph

21107 commits

Author SHA1 Message Date
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
svoj@mysql.com/april.(none)
d2fa9fd192 Merge mysql.com:/home/svoj/devel/mysql/BUG23175/mysql-4.1-engines
into  mysql.com:/home/svoj/devel/mysql/engines/mysql-4.1-engines
2006-10-19 17:35:09 +05:00
svoj@mysql.com/april.(none)
b6f909bf1b Merge mysql.com:/home/svoj/devel/mysql/BUG22562/mysql-4.1-engines
into  mysql.com:/home/svoj/devel/mysql/engines/mysql-4.1-engines
2006-10-19 17:33:22 +05:00
istruewing@chilla.local
73cdbb4e7a Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into  chilla.local:/home/mydev/mysql-4.1-merge
2006-10-19 09:44:51 +02:00
svoj@mysql.com/april.(none)
a2e0059f3c BUG#23175 - MYISAM crash/repair failed during repair
Repair table could crash a server if there is not sufficient
memory (myisam_sort_buffer_size) to operate. Affects not only
repair, but also all statements that use create index by sort:
repair by sort, parallel repair, bulk insert.

Return an error if there is not sufficient memory to store at
least one key per BUFFPEK.

Also fixed memory leak if thr_find_all_keys returns an error.
2006-10-18 17:57:29 +05:00
istruewing@chilla.local
647dee0316 Merge bk-internal.mysql.com:/home/bk/mysql-4.1-engines
into  chilla.local:/home/mydev/mysql-4.1-bug12240
2006-10-17 09:33:58 +02:00
istruewing@chilla.local
c4dee7caa0 Merge chilla.local:/home/mydev/mysql-4.1--team
into  chilla.local:/home/mydev/mysql-4.1-bug12240
2006-10-16 13:01:41 +02:00
kroki/tomash@moonlight.intranet
de22ac7f74 Merge moonlight.intranet:/home/tomash/src/mysql_ab/mysql-4.1
into  moonlight.intranet:/home/tomash/src/mysql_ab/mysql-4.1-bug9678
2006-10-13 14:44:21 +04:00
kroki/tomash@moonlight.intranet
ec523c650e Merge moonlight.intranet:/home/tomash/src/mysql_ab/mysql-4.0
into  moonlight.intranet:/home/tomash/src/mysql_ab/mysql-4.1-bug9678
2006-10-13 14:26:28 +04:00
istruewing@chilla.local
3ee35a7618 Merge bk-internal.mysql.com:/home/bk/mysql-4.1-engines
into  chilla.local:/home/mydev/mysql-4.1-bug8283-one
2006-10-11 22:28:06 +02:00
svoj@mysql.com/april.(none)
62b2044279 BUG#22562 - REPAIR TABLE .. USE_FRM causes server crash on Windows and server
hangs on Linux

If REPAIR TABLE ... USE_FRM is issued for table that is located in different
than default database server crash could happen.

In reopen_name_locked_table take database name from table_list (user specified
or default database) instead of from thd (default database).

Affects 4.1 only.
2006-10-11 20:34:20 +05:00
istruewing@chilla.local
296d64dbc3 Bug#12240 - Rows Examined in Slow Log showing incorrect number?
Examined rows are counted for every join part. The per-join-part
counter was incremented over all iterations. The result variable
was replaced at the end of every iteration. The final result was
the number of examined rows by the join part that ended its
execution as the last one. The numbers of other join parts was
lost.

Now we reset the per-join-part counter before every iteration and
add it to the result variable at the end of the iteration. That
way we get the sum of all iterations of all join parts.

No test case. Testing this needs a look into the slow query log.
I don't know of a way to do this portably with the test suite.
2006-10-11 12:24:59 +02:00
msvensson@neptunus.(none)
5dded17489 Merge bk-internal:/home/bk/mysql-4.1-rpl
into  neptunus.(none):/home/msvensson/mysql/mysql-4.1
2006-10-11 10:12:59 +02:00
lars@mysql.com/black.(none)
89b1b45b11 Merge mysql.com:/home/bkroot/mysql-4.1-rpl
into  mysql.com:/home/bk/MERGE/mysql-4.1-merge
2006-10-10 21:58:24 +02:00
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@may.pils.ru
b7f016dbd3 Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-4.1
into  may.pils.ru:/home/svoj/devel/bk/mysql-4.1-engines
2006-10-08 15:11:17 +05: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
gluh@mysql.com/gluh.(none)
4f553f1d5f Merge mysql.com:/home/gluh/MySQL/Merge/4.1
into  mysql.com:/home/gluh/MySQL/Merge/4.1-kt
2006-10-05 16:38:21 +05:00
msvensson@neptunus.(none)
035b54049e Merge bk-internal:/home/bk/mysql-4.1-runtime
into  neptunus.(none):/home/msvensson/mysql/mysql-4.1-maint
2006-10-03 12:55:33 +02:00
msvensson@neptunus.(none)
2ef628bfad Merge bk-internal:/home/bk/mysql-4.1-maint
into  neptunus.(none):/home/msvensson/mysql/mysql-4.1-maint
2006-10-03 11:45:19 +02:00
msvensson@neptunus.(none)
cc0f26c83f Merge bk-internal:/home/bk/mysql-4.1-rpl
into  neptunus.(none):/home/msvensson/mysql/mysql-4.1-maint
2006-10-03 11:20:37 +02:00
msvensson@neptunus.(none)
ffeaf3eb85 Merge neptunus.(none):/home/msvensson/mysql/mysql-4.1
into  neptunus.(none):/home/msvensson/mysql/mysql-4.1-maint
2006-10-03 11:19:00 +02:00
msvensson@shellback.(none)
60f9a9a8aa Merge bk-internal:/home/bk/mysql-4.1-maint
into  shellback.(none):/home/msvensson/mysql/mysql-4.1-maint
2006-10-03 08:59:00 +02:00
bar@mysql.com/bar.intranet.mysql.r18.ru
72ad606ece Merge mysql.com:/usr/home/bar/mysql-4.1.b8663
into  mysql.com:/usr/home/bar/mysql-4.1-rpl
2006-10-03 11:53:01 +05:00
dlenev@mockturtle.local
c30b6eafac Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into  mockturtle.local:/home/dlenev/src/mysql-4.1-rt-merge
2006-10-03 08:19:06 +04:00
msvensson@shellback.(none)
600586c680 Merge bk-internal:/home/bk/mysql-4.1-maint
into  shellback.(none):/home/msvensson/mysql/mysql-4.1-maint
2006-10-03 00:51:23 +02:00
msvensson@shellback.(none)
b975b4a793 Add ATTRIBUTE_FORMAT_FPTR macro for setting format specifier also on function pointers
This was available from gcc 3.1, so diable it before that
Update m_ctype.h to use the new macro
2006-10-03 00:48:26 +02:00
tsmith/tim@siva.hindu.god
1d5d5a1c4a Merge siva.hindu.god:/usr/home/tim/m/bk/40
into  siva.hindu.god:/usr/home/tim/m/bk/41
2006-10-02 16:18:42 -06:00
tsmith/tim@siva.hindu.god
65dd6e0c1e Merge tsmith@bk-internal.mysql.com:/home/bk/mysql-4.1
into  siva.hindu.god:/usr/home/tim/m/bk/41
2006-10-02 16:16:24 -06:00
tsmith/tim@siva.hindu.god
3e20a10899 Merge tsmith@bk-internal.mysql.com:/home/bk/mysql-4.0
into  siva.hindu.god:/usr/home/tim/m/bk/40
2006-10-02 16:13:58 -06:00
msvensson@neptunus.(none)
d5ad8ff4a2 Remove faulty merge 2006-10-02 14:05:36 +02:00
msvensson@neptunus.(none)
cb0a874c11 When compiling with qcc on QNC the define __GNUC__will be set although it doesn't support full GNU syntax
- disable __attribute__ when using qcc
2006-10-02 13:53:10 +02:00
msvensson@neptunus.(none)
c3a1980e16 Remove faulty merge causing ctype_utf8 failure 2006-10-02 13:47:18 +02:00
msvensson@neptunus.(none)
1517d37048 Fix __attribute__(A) macro (it formerly used bogus __cplusplus__ symbol) 2006-10-02 13:46:40 +02:00
msvensson@neptunus.(none)
1dc026f79d Merge bk-internal:/home/bk/mysql-4.1-maint
into  neptunus.(none):/home/msvensson/mysql/mysql-4.1-maint
2006-10-02 13:36:30 +02:00
msvensson@neptunus.(none)
b277139b0c Merge neptunus.(none):/home/msvensson/mysql/mysql-4.1
into  neptunus.(none):/home/msvensson/mysql/mysql-4.1-maint
2006-10-02 13:18:54 +02: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
jimw@rama.(none)
34531d261b Merge bk-internal:/home/bk/mysql-4.1-maint
into  rama.(none):/home/jimw/my/mysql-4.1-clean
2006-09-29 19:29:12 -07:00
jimw@rama.(none)
52d22ad827 Disable __attribute__ entirely on g++ < 3.4. (Bug #2717) 2006-09-29 19:28:16 -07:00
jimw@rama.(none)
5963b5af0f Merge bk-internal:/home/bk/mysql-4.1-maint
into  rama.(none):/home/jimw/my/mysql-4.1-clean
2006-09-29 19:26:33 -07:00
cmiller@zippy.cornsilk.net
cca474bb67 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into  zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-4.1-maint
2006-09-29 17:23:44 -04: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