Commit graph

864 commits

Author SHA1 Message Date
unknown
a55b35c928 Fix for bug #10893 (myisamchk fails on packed spatial)
need to be fixed in 4.1


myisam/mi_create.c:
  now we decrease on the proper value
2005-07-23 20:04:15 +05:00
unknown
44589256c8 Added some missing casts and changed a define for alloca().
client/mysqldump.c:
  Added casts.
include/my_sys.h:
  Define for alloca() changed for Metrowerks compiler.
myisam/rt_split.c:
  Added cast.
2005-07-20 13:27:57 +03:00
unknown
b0a6a8e137 Makefile.am:
Added -I$(top_builddir)/include for searching
  generated header files, when builddir != srcdir


client/Makefile.am:
  Added -I$(top_builddir)/include for searching
  generated header files, when builddir != srcdir
cmd-line-utils/libedit/Makefile.am:
  Added -I$(top_builddir)/include for searching
  generated header files, when builddir != srcdir
dbug/Makefile.am:
  Added -I$(top_builddir)/include for searching
  generated header files, when builddir != srcdir
extra/Makefile.am:
  Added -I$(top_builddir)/include for searching
  generated header files, when builddir != srcdir
heap/Makefile.am:
  Added -I$(top_builddir)/include for searching
  generated header files, when builddir != srcdir
isam/Makefile.am:
  Added -I$(top_builddir)/include for searching
  generated header files, when builddir != srcdir
libmysql/Makefile.am:
  Added -I$(top_builddir)/include for searching
  generated header files, when builddir != srcdir
libmysql_r/Makefile.am:
  Added -I$(top_builddir)/include for searching
  generated header files, when builddir != srcdir
libmysqld/Makefile.am:
  Added -I$(top_builddir)/include for searching
  generated header files, when builddir != srcdir
libmysqld/examples/Makefile.am:
  Added -I$(top_builddir)/include for searching
  generated header files, when builddir != srcdir
merge/Makefile.am:
  Added -I$(top_builddir)/include for searching
  generated header files, when builddir != srcdir
myisam/Makefile.am:
  Added -I$(top_builddir)/include for searching
  generated header files, when builddir != srcdir
myisammrg/Makefile.am:
  Added -I$(top_builddir)/include for searching
  generated header files, when builddir != srcdir
mysql-test/Makefile.am:
  Added -I$(top_builddir)/include for searching
  generated header files, when builddir != srcdir
mysys/Makefile.am:
  Added -I$(top_builddir)/include for searching
  generated header files, when builddir != srcdir
netware/Makefile.am:
  Added -I$(top_builddir)/include for searching
  generated header files, when builddir != srcdir
regex/Makefile.am:
  Added -I$(top_builddir)/include for searching
  generated header files, when builddir != srcdir
sql/Makefile.am:
  Added -I$(top_builddir)/include for searching
  generated header files, when builddir != srcdir
strings/Makefile.am:
  Added -I$(top_builddir)/include for searching
  generated header files, when builddir != srcdir
tests/Makefile.am:
  Added -I$(top_builddir)/include for searching
  generated header files, when builddir != srcdir
vio/Makefile.am:
  Added -I$(top_builddir)/include for searching
  generated header files, when builddir != srcdir
tools/Makefile.am:
  Added -I$(top_builddir)/include for searching
  generated header files, when builddir != srcdir
2005-07-05 23:24:48 +02:00
unknown
0ff72e6019 Don't allow 8bytes for data file pointers for now. 2005-06-30 17:55:47 +03:00
unknown
5a13f2a8a6 Fixed Bug#11226 and reverted fix for Bug#6993.
Using 8 bytes for data pointer does not work at least on
all computers. The result may become 0 or negative number.
(mysqld, myisamchk)
 


myisam/mi_create.c:
  Fixed Bug#11226, "Dynamic table >4GB issue".
mysql-test/r/variables.result:
  Restricted myisam_data_pointer_size back to 7.
mysql-test/t/variables.test:
  Restricted myisam_data_pointer_size back to 7.
sql/mysqld.cc:
  Restricted myisam_data_pointer_size back to 7.
2005-06-30 16:13:22 +03:00
unknown
280b1c33e3 Cleanup during review of new code
Fixed wrong allocation that could cause buffer overrun when using join cache


myisam/mi_open.c:
  Fixed indentation
mysql-test/r/lowercase_table2.result:
  Drop tables and databases used in the test
mysql-test/t/lowercase_table2.test:
  Drop tables and databases used in the test
mysys/my_fopen.c:
  Cleanup of comments and parameter names
  Simple optimization
  Removed compiler warnings
