Commit graph

91 commits

Author SHA1 Message Date
iggy@amd64.(none)
1378e94aa0 Merge bk-internal.mysql.com:/home/bk/mysql-5.0-maint
into  amd64.(none):/src/bug27029/my50-bug27029
2007-06-21 12:52:20 -04:00
iggy@amd64.(none)
39416f50a5 Bug#27029 alter table ... enable keys crashes mysqld on large table
- When creating an index for the sort, the number of rows plus 1 is used 
to allocate a buffer.  In this test case, the number of rows 4294967295 
is the max value of an unsigned integer, so when 1 was added to it, a 
buffer of size 0 was allocated causing the crash.
- Create new test suite for this bug's test suite as per QA.
2007-06-21 12:45:56 -04:00
dkatz@damien-katzs-computer.local
41dac22271 Bug #27119 server crash with integer division by zero during filesort on huge result
Added checks to detect integer overflow and fixed other bugs on the error path.
2007-05-16 16:14:13 -04:00
cmiller@zippy.cornsilk.net
5f895fef79 Merge zippy.cornsilk.net:/home/cmiller/work/mysql/bug27976/my41-bug27976
into  zippy.cornsilk.net:/home/cmiller/work/mysql/bug27976/my50-bug27976
2007-05-04 19:04:09 -04:00
cmiller@zippy.cornsilk.net
b6502ddb19 Bug #27976: Misleading error message, 'Sort buffer to small'
The message is gramatically wrong, and factually wrong.

Change it to refer to the myisam_sort_buffer_size variable and change
"to" to "too".
2007-05-04 17:38:29 -04:00
monty@mysql.com/narttu.mysql.fi
a04157fbb3 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/my/mysql-5.0
2007-01-22 14:04:40 +02:00
kent@mysql.com/kent-amd64.(none)
6523aca729 my_strtoll10-x86.s:
Corrected spelling in copyright text
Makefile.am:
  Don't update the files from BitKeeper
Many files:
  Removed "MySQL Finland AB & TCX DataKonsult AB" from copyright header
  Adjusted year(s) in copyright header 
Many files:
  Added GPL copyright text
Removed files:
  Docs/Support/colspec-fix.pl
  Docs/Support/docbook-fixup.pl
  Docs/Support/docbook-prefix.pl
  Docs/Support/docbook-split
  Docs/Support/make-docbook
  Docs/Support/make-makefile
  Docs/Support/test-make-manual
  Docs/Support/test-make-manual-de
  Docs/Support/xwf
2006-12-31 01:02:27 +01:00
kent@mysql.com/kent-amd64.(none)
226a5c833f Many files:
Changed header to GPL version 2 only
2006-12-23 20:17:15 +01:00
monty@mysql.com/narttu.mysql.fi
88dd873de0 Fixed compiler warnings detected by option -Wshadow and -Wunused:
- Removed not used variables and functions
- Added #ifdef around code that is not used
- Renamed variables and functions to avoid conflicts
- Removed some not used arguments

Fixed some class/struct warnings in ndb
Added define IS_LONGDATA() to simplify code in libmysql.c

I did run gcov on the changes and added 'purecov' comments on almost all lines that was not just variable name changes
2006-12-15 00:51:37 +02:00
joerg@trift2.
2ab3d0bfb4 Merge trift2.:/MySQL/M41/clone-4.1
into  trift2.:/MySQL/M41/push-4.1
2006-11-10 15:52:53 +01:00
msvensson@neptunus.(none)
63091e074a Merge neptunus.(none):/home/msvensson/mysql/mysql-4.1-maint
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-11-03 16:18:32 +01:00
iggy@rolltop.ignatz42.dyndns.org
1d66d35fb3 Fix compile failure. 2006-11-02 21:03:41 -05:00
kent/mysqldev@suse9-x86.mysql.com
7c2ff3c307 sort.c:
Create block around DBUG_ENTER late in function
2006-11-03 02:35:09 +01:00
cmiller@zippy.cornsilk.net
c34f3219b3 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into  zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-4.1-maint
2006-11-02 17:27:42 -05:00
msvensson@shellback.(none)
ac54f00f00 Add an extra block to avoid that DBUG_ENTER declare variables after code 2006-10-30 13:08:57 +01:00
tsmith/tim@siva.hindu.god
3af2089b13 Merge siva.hindu.god:/usr/home/tim/m/bk/g50
into  siva.hindu.god:/usr/home/tim/m/bk/50
2006-10-24 14:42:08 -06:00
svoj@mysql.com/april.(none)
2d9e457460 Merge mysql.com:/home/svoj/devel/mysql/engines/mysql-4.1-engines
into  mysql.com:/home/svoj/devel/mysql/engines/mysql-5.0-engines
2006-10-19 18:04:34 +05: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
andrey@example.com
dfa7dbf241 Merge example.com:/work/bug23074/my41-bug23074
into  example.com:/work/bug23074/my50-bug23074
2006-10-11 11:14:42 +02:00
andrey@example.com
a846909e6a Fix a typo regarding checking whether HA_VAR_LENGTH_KEY is
set. This has always worked because when flag is !=0 then
HA_VAR_LENGTH_KEY is always set. Therefore, a test case cannot
reveal a faulty behavior.

