BitKeeper/etc/logging_ok:
auto-union
Docs/Support/texi2html:
Auto merged
mysql-test/t/rpl000001.test:
Auto merged
mysql-test/t/rpl000015.test:
Auto merged
mysql-test/t/rpl_log_pos.test:
Auto merged
Fix InnoDB bug #6287: if one uses INSERT IGNORE to insert several rows at a time, and the first inserts are ignored because of a duplicate key collision, then InnoDB in a replication slave assigns AUTO_INCREMENT values 1 bigger than in the master
sql/ha_innodb.cc:
Fix InnoDB bug #6287: if one uses INSERT IGNORE to insert several rows at a time, and the first inserts are ignored because of a duplicate key collision, then InnoDB in a replication slave assigns AUTO_INCREMENT values 1 bigger than in the master
values for too big argument".
Added range checking for from_unixtime() argument, cleaned up code
a bit.
mysql-test/r/func_time.result:
Test for bug #6439 "from_unixtime() function returns wrong datetime
values for too big argument".
mysql-test/t/func_time.test:
Test for bug #6439 "from_unixtime() function returns wrong datetime
values for too big argument".
sql/item_timefunc.cc:
Item_func_from_unixtime:
Added error range checking for function argument + small code clean up.
Prevent creation of a row which grants no rights
Test included
mysql-test/r/grant.result:
Test for Bug#6123
mysql-test/t/grant.test:
Test for Bug#6123
sql/sql_acl.cc:
Bug#6123
Prevent creation of useless row
When we are writing a transaction to the binlog, we log BEGIN/COMMIT with zero error code.
Example: all statements of trans succeeded, connection lost and so implicit rollback:
we don't want ER_NET* errors to be logged in the BEGIN/ROLLBACK events, while statement
events have 0. If there was really a serious error code, it's already in the statement events.
sql/log.cc:
When we write the cached binlog segment to disk binlog at COMMIT/ROLLBACK time:
imagine this is rollback due to net timeout, after all statements of
the transaction succeeded. Then we want a zero-error code in BEGIN.
In other words, if there was a really serious error code it's already
in the transaction's statement events.
sql/sql_table.cc:
out of date comment
Revise the --hex-blob help message string. (This will need
revising after merge to 4.1, too, but the CHAR BINARY and
VARCHAR BINARY data types will be BINARY and VARBINRY.)
this is important because this 4.0 "Bootstrap" is the one generally used on host "build".
Build-tools/Bootstrap:
If the source tree does not contain any "Docs/Images/Makefile*" (due to an error,
or because it is not yet prepared to contain the Images in the source tar-ball),
a plain "rm" will fail and so cause "Bootstrap" to fail. (This has happened ...)
Prevent this danger by using "rm -f".
the fact that the transaction log is empty does not mean we're not in a transaction
(it could be BEGIN; SELECT * FOR UPDATE FROM ibtable: then we don't want to commit now, even if
the statement is a MyISAM update).
With a testcase.
mysql-test/r/mix_innodb_myisam_binlog.result:
result update
mysql-test/t/mix_innodb_myisam_binlog.test:
test update for a new bug
sql/log.cc:
The fact that the transaction log is empty does not mean we're not in a transaction
(it could be BEGIN; SELECT * FOR UPDATE: then we don't want to commit now).
in the source tar-ball for distribution. This is done by using the "DISTFILES" macro
in a new "Docs/Images/Makefile". As the source BK tree does not contain these files,
they are copied from the "mysqldocs" tree at release build time.
This changeset relies on "bk commit - mysqldoc tree (joerg:1.2276)" of today.
Build-tools/Bootstrap:
Copy the relevant files with "Docs/Images" from the "mysqldocs" BK tree into the
build tree, ensuring that the "Makefile*" from the source BK tree are removed before.
Docs/Images/Makefile.am:
This dummy file is only needed to satisfy the Makefile hierarchy,
at release build time it will be replaced by its counterpart from the "mysqldocs" BK tree.
Docs/Makefile.am:
Include the new "Docs/Images/Makefile" in the Makefile hierarchy.
configure.in:
Ensure that the autotools will handle the new "Docs/Images/Makefile.am".
value if server runs in time zone with leap seconds".
Now in my_gmt_sec() function we take into account difference between
our target and estimation in seconds part.
mysql-test/Makefile.am:
Added mysql-test/std_data/Moscow_leap reuired by new timezone3.test
to source distribution.
sql/time.cc:
my_gmt_sec():
When comparing our target broken-down datetime t value and proper
representation of our estimation *l_time we should take into account
that they could differ in second part if we have time zone leap seconds.
Also added comments about some assumptions used in this function.
innobase/dict/dict0dict.c:
dict_scan_to(): skip quoted strings while scanning for the keyword
dict_create_foreign_constraints_low(): allow quote immediately after CONSTRAINT
for Solaris test, and fix if @IS_LINUX@ test in mysqld_safe itself.
configure.in:
Portability fix for FIND_PROC setting; on Solaris (and
probably others), 'ps -p $$' inside a shell script just
returns 'sh' for command line, even though $0 contains
the filename. So, use 'ps -fp $$' in the test (it shows
the full command line, e.g., 'sh configure'). Leave the
actual FIND_PROC command as-is, since mysqld itself is
not a shell script.
scripts/mysqld_safe.sh:
Portability fix for mysqld_safe on non-Linux systems. A bogus use
of 'if' and 'test' caused non-bash shells to enter a section meant
to be run only on Linux systems.
BitKeeper/etc/logging_ok:
Logging to logging@openlogging.org accepted
Backport Jan's fix of the LOAD DATA INFILE REPLACE duplicate key error bug (Bug #5835) to 4.0
sql/ha_innodb.cc:
Backport Jan's fix of the LOAD DATA INFILE REPLACE duplicate key error bug (Bug #5835) to 4.0
Fix bug #3478: InnoDB's FOREIGN KEY tables treated table and database names as case-insensitive; RENAME TABLE t to T would hang in an endless loop if t had a foreign key constraint defined on it
dict0dict.c:
Fix bug #3478: InnoDB's FOREIGN KEY tables treated table and database names as case-insensitive; RENAME TABLE t to T would hang in an endless loop if t had a foreign key constraint defined on it; fix also a hang that would occur if one tried in ALTER TABLE or RENAME TABLE to create a foreign key constraint name that collided with another existing name
innobase/dict/dict0crea.c:
Fix bug #3478: InnoDB's FOREIGN KEY tables treated table and database names as case-insensitive; RENAME TABLE t to T would hang in an endless loop if t had a foreign key constraint defined on it
innobase/dict/dict0load.c:
Fix bug #3478: InnoDB's FOREIGN KEY tables treated table and database names as case-insensitive; RENAME TABLE t to T would hang in an endless loop if t had a foreign key constraint defined on it
innobase/dict/dict0dict.c:
Fix bug #3478: InnoDB's FOREIGN KEY tables treated table and database names as case-insensitive; RENAME TABLE t to T would hang in an endless loop if t had a foreign key constraint defined on it; fix also a hang that would occur if one tried in ALTER TABLE or RENAME TABLE to create a foreign key constraint name that collided with another existing name
innobase/eval/eval0eval.c:
Fix bug #3478: InnoDB's FOREIGN KEY tables treated table and database names as case-insensitive; RENAME TABLE t to T would hang in an endless loop if t had a foreign key constraint defined on it
innobase/pars/pars0pars.c:
Fix bug #3478: InnoDB's FOREIGN KEY tables treated table and database names as case-insensitive; RENAME TABLE t to T would hang in an endless loop if t had a foreign key constraint defined on it
innobase/row/row0mysql.c:
Fix bug #3478: InnoDB's FOREIGN KEY tables treated table and database names as case-insensitive; RENAME TABLE t to T would hang in an endless loop if t had a foreign key constraint defined on it
(backports from fixes made in 4.1)
myisam/myisampack.c:
- replaced "1ULL" with "((ulonglong)1)" to resolve a compile error on
Windows
sql/sql_handler.cc:
- removed some unused variables
- added a (byte*) cast to fix a compile error on Windows (backport of a
fix made in 4.1)
Updated version of texi2html so that 4.0.22 HTML manual doesn't turn out all goofy.
Docs/Support/texi2html:
Updated version of texi2html so that 4.0.22 HTML manual doesn't turn out all goofy.