sql/field.cc:
  Fixed wrong allocation that could cause buffer overrun
sql/mysqld.cc:
  Removed not needed code
sql/set_var.cc:
  Simply code
sql/sql_select.cc:
  Use int2store/int2korr to store length of cached VARCHAR fields
  (Not dependent on type and faster code as we avoid one possible call)
2005-06-21 18:18:58 +03:00
unknown
61b2a6b083 Fix hang/crash with Boolean full-text search against an unindexed field for
which the query contained more words than we allocated space. (Bug #7858)


myisam/ft_boolean_search.c:
  Fix calculation of max number of elements -- "words" may not have spaces
  between them.
mysql-test/t/fulltext.test:
  Modify test to be specific to reported bug (fix for old bug wasn't quite enough)
mysql-test/r/fulltext.result:
  Update results
2005-06-17 21:44:17 +02:00
unknown
dcfe258fd2 Bug #8183 MERGE and SYM cause wrong SHOW CREATE TABLE
Without this patch, all file elements in info have symlink resolved
pathnames.  This means append_create_info does not  have any way
of showing the correct database name when a symlinked database is used.


myisam/mi_open.c:
  store name (not symlinked resolved) instead of org_name (symlink resolved)
  in info.
2005-06-09 09:00:51 -05:00
unknown
270832b0a7 Merge mysql.com:/home/my/mysql-4.0 into mysql.com:/home/my/mysql-4.1
BitKeeper/etc/logging_ok:
  auto-union
myisam/mi_check.c:
  Auto merged
2005-06-07 16:34:10 +03:00
unknown
3dba83b95a Revert Bar's fix as this causes changes in the key tree that could cause incompatibilites
Fix instead wrong call to ha_key_cmp
This is related to bug #10741 Inserting double value into utf8 column crashes server


myisam/mi_key.c:
  Revert Bar's fix as this causes changes in the key tree that could cause incompatibilites
myisam/mi_rnext_same.c:
  Fixed wrong arguments to ha_key_cmp()
  This caused a compare to fail if we first found a key with end space and then same key without end space
mysql-test/r/ctype_utf8.result:
  Additional test
mysql-test/t/ctype_utf8.test:
  Additional test
2005-06-07 15:09:49 +03:00
unknown
c9914ac6ac Bug#10253: compound index length and utf8 char set
produces invalid query results

mi_key.c:
  well_formed_length should be executed before space trimming, not after.
ctype_utf8.test:
ctype_utf8.result:
  adding test.


myisam/mi_key.c:
  Bug#10253: ompound index length and utf8 char set produces invalid query results
  well_formed_length should be executed before space trimming, not after.
mysql-test/r/ctype_utf8.result:
  adding test.
  adding test.
mysql-test/t/ctype_utf8.test:
  adding test.
2005-06-07 13:56:42 +05:00
unknown
26bd158216 Bug #10901
After review fix
Copy from internal state to share state only when in lock write
mode (happens only when lock table x write has been performed since
update_state_info is only called when holding a TL_READ_NO_INSERT
lock normally. Previous patch would have failed in combination with
delayed writes.
2005-06-03 22:52:24 +02:00
unknown
f956ecd09a Bug #10901
Analyze table corrupts the state on
data_file_length, records, index_file_length...
by writing the shared state when there is an updated internal
state due to inserts or deletes
Fixed by synching the shared state with the internal state before
writing it to disk
Added test cases of 2 error cases and a normal case in new
analyze test case


BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2005-06-03 17:13:43 +02:00
unknown
2ef41d3d21 a fix (bug #10757: gis-rtree.test fails)
myisam/sp_key.c:
  a fix (bug #10757: gis-rtree.test fails)
  float8get() doesn't properly work with local variables sometimes.
2005-05-20 18:48:18 +05:00
unknown
2598faafd7 Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/psergey/mysql-4.1-bug10095
2005-05-16 22:21:19 +02:00
unknown
f8bb892314 Fix for BUG#9622: Make index statistics collection in MyISAM behave the same
way in ALTER TABLE ... ENABLE KEYS, ANALYZE TABLE and after bulk insert:
now statistics collection always assumes NULLs are inequal. 


mysql-test/r/myisam.result:
  Testcase for BUG#9622
mysql-test/t/myisam.test:
  Testcase for BUG#9622
2005-05-14 00:21:53 +02:00
unknown
037b0a7b14 Merge with 4.0
BitKeeper/etc/logging_ok:
  auto-union
mysql-test/r/outfile2.result:
  Merge rename: mysql-test/r/outfile.result -> mysql-test/r/outfile2.result
myisam/mi_key.c:
  Auto merged
mysql-test/r/alter_table.result:
  Auto merged
mysql-test/r/auto_increment.result:
  Auto merged
mysql-test/r/innodb.result:
  Auto merged
mysql-test/t/auto_increment.test:
  Auto merged
mysql-test/t/innodb.test:
  Auto merged
sql/handler.h:
  Auto merged
mysql-test/t/alter_table.test:
  Merge
mysql-test/t/outfile.test:
  Merge
sql/item_func.cc:
  Merge
sql/share/czech/errmsg.txt:
  Merge
sql/share/danish/errmsg.txt:
  Merge
sql/share/dutch/errmsg.txt:
  Merge
sql/share/english/errmsg.txt:
  Merge
sql/share/estonian/errmsg.txt:
  Merge
sql/share/french/errmsg.txt:
  Merge
sql/share/german/errmsg.txt:
  Merge
sql/share/greek/errmsg.txt:
  Merge
sql/share/hungarian/errmsg.txt:
  Merge
sql/share/italian/errmsg.txt:
  Merge
sql/share/japanese/errmsg.txt:
  Merge
sql/share/korean/errmsg.txt:
  Merge
sql/share/norwegian-ny/errmsg.txt:
  Merge
sql/share/norwegian/errmsg.txt:
  Merge
sql/share/polish/errmsg.txt:
  Merge
sql/share/portuguese/errmsg.txt:
  Merge
sql/share/romanian/errmsg.txt:
  Merge
sql/share/russian/errmsg.txt:
  Merge
sql/share/slovak/errmsg.txt:
  Merge
sql/share/spanish/errmsg.txt:
  Merge
sql/share/swedish/errmsg.txt:
  Merge
sql/share/ukrainian/errmsg.txt:
  Merge
sql/sql_table.cc:
  Merge
sql/sql_yacc.yy:
  Keep old
sql/unireg.cc:
  Merge
2005-05-14 00:01:40 +03:00
unknown
cdd6bc9bfe Fixed wrong buffer usage for auto-increment key with blob part that caused CHECK TABLE to report that the table was wrong. (Bug #10045)
myisam/mi_key.c:
  Fixed wrong buffer usage for auto-increment key with blob part that caused
  CHECK TABLE to report that the table was wrong. (Bug #10045)
mysql-test/r/auto_increment.result:
  New test case
mysql-test/t/auto_increment.test:
  New test case
2005-05-13 23:08:29 +03:00
unknown
21d16ca707 Bug#8321 - myisampack bug in compression algorithm
Merge from 4.0.
2005-04-28 16:09:53 +02:00
unknown
994674c09b Bug#8321 - myisampack bug in compression algorithm
This is the second of three changesets. It contains the pure bug fix.
It also contains the second after-review fixes.
The problem was that with gcc on x86, shifts are done modulo word size. 
'value' is 32 bits wide and shifting it by 32 bits is a no-op.
This was triggered by an evil distribution of character incidences. 
A distribution of 2917027827 characters made of 202 distinct values led to
34 occurrences of 32-bit Huffman codes.
This might have been the first time ever that write_bits() had to write
32-bit values. Since it can be expected that one day even 32 bits might
be insufficient, the third changeset suggests to enlarge some variables
to 64 bits.
2005-04-28 15:27:42 +02:00
unknown
677fbc7d4e Step 1 of the switch to support configuration with NPTL:
Rename 'IS_LINUX' configuration variable to 'TARGET_LINUX'.
2005-04-20 20:10:28 +02:00
unknown
ec280d6ffb Merge mysql.com:/home/mydev/mysql-4.1-bug9487
into mysql.com:/home/mydev/mysql-4.1-bug9188
2005-04-16 20:56:21 +02:00
unknown
7fe3db99c8 Bug#9487 - myisampack segmentation violation and bus error
Fixed some casts for 64-bit systems.
Fixed a possible buffer overflow.


myisam/myisampack.c:
  Bug#9487 - myisampack segmentation violation and bus error
  Added or changed proper casts for the argument of flush_buffer().
  Added a check for the counterstrike of the trick to have
  file_buffer.end some bytes below the real end of the buffer.
2005-04-15 19:26:38 +02:00
unknown
b753fd96b2 Merge mysql.com:/home/mydev/mysql-4.1
into mysql.com:/home/mydev/mysql-4.1-bug9188
2005-04-15 17:16:42 +02:00
unknown
65255d3540 don't check record's checksum in REPAIR
myisam/mi_dynrec.c:
  new parameter for _mi_rec_check().
myisam/myisamdef.h:
  new parameter for _mi_rec_check().
2005-04-11 20:04:50 +02:00
unknown
7ff8fc73c9 Bug#9188 - Corruption Can't open file: 'table.MYI' (errno: 145)
Since 4.1 keys are compared with trailing spaces. 
Thus, a "x " key can be inserted between a couple of "x" keys.
The existing code did not take this into account. Though the
comments in the code claimed it did.


myisam/mi_search.c:
  Bug#9188 - Corruption Can't open file: 'table.MYI' (errno: 145)
  Fixed some function comments.
  In the case when we insert a different key between two identical keys,
  the difference must be additional spaces. In this case the prefix is 
  the same as that of the new key instead of the (zero) remaining length.
myisam/mi_write.c:
  Bug#9188 - Corruption Can't open file: 'table.MYI' (errno: 145)
  Fixed a function comment.
mysql-test/r/myisam.result:
  Bug#9188 - Corruption Can't open file: 'table.MYI' (errno: 145)
  The test result.
mysql-test/t/myisam.test:
  Bug#9188 - Corruption Can't open file: 'table.MYI' (errno: 145)
  The test case.
2005-04-08 14:13:02 +02:00
unknown
ed124ab6b7 myisamchk.c:
Wrong help string fix.


myisam/myisamchk.c:
  Wrong help string fix.
2005-03-24 18:21:56 +04:00
unknown
5d7c76aa0a myisam/myisam_ftdump.c
recalculate stats/gws for the last word in the index too
    remove unused code


myisam/myisam_ftdump.c:
  recalculate stats/gws for the last word in the index too
  remove unused code
2005-03-09 12:59:20 +01:00
unknown
870059eb04 myisam/ft_parser.c
protection against invalid string in ft_get_word
mysys/my_symlink2.c
    typo fixed


myisam/ft_parser.c:
  protection against invalid string in ft_get_word
mysys/my_symlink2.c:
  typo fixed
2005-03-06 12:31:40 +01:00
unknown
f97fd0f0b7 Merge mysql.com:/home/mydev/mysql-4.0
into mysql.com:/home/mydev/mysql-4.1-4100


myisam/mi_create.c:
  Auto merged
sql/mysqld.cc:
  Auto merged
2005-03-04 09:35:21 +01:00
unknown
555ea37d77 Fix for a build bug.
Added a missing comma.
2005-03-04 09:30:22 +01:00
unknown
9210c01cac merge
include/my_global.h:
  Auto merged
mysys/mf_tempfile.c:
  Auto merged
sql/ha_myisam.cc:
  Auto merged
sql/share/english/errmsg.txt:
  Auto merged
sql/table.cc:
  Auto merged
2005-03-03 23:07:20 +01:00
unknown
8104faa083 Fixes for bugs reported by Stefano Di Paola (stefano.dipaola@wisec.it)
include/my_global.h:
  O_NOFOLLOW
isam/create.c:
  create table files with O_EXCL|O_NOFOLLOW
merge/mrg_create.c:
  create table files with O_EXCL|O_NOFOLLOW
myisam/mi_create.c:
  create files of temporary tables with O_EXCL|O_NOFOLLOW
myisammrg/myrg_create.c:
  create table files with O_EXCL|O_NOFOLLOW
mysys/mf_tempfile.c:
  create temporary files with O_EXCL|O_NOFOLLOW
sql/ha_myisam.cc:
  let mi_create know if the table is TEMPORARY
sql/mysql_priv.h:
  --allow_suspicious_udfs
sql/mysqld.cc:
  --allow_suspicious_udfs
sql/share/english/errmsg.txt:
  typo
sql/sql_udf.cc:
  --allow_suspicious_udfs
  don't allow xxx() udf without any of xxx_init/deinit/add/reset
  check paths when loading from mysql.func
sql/table.cc:
  create frm of temporary table with O_EXCL|O_NOFOLLOW
2005-03-03 19:51:29 +01:00
unknown
26f75ffc83 Bug#8306 - TRUNCATE leads to index corruption
Added a check, if the table, which we are going to create, is open.
This can happen if a MERGE mapped table is TRUNCATEd.


myisam/mi_open.c:
  Bug#8306 - TRUNCATE leads to index corruption
  Made test_if_reopen() globally available.
myisam/myisamdef.h:
  Bug#8306 - TRUNCATE leads to index corruption
  Declared test_if_reopen() as globally available.
mysql-test/r/myisam.result:
  Bug#8306 - TRUNCATE leads to index corruption
  The test result.
mysql-test/t/myisam.test:
  Bug#8306 - TRUNCATE leads to index corruption
  The test case.
2005-03-02 10:35:00 +01:00
unknown
209b24473c Bug#8349 myisamchk: --set-charset does not work
What we need to be able to set in myisamchk is
actually a collation, not a character set. This
fix just changes to display the proper error message. 


include/mysys_err.h:
  New mysys error message "unknown collation".
mysys/charset.c:
  Display more proper error when a collation is not found.
mysys/errors.c:
  New "unknown collation" error.
2005-02-22 16:37:25 +04:00
unknown
cfa78c2645 Bug #7878 with utf_general_ci, equals (=) has problem with accent insensitivity
Backporting Monty's fix for 5.0 into 4.1.
2005-02-18 16:10:12 +04:00
unknown
5b91c5a73c Merge abotchkov@bk-internal.mysql.com:/home/bk/mysql-4.1
into deer.(none):/home/hf/work/mysql-4.1.clean
2005-02-18 15:52:59 +04:00
unknown
d76b88b65c Fix for the bug #7344 (multiple server_init/server_end lead to crash)
Some variable wasn't moved to the initial state during mysql_server_end


myisam/ft_stopwords.c:
  resetting ft_stopword_file
sql/mysqld.cc:
  free_charsets() call added
2005-02-18 15:51:55 +04:00
unknown
1218a7c20c Merge mysql.com:/home/dellis/mysqlab/bk/mysql-4.0
into mysql.com:/home/dellis/bkl/bug-4.1


BitKeeper/etc/logging_ok:
  auto-union
myisam/ft_nlq_search.c:
  Auto merged
2005-02-15 17:30:40 -06:00
unknown
3be01953d1 ft_nlq_search.c:
Added bounds check to avoid accessing unallocated FT_DOC array.  (BUG #8522)


myisam/ft_nlq_search.c:
  Added bounds check to avoid accessing unallocated FT_DOC array.  (BUG #8522)
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2005-02-15 17:27:23 -06:00
unknown
de3f93c6ff Bug#8351
Fix for crash when using a double quote in boolean fulltext query.


mysql-test/r/fulltext.result:
  Added a test case for bug #8351.
mysql-test/t/fulltext.test:
  Added a test case for bug #8351.
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2005-02-14 18:54:12 +04:00
unknown
01e96c5bcd Merge serg@bk-internal.mysql.com:/home/bk/mysql-4.1/
into serg.mylan:/usr/home/serg/Abk/mysql-4.1
2005-02-12 00:10:07 +01:00
unknown
bae820dc66 make LOAD INDEX to work 2005-02-12 00:05:13 +01:00
unknown
ffe417fdde Applied a patch for Netware. 2005-02-08 19:49:40 +02:00
unknown
8c750c466b indexless boolean fulltext search was depending on default_charset_info - Bug#8159
ftbw->off wasn't cleared on reinit - Bug#8234


include/ft_global.h:
  get rid of default_charset_info in indexless fulltext searches
myisam/ft_boolean_search.c:
  get rid of default_charset_info in indexless fulltext searches
  clear ftbw->off on reinits
myisam/ft_static.c:
  get rid of default_charset_info in indexless fulltext searches
myisam/ftdefs.h:
  get rid of default_charset_info in indexless fulltext searches
sql/ha_myisam.h:
  get rid of default_charset_info in indexless fulltext searches
sql/handler.h:
  get rid of default_charset_info in indexless fulltext searches
sql/item_func.cc:
  get rid of default_charset_info in indexless fulltext searches
2005-02-04 15:24:06 +01:00
unknown
8bdb500105 fixes/cleanups according to Coverity report 2005-01-24 15:48:25 +01:00
unknown
3671fe1f72 Merge serg@bk-internal.mysql.com:/home/bk/mysql-4.1/
into serg.mylan:/usr/home/serg/Abk/mysql-4.1
2005-01-18 11:45:41 +01:00
unknown
f003895df9 myisam/ft_boolean_search.c
-trunc* bug - don't increase yweaks in this case


myisam/ft_boolean_search.c:
  -trunc* bug - don't increase yweaks in this case
mysql-test/r/fulltext.result:
  -trunc* bug - don't increase yweaks in this case
mysql-test/t/fulltext.test:
  -trunc* bug - don't increase yweaks in this case
2005-01-18 11:27:38 +01:00
unknown
96f64b4440 Fixed new bug that caused symlink test to fail
mysys/my_symlink.c:
  More debugging
2005-01-18 03:49:39 +02:00
unknown
0d98da70ad don't ignore errors in readlink 2005-01-15 20:08:53 +01:00