started via mysqld_safe (BUG#2114) Thanks to Rodrigo Marchant for the
suggestion
scripts/mysqld_safe.sh:
- fixed early removing of socket file when multiple instances of mysqld are
started via the script (BUG#2114) Thanks to Rodrigo Marchant for the
suggestion
open a file that already existed. The problem was that end_io_cache()
was called even if init_io_cache() was not. This affected both
OUTFILE and DUMPFILE (both fixed). Sometimes wrongly aligned pointer was freed,
sometimes mysqld core dumped.
Other problem was that select_dump::send_error removed the dumpfile,
even if it was created by an earlier run, or by some other program, if
the file permissions just permitted it. Fixed it so that the file will
only be deleted, if an error occurred, but the file was created by mysqld
just a moment ago, in that thread.
On the other hand, select_export did not handle the corresponding garbage
file at all. Both fixed.
After these fixes, a big part of the select_export::prepare and select_dump::prepare
code became identical. Merged the code into a new function called create_file(),
which is now called by the two latter functions.
Regards,
Jani
mysys/mf_iocache.c:
Fixed a bug in comment.
with --disable-quote
Added --compatible=ansi mode.
Fixed a non-reported bug in compatible mode; there was a check for
/*!41000 */ at this part of the code, while it obviously should have been
/*!40100 */. So the mysqldump compatiple mode made for 4.0.1 will not work
until 4.10 or later server is released :P Fixed into 4.0.2.
client/mysqldump.c:
Fixed Bug#2281, --quote is now enabled by default. Can be disabled
with --disable-quote
Added --compatible=ansi mode.
Changed sapdb into maxdb, as this change has been made to server too.
Fixed a non-reported bug in compatible mode; there was a check for
/*!41000 */ at this part of the code, while it obviously should have been
/*!40100 */. So the mysqldump compatiple mode made for 4.1.0 will not work
until 4.10.0 or later server is released :P Fixed into 4.1.2.
Fix bug: FOREIGN KEY ... ON UPDATE/DELETE NO ACTION must check the foreign key constraint, not ignore it. Peter Gulutzan said that NO ACTION should check the constraint as deferred, at the end of the SQL statement, while RESTRICT should check it immediately. Since we do not have defered constraints in InnoDB, this bug fix makes InnoDB to check NO ACTION constraints immediately, like it checks RESTRICT constraints.
innobase/row/row0ins.c:
Fix bug: FOREIGN KEY ... ON UPDATE/DELETE NO ACTION must check the foreign key constraint, not ignore it. Peter Gulutzan said that NO ACTION should check the constraint as deferred, at the end of the SQL statement, while RESTRICT should check it immediately. Since we do not have defered constraints in InnoDB, this bug fix makes InnoDB to check NO ACTION constraints immediately, like it checks RESTRICT constraints.
We don't need to copy if start is 0, we can return the original value.
sql/item_strfunc.cc:
We don't need to copy if start is 0, we can return the original value.
moved LIMIT initialialization, because it is need only for single select derived table
mysql-test/r/derived.result:
test suite for BUG#2349
mysql-test/t/derived.test:
test suite for BUG#2349
sql/sql_derived.cc:
assigned correct lex->current_select (BUG#2349)
moved LIMIT initialialization, because it is need only for single select
"PRIMARY" has been replaced by primary_key_name.
sql/mysql_priv.h:
"PRIMARY" replaced by primary_key_name.
sql/sql_help.cc:
"PRIMARY" replaced by primary_key_name.
sql/sql_select.cc:
"PRIMARY" replaced by primary_key_name.
sql/sql_show.cc:
"PRIMARY" replaced by primary_key_name.
sql/sql_table.cc:
fix for the 2361 bug: ALTER TABLE ... DROP PRIMARY KEY drops a non-primary key
"PRIMARY" replaced by primary_key_name.
sql/table.cc:
"PRIMARY" replaced by primary_key_name.
- Fixed Bug#2346
- Fixed Bug#2378
- Fixed bug in pager (no Bug#ID (?))
- Added support for new special situations option type, GET_DISABLED.
See handling of --debug in mysql.cc. compiled wihtout debugging, as an
example.
client/mysql.cc:
- Added missing documentation to some options.
- Fixed a bug in pager (no Bug#ID found (?)), but reported on internals list
with subject "[PATCH] Fix pager problems in mysql client"
- Fixed Bug#2346, "unique prefix is enough" option behaviour can be confusing with --debug
include/my_getopt.h:
Added new option type, GET_DISABLED.
include/mysys_err.h:
New exit code for my_getopt.
mysys/my_getopt.c:
- Added handling for GET_DISABLED option type (Fix for Bug#2346)
- Fixed Bug#2378, "Problem with option abbreviation"
for the MySQL root user (BUG#2375)
scripts/mysql_install_db.sh:
- improved wording on what to do to set the password for the MySQL root
user (BUG#2375)
If UNIV_SYNC_DEBUG was switched on, the error monitor thread could reserve a mutex BEFORE the sync debug system was initialized, and that caused a sync debug assertion in startup: move the 2 sec. sleep to a safer place; note that this is only heuristics, and in theory it can assert still
innobase/srv/srv0srv.c:
If UNIV_SYNC_DEBUG was switched on, the error monitor thread could reserve a mutex BEFORE the sync debug system was initialized, and that caused a sync debug assertion in startup: move the 2 sec. sleep to a safer place; note that this is only heuristics, and in theory it can assert still
innobase/srv/srv0start.c:
If UNIV_SYNC_DEBUG was switched on, the error monitor thread could reserve a mutex BEFORE the sync debug system was initialized, and that caused a sync debug assertion in startup: move the 2 sec. sleep to a safer place; note that this is only heuristics, and in theory it can assert still
by fixing optimizer bug with help of 'volatile' keyword
mysql-test/r/func_math.result:
added tests for BUG #2338 Trigonometric arithmetic problems
mysql-test/t/func_math.test:
added tests for BUG #2338 Trigonometric arithmetic problems
sql/item_func.cc:
added keyword volatile in Item_func_acos::val and Item_func_asin::val
to calm optimizer down and to avoid it's bug
Improve previous push: save 1000 bytes of thread stack in non-error cases
innobase/row/row0sel.c:
Improve previous push: save 1000 bytes of thread stack in non-error cases
If MySQL tries to do SELECT from an InnoDB table, but has set no table locks at all in ::external_lock(), print a descriptive error message and assert; some subquery bugs were of this type
innobase/row/row0sel.c:
If MySQL tries to do SELECT from an InnoDB table, but has set no table locks at all in ::external_lock(), print a descriptive error message and assert; some subquery bugs were of this type
netware/BUILD/compile-linux-tools:
Need to run make on sql_yacc.cc.
netware/BUILD/compile-netware-END:
Use .zip package.
netware/BUILD/compile-netware-all:
Add compile-netware-src.
netware/BUILD/compile-netware-standard:
Need backslash to avoid error.
netware/BUILD/mwenv:
Add additional include, library paths, -dialect and -map flags for CW.
netware/BUILD/nwbootstrap:
Additional status messages, update versions in .def files.
netware/Makefile.am:
Cosmetic change, add @openssl_libs@ in case of OpenSSL feature usage.
netware/isamchk.def:
Add SCREENNAME to allow interaction.
netware/my_manage.c:
Take out unused args to mysqladmin.
netware/myisamchk.def:
Add SCREENNAME to allow interaction.
netware/myisamlog.def:
Add SCREENNAME to allow interaction.
netware/myisampack.def:
Add SCREENNAME to allow interaction.
netware/mysql_test_run.c:
Multiple changes to help test suite.
netware/mysqlbinlog.def:
Add SCREENNAME to allow interaction.
netware/mysqlcheck.def:
Add SCREENNAME to allow interaction.
netware/mysqld_safe.c:
Make error message more accurate/descriptive.
netware/mysqldump.def:
Add SCREENNAME to allow interaction.
netware/mysqlimport.def:
Add SCREENNAME to allow interaction.
mysql_alter_db() now returns -1 in case of error, so that mysql_execute_command()
calls send_error().
sql/sql_db.cc:
In case of error, return -1 so that mysql_execute_command()
understands that it must send_error().
The double (( at the left of 'error' in the 'if' are to avoid a compiler warning.