Commit graph

62 commits

Author SHA1 Message Date
ingo@mysql.com
be34b54e1d Merge mysql.com:/home/mydev/mysql-4.1-4100
into mysql.com:/home/mydev/mysql-5.0-5000
2005-04-28 19:34:05 +02:00
ingo@mysql.com
286e204ac9 Bug#8321 - myisampack bug in compression algorithm
Merge from 4.0.
2005-04-28 16:09:53 +02:00
ingo@mysql.com
66a158a9db 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
ingo@mysql.com
e6b8c52808 Merge mysql.com:/home/mydev/mysql-4.1-bug9188
into mysql.com:/home/mydev/mysql-5.0-bug9188
2005-04-16 21:01:46 +02:00
ingo@mysql.com
e2cf8b309e Bug#9487 - myisampack segmentation violation and bus error
Fixed some casts for 64-bit systems.
Fixed a possible buffer overflow.
2005-04-15 19:26:38 +02:00
monty@mysql.com
3fb088a075 Add 0x before pointers (to help with debugging)
Add support for VARCHAR with 1 or 2 length bytes
Enable VARCHAR packing in MyISAM files (previous patch didn't pack data properly)
Give error if we got problems in temporary tables during a SELECT
Don't use new table generated by ALTER TABLE if index generation fails
Fixed wrong call by range_end() (Could cause an ASSERT in debug mode)
2004-12-18 05:19:21 +02:00
monty@mysql.com
563500994a Update results for new varchar handling
Fixed compiler warnings
String results in CREATE ... SELECT are now created as CHAR(0), VARCHAR(X) or TEXT() depending on item->max_length
2004-12-07 15:47:00 +02:00
lenz@mysql.com
6b720d93be - Applied some Windows portability fixes for myisampack.c and sql_handler.cc
(backports from fixes made in 4.1)
2004-10-27 21:51:27 +02:00
lenz@mysql.com
0c3fb81a70 - applied portability fix for Windows (1ULL -> ULL(1)) to myisampack.c 2004-10-22 22:26:57 +02:00
monty@mysql.com
e1218474b8 Merge with 4.0 2004-10-20 16:24:28 +03:00
monty@mysql.com
1f8b3d0f22 Code cleanups (done during review of new code)
Rename innodb_table_locks_old_behavior -> innodb_table_locks
Set innodb_table_locks to off by default to get same behaviour as in MySQL 4.0.20
(This means that Innodb ignore table locks by default, which makes it easier to combine MyISAM and InnoDB to simulate a transaction)
2004-10-20 11:24:08 +03:00
monty@mysql.com
62f3cd6a31 Merge with 4.0 for 4.1 release
Noteworthy:
- New HANDLER code
- New multi-update-grant-check code
- Table lock code in ha_innodb.cc was not applied
2004-10-06 19:14:33 +03:00
sergefp@mysql.com
f7b6a99d50 Fix for BUG#4785 part two:
* If at least one of indexes is disabled, use data file size as an estimate 
  for key file size.
* Added handling for joined tables.
2004-09-29 23:25:32 +04:00
sergefp@mysql.com
6e0ba8e615 Fix for BUG#4785:
* myisampack leaves key_file_length value from original table
 * myisamchk uses this value when calculating key file pointer length
2004-09-22 16:29:15 +04:00
monty@mysql.com
054cea4ca8 Merge with 4.0 2004-09-01 04:12:09 +03:00
ram@gw.mysql.r18.ru
b93a973b12 Added global my_getopt_error_reporter function pointer which is
used in the handle_options() function (instead of using additional 
handle_option() parameter). The default value of the 
my_getopt_error_reporter is default_reporter(). One can set it to
other functions if case of need.
2004-08-31 21:27:58 +05:00
serg@serg.mylan
b4bb38e896 merged 2004-08-26 15:19:46 +02:00
rburnett@build.mysql.com
67003d1c98 mysql_priv.h:
Added declarations for print_msg_to_log and vprint_msg_to_log.  sql_print_error are simple functions that wrap calls to print_msg_to_log.  Define the different error types with MY_ERROR_TYPE, MY_WARNING_TYPE, and MY_INFORMATION_TYPE
gen_lex_hash.cc:
  Added NULL error reporting parameter to handle_options
log.cc:
  Add print_msg_to_log, print_buffer_to_log, and vprint_msg_to_log.  Print_msg_to_log will write the message to the windows event log if on NT.  We now have error, warning, and information versions of sql_print_xxxx.  T his is a variation of a similar changeset WAX did.
mysqld.cc:
  Added option_error_reporter callback function and pass that into handle_options
mysql.cc:
  Added NULL as error reporter arg to the end of handle_options
Many files:
  Added NULL error reporter parameter as the last paramter to handle_options
my_getopt.c:
  Added second function pointer to server as an error reporting callback.  Added local function report_option_error that will either write the error to stderr or to the error reporting callback.  changed all calls in handle_options from fprintf(stderr, ... ) to report_option_error
my_getopt.h:
  Changed declaration of handle_options to use typedefs for the two function pointers.  added second function pointer to server as an error reporting callback
mysqld.dsp:
  Added custom build step for compiling message file and added message resource file (output of mc)
2004-08-14 03:38:37 +02:00
monty@mysql.com
390d9898f9 merge with 4.0 to get Netware patches and fixes for libmysqld.dll 2004-05-25 22:54:00 +03:00
monty@mysql.com
f2e1e3ce4c Added patches from Novell 2004-05-25 22:00:14 +03:00
ram@gw.mysql.r18.ru
f231d9826b just tried to find all 'skipp' and replace it with 'skip'. 2004-02-02 20:25:39 +04:00
monty@mysql.com
ede8169d24 Added missing SSL library (Should be in source distribution)
Fixed compiler warnings (a lot of hidden variables detected by the Forte compiler)
Added a lot of 'version_xxx' strings to 'show variables'
Prevent copying of TMP_TABLE_PARAM (This caused core dump bug on Solaris)
Fixed problem with printing sub selects to debug log
2003-11-28 12:18:13 +02:00
monty@mashka.mysql.fi
73f66f68fd merge with 4.0.15 2003-09-11 20:24:14 +03:00
serg@serg.mylan
c297aa934e s/\t/ / in command-line help text 2003-09-02 08:37:27 +02:00
serg@serg.mylan
9f67e10d0d consistency fix - all help texts for command-line options should end with a dot. 2003-06-13 10:59:02 +02:00
serg@serg.mysql.com
fcb8bc061d merged 2002-10-14 11:36:48 +00:00
jani@rhols221.adsl.netsonic.fi
d4fc18bf5f Small fixes in mysql and myisampack 2002-10-04 17:18:41 +03:00
monty@mashka.mysql.fi
d69250a969 Fixes and code cleanups after merge with 4.0.3
Warning handling and initial prepared statement handling (last not complete yet)
Changed a lot of functions that returned 0/1 to my_bool type.
GRANT handling now uses read/write locks instead of mutex
Change basic net functions to use THD instead of NET
(needed for 4.1 protocol)
Use my_sprintf instead of sprintf() + strlen()
Added alloc_query() to be able to chare query initialization code with
prepared statements.
Cleanup handling of SHOW COUNT(*) WARNINGS and SELECT LAST_INSERT_ID()

Note that the following test fails (will be fixed ASAP):
sub_select, union, rpl_rotate_logs and rpl_mystery22
2002-10-02 13:33:08 +03:00
monty@narttu.mysql.fi
7134ffec21 Merge with 4.0.3
Some simple optimzations, more comments and indentation changes.
Add ` around database in 'use database' in binary log.
Moved max_error_count and max_warning_count to variables struct.
Removed SHOW_WARNS_COUNT and SHOW_ERRORS_COUNT calls.
Changed string functions to use character set of first string argument as default return characterset
(Each string function can change the above assumption if needed)
2002-08-30 12:40:40 +03:00
monty@mashka.mysql.fi
2c4fa340cc Lots of code fixes to the replication code (especially the binary logging and index log file handling)
Fixed bugs in my last changeset that made MySQL hard to compile.
Added mutex around some data that could cause table cache corruptions when using OPTIMIZE TABLE / REPAIR TABLE or automatic repair of MyISAM tables.
Added mutex around some data in the slave start/stop code that could cause THD linked list corruptions
Extended my_chsize() to allow one to specify a filler character.
Extend vio_blocking to return the old state (This made some usage of this function much simpler)
Added testing for some functions that they caller have got the required mutexes before calling the function.
Use setrlimit() to ensure that we can write core file if one specifies --core-file.
Added --slave-compressed-protocol
Made 2 the minimum length for ft_min_word_len
Added variables foreign_key_checks & unique_checks.
Less logging from replication code (if not started with --log-warnings)
Changed that SHOW INNODB STATUS requre the SUPER privilege
More DBUG statements and a lot of new code comments
2002-08-08 03:12:02 +03:00
monty@mashka.mysql.fi
dddc20d9d1 New SET syntax & system variables.
Made a some new buffers thread specific and changeable.
Resize of key_buffer.
AUTO_COMMIT -> AUTOCOMMIT
Fixed mutex bug in DROP DATABASE
Fixed bug when using auto_increment as second part of a key where first part could include NULL.
Split handler->extra() to extra() and extra_opt() to be able to support thread specific buffers.
Don't write message to error log when slave reconnects becasue of timeout.
Fixed possible update problem when using DELETE/UPDATE on small tables
(In some cases we used index even if table scanning would be better)
A lot of minior code cleanups
2002-07-23 18:31:22 +03:00
monty@hundin.mysql.fi
8a2daeac77 Removed mysql_ssl_clear()
Added statistics information for alarms (for bug tracking)
Don't store "incomplete" in the xxx.cfg file if we are not using --restart. (Crash-me)
Enlarged STACK_BUF_ALLOC becasue of failed crash-me test
Aded new script mysql_tableinfo to make a system directory.
2002-06-27 11:27:04 +03:00
monty@hundin.mysql.fi
f0b28da6f9 merge with 4.0 2002-06-03 12:59:31 +03:00
jani@hynda.(none)
c961494444 Added useful exit error code for programs using my_getopt in case
of an error in option handling. This can sometimes be useful in
scripts.

Changed some exit code names and corresponding numbers.

Fixed a bug in mysqld.cc, in replication related options.

Added a global flag in my_getopt, which can be set by any program
that is using my_getopt, which tells whether the client should
print the error message itself, or whether my_getopt should do it.
The default is that my_getopt will print the error messages.
2002-05-29 15:07:30 +03:00
jani@rhols221.arenanet.fi
16e3b892a6 Changed ft_dump, ft_eval, ft_test1, mi_test1, myisampack, gen_lex_hash,
mysqlmanager from using GNU getopt to use my_getopt.

Changed some files that just included old getopt.h to include
my_getopt.h now.

Fixed a bug in my_print_help() in my_getopt.c.

Made better documentation for option -G in mysql client.
2002-05-24 14:06:58 +03:00
bar@gw.udmsearch.izhnet.ru
eab2893dac RB-Tree indexes support in HEAP tables
Renamed _hp_func  ->  hp_func
mi_key_cmp moved to /mysys/my_handler.c
New tests for HEAP tables
2002-04-25 13:36:55 +05:00
monty@hundin.mysql.fi
727122aadd merge 2002-04-25 01:16:42 +03:00
monty@tik.mysql.fi
f94d84a9ec SHOW VARIABLES LIKE ... are now case insensitive
Fixed stack overflow checking with crash-me with gcc 3.0.4
Using @@unknown_variable doesn't hang client anymore
Added @@VERSION variable
2002-04-18 18:24:14 +03:00
monty@hundin.mysql.fi
727e507bca merge with 3.23.50 2002-03-27 01:56:10 +02:00
monty@hundin.mysql.fi
ed040fe21e Fix for bug in WHERE key='j' or key='J' 2002-03-22 14:03:42 +02:00
monty@hundin.mysql.fi
40c77c767b Removed compiler warnings 2002-02-09 04:00:24 +02:00
monty@hundin.mysql.fi
b658662ae4 Update copyright
Fixed memory leak on shutdown (Affects the embedded version & MyODBC)
2001-12-06 14:10:51 +02:00
monty@hundin.mysql.fi
4c60b41954 Portability fix
Cleanup typos (like SKIPP -> SKIP)
2001-11-07 00:13:29 +02:00
monty@hundin.mysql.fi
fd0780493d merge with 3.23.44 2001-11-04 16:14:09 +02:00
monty@hundin.mysql.fi
0716bf4d0e Portability fixes 2001-10-31 20:28:43 +02:00
monty@hundin.mysql.fi
5a9ce774dc Update for OS2 (patch from Yuri Dario).
Use LONG_TIMEOUT (one year) instead of ~0 for long timeouts
Fixed error messages.
Fixed problem with const propagation when comparing columns of different types
2001-10-31 03:22:31 +02:00
monty@hundin.mysql.fi
5a14bb2a7e Integrated table->ref_primary_key into table->part_of_key
Fixed bug in UNION
2001-09-21 03:38:35 +03:00
monty@work.mysql.com
18474d8419 Merge with 3.23.42 2001-09-13 09:52:35 +02:00
monty@hundin.mysql.fi
7a19987805 OS2 patch 2001-09-12 23:53:31 +03:00
monty@work.mysql.com
447c18954e merge with 3.23.42 2001-09-02 18:38:33 +02:00