Fix for bug#23074: typo in myisam/sort.c
2006-10-11 11:07:25 +02:00
istruewing@chilla.local
c299de14ee Merge chilla.local:/home/mydev/mysql-4.1-bug8283-one
into  chilla.local:/home/mydev/mysql-5.0-bug8283
2006-10-09 20:03:12 +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
91e94d781f Merge may.pils.ru:/home/svoj/devel/mysql/BUG18874/mysql-4.1
into  may.pils.ru:/home/svoj/devel/mysql/BUG18874/mysql-5.0
2006-08-14 18:08:33 +05:00
svoj@may.pils.ru
d4bdba176f BUG#18874 - Setting myisam_repair_threads > 1, index cardinality always 1
Fixed by moving update_key_parts() down to be after write_index().
2006-08-14 17:05:02 +05:00
serg@serg.mylan
14f94dc0ca many warnings (practically safe but annoying) corrected 2006-01-03 17:54:54 +01:00
jani@ua141d10.elisa.omakaista.fi
cbe21a8eb6 Merge ua141d10.elisa.omakaista.fi:/home/my/bk/mysql-4.1
into  ua141d10.elisa.omakaista.fi:/home/my/bk/mysql-5.0-tmp
2005-10-27 23:43:20 +03:00
sergefp@mysql.com
15a78334c3 BUG#9622, stage 2, work together with fix for BUG#12232:
added "nulls_ignored" index statistics collection method for MyISAM tables.
(notification trigger: this is about BUG#9622).
2005-10-21 06:29:17 +04:00
serg@serg.mylan
e91712d9bb pthread_handler_decl() changed to be ctags-friendly
(and contain extern "C" when necessary)
2005-10-08 16:39:55 +02:00
igor@rurik.mysql.com
b5f33d2bc4 Manual merge 2005-08-02 12:09:49 -07:00
svoj@mysql.com
a4d6113d22 After merge fix. 2005-08-02 12:57:26 +05:00
svoj@mysql.com
0f98bf44ef Merge mysql.com:/home/svoj/devel/mysql/BUG11684/mysql-4.0
into  mysql.com:/home/svoj/devel/mysql/BUG11684/mysql-4.1
2005-08-02 12:12:37 +05:00
svoj@mysql.com
19fe33e16c BUG#11684 fix.
Repair crashes mysql when table has fulltext index.
2005-08-02 11:33:26 +05:00
ingo@mysql.com
ec15dda2bf Bug#10932 - Building server with key limit of 128, makes test cases fail
This patch allows to configure MyISAM for 128 indexes per table.
The main problem is the key_map, wich is implemented as an ulonglong.
To get rid of the limit and keep the efficient and flexible
implementation, the highest bit is now used for all upper keys.
This means that the lower keys can be disabled and enabled 
individually as usual and the high keys can only be disabled and
enabled as a block. That way the existing test suite is still
applicable, while more keys work, though slightly less efficient.
To really get more than 64 keys, some defines need to be changed.
Another patch will address this.
2005-07-19 14:13:56 +02:00
serg@serg.mylan
c76405a7ee merged 2005-01-24 19:41:42 +01:00
serg@serg.mylan
67ba2e367a fixes/cleanups according to Coverity report 2005-01-24 15:48:25 +01:00
monty@mishka.local
4f4bbfc279 Merge with 4.1 2004-12-22 13:54:39 +02:00
konstantin@mysql.com
2083ecd124 myisam/sort.c:my_var_write and mysys/hash.c:hash_key made static inline,
not simply inline, to fix the linking failure on Sun Solaris 9 (sparc)
with Sun Studio 9, reported by Peter Harvey.
2004-12-16 02:43:35 +03:00
monty@mysql.com
31122efde7 Merge with 4.1
(Includes merge of arena code in 4.1 and 5.0)
2004-09-06 15:14:10 +03:00
serg@serg.mylan
b60713c033 bug in my_strnncoll_utf8 (and friends) fixed
cleanups
better, charset-dependent, ft_max_len_for_sort value
2004-08-30 08:37:36 +02:00
serg@serg.mylan
2fd11169ab failing fulltext_order_by.test fixed 2004-07-15 17:30:55 +02:00
monty@mysql.com
5b3c418b48 After merge fixes
Note: The following tests fails
- fulltext (Sergei has promised to fix)
- rpl_charset (Guilhem should fix)
- rpl_timezone (Dimitray has promised to fix)

Sanja needs to check out the calling of close_thread_tables() in sp_head.cc
2004-07-15 04:19:07 +03:00
monty@mysql.com
1e31199995 Merge with 4.1.3-beta 2004-07-07 11:29:39 +03:00
monty@mysql.com
3ad2158b42 Portability fixes 2004-05-27 12:03:16 +03:00
pem@mysql.com
63f4858030 Merged 4.1 -> 5.0 2003-12-05 13:11:50 +01:00
serg@serg.mylan
3f1d0acbad make a clear distinction between max_word_length in *characters* and in *bytes* 2003-12-04 21:58:28 +01:00
pem@mysql.com
6e717133c5 Merge 4.1 to 5.0 2003-12-01 16:14:40 +01:00
monty@mysql.com
7c6113a39f Merge key cache structures to one
Fixed compiler warnings (IRIX C compiler and VC++)
2003-11-20 22:06:25 +02:00
pem@mysql.telia.com
9c3a7a6ba3 Merge 4.1 into 5.0 (first pass). 2003-07-08 17:50:23 +02:00
monty@narttu.mysql.fi
dd2b7918cd Merge with 4.0.13 2003-05-19 16:35:49 +03:00