summaryrefslogtreecommitdiff
path: root/BitKeeper
Commit message (Collapse)AuthorAgeFilesLines
* post-commit:unknown2007-12-141-2/+1
| | | | | | | | Rationalise setting $FROM. BitKeeper/triggers/post-commit: Rationalise setting $FROM.
* post-commit:unknown2007-12-041-3/+10
| | | | | | | | Use $BK_USER, if set, in preference to $USER BitKeeper/triggers/post-commit: Use $BK_USER, if set, in preference to $USER
* Merge pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-4.1-buildunknown2007-10-251-0/+26
|\ | | | | | | | | | | | | into pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.0-build
| * add new trigger to prevent certain naming clashesunknown2007-10-251-0/+26
| | | | | | | | | | BitKeeper/triggers/pre-commit.check-case.pl: catch duplicate file names, ignoring capitalisation, mostly to avoid changesets where a deleted file foobar and a deleted file FooBar break a tree on case insensitive file systems
* | Merge pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-4.1-buildunknown2007-06-181-2/+2
|\ \ | |/ | | | | | | | | | | | | into pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.0-build BitKeeper/triggers/post-commit: Auto merged
| * don't use bk cset in commit e-mailsunknown2007-06-181-2/+2
| |
* | Merge pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-4.1-buildunknown2007-06-131-4/+6
|\ \ | |/ | | | | | | | | | | | | into pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.0-build BitKeeper/triggers/post-commit: Auto merged
| * fix.unknown2007-06-131-4/+6
| | | | | | | | | | BitKeeper/triggers/post-commit: send to correct address.
| * Merge pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-4.1-post-commitunknown2007-06-131-21/+35
| |\ | | | | | | | | | | | | | | | | | | into pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-4.1
* | \ Merge pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.0-post-commitunknown2007-06-131-22/+18
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | into pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.0
| * \ \ Merge pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-4.1-post-commitunknown2007-06-131-22/+18
| |\ \ \ | | | |/ | | |/| | | | | | | | | | | | | | | | | | | | | into pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.0-post-commit BitKeeper/triggers/post-commit: Remove dev-public@ / dev-bugs@ e-mail, is now handled differently. Merge fix for 5.0.
| | * | BK changes forunknown2007-06-131-21/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://inside.mysql.com/wiki/MySQL's_Code_Reviews_Published_Externally BitKeeper/triggers/post-commit: 1) Add additional method of detecting merge changesets. 2) Remove code sending e-mail to dev-public@ or dev-bugs@. 3) Change code sending e-mail to commits@ to send to dev-private@ if a specific file is present in the BK root directory, denoting this tree as private.
* | | | Add triggers for detecting bad changesets to mysql-5.0unknown2007-05-152-0/+164
|/ / /
* | | Bug#25807: LOAD DATA INFILE does not work with Pipesunknown2007-02-131-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Showstopper and regression against 5.0.24. Previously, we ignored seek() errors (see Bug#22828) and let seek()s against pipes fail. Now, since we check that a seek didn't fail, and return without reading, this bug popped up. This restores the behavior for file-ish objects that could never be seek()ed. mysys/mf_iocache.c: If we detect early that the file is not tell()able, then we should assume that it's also not seek()able and therefore we should never set the (poorly named) "seek_not_done" flag so that we don't immedi- ately try to seek() when reading later. The problem was that tell() was returning -1, so when we read later, we needlessly tried to seek to position (unsigned long) -1 . Also, if we think we're supposed to seek to a position in a file and the file is un-tell()able, then abort.
* | | Merge pilot.mysql.com:/home/msvensson/mysql/mysql-4.1-maintunknown2007-02-131-0/+6
|\ \ \ | | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into pilot.mysql.com:/home/msvensson/mysql/mysql-5.0-maint BitKeeper/etc/gone: auto-union mysys/my_getopt.c: Auto merged sql/sql_prepare.cc: Auto merged sql/table.cc: Auto merged
| * | Test and bug fixes and removed unneccessary files.unknown2007-02-051-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | mysys/my_getopt.c: Fixes problem with getting output lines from my_getopt in random places in tests. sql/sql_prepare.cc: Fixes problem with failing mysql_client_test on some machines. This is actually a problem with prepared statements.
* | | Merge zippy.cornsilk.net:/home/cmiller/work/mysql/bug25341/my50-bug25341unknown2007-01-311-0/+6
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | into zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.0-maint BitKeeper/etc/collapsed: auto-union
| * | | Bug#25341: "init.d/mysql stop" may timeout too quicklyunknown2007-01-311-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Thirty five seconds is entirely too short of a period to wait for a server to exit. Instead, make a valliant effort to make sure it exits, and only give up after a very long period (arbitrarily chosen as 15 minutes). In addition, if we're being asked to restart the server, then don't try to start again if trying to stop the server failed. --- Return zero by default, when the script exits. --- Set return-/exit-value based on whether we successfully dealt with the PID-file. --- Don't wait that long if the program we're waiting on exits. It should only exit if the server is not going to be started. support-files/mysql.server.sh: Raise timeout to a pessimistic value, 15 minutes. We should only be willing to give up and exit after an extraordinary effort. --- Return zero by default, when the script exits. --- Set return-/exit-value based on whether we successfully dealt with the PID-file. --- Don't wait that long if the program we're waiting on exits. It should only exit if the server is not going to be started.
* | | | Merge zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.0-m,c-gcaunknown2007-01-261-0/+2
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.0-maint BitKeeper/etc/collapsed: auto-union sql/mysql_priv.h: Auto merged sql/set_var.h: Auto merged
| * | | | Bug #25879: THD::options isn't set with ulonglong values and \unknown2007-01-261-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | variables Bits higher than 2**31 were impossible to set on THD::options. It's probably a remnant from a time when options was a 32-bit integer. Now, use unsigned long-long constants and variables to set and clear THD::options. --- Pulled comments back to column 49. sql/mysql_priv.h: THD::options is an ulonglong, so we should define our bit constants that way. --- Pulled comments back to column 49. sql/set_var.h: THD::options is a ulonglong, and we if we're going to set bits higher than 2**31, then we must treat the bitmasks as a 64-bit number.
* | | | | Merge zippy.cornsilk.net:/home/cmiller/work/mysql/bug23721/my41-bug23721unknown2007-01-171-0/+1
|\ \ \ \ \ | |_|/ / / |/| | / / | | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into zippy.cornsilk.net:/home/cmiller/work/mysql/bug23721/my50-bug23721 BitKeeper/deleted/.del-collapsed~fbec3523369aae99: Delete: BitKeeper/etc/collapsed BUILD/check-cpu: Auto merged BitKeeper/etc/collapsed: 'Auto converge'
| * | | Bug#23721: compile fails: check-cpu mishandles cpu flags with \unknown2007-01-171-0/+1
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | hyphen in it (like ds-cpl). convert illegal chars in cpu flags to '_' for variable assignment BUILD/check-cpu: convert illegal chars in cpu flags to '_' for variable assignment
| * | Merge neptunus.(none):/home/msvensson/mysql/mysql-4.1unknown2006-11-241-3/+11
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into neptunus.(none):/home/msvensson/mysql/mysql-4.1-maint mysql-test/Makefile.am: Auto merged mysql-test/r/func_time.result: Auto merged mysql-test/t/func_time.test: Auto merged sql-common/my_time.c: Auto merged sql/item_timefunc.cc: Auto merged mysql-test/mysql-test-run-shell.sh: Auto merged mysql-test/mysql-test-run.pl: Manual merge of changes for RPM
* | \ \ Merge zippy.cornsilk.net:/home/cmiller/work/mysql/bug22555/my50-bug22555unknown2006-12-221-0/+1
|\ \ \ \ | |_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.0-maint BitKeeper/etc/collapsed: auto-union sql/item_sum.cc: Auto merged sql/item_sum.h: Auto merged mysql-test/r/func_group.result: Manual merge. mysql-test/t/func_group.test: Manual merge.
| * | | Bug#22555: STDDEV yields positive result for groups with only one rowunknown2006-12-221-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When only one row was present, the subtraction of nearly the same number resulted in catastropic cancellation, introducing an error in the VARIANCE calculation near 1e-15. That was sqrt()ed to get STDDEV, the error was escallated to near 1e-8. The simple fix of testing for a row count of 1 and forcing that to yield 0.0 is insufficient, as two rows of the same value should also have a variance of 0.0, yet the error would be about the same. So, this patch changes the formula that computes the VARIANCE to be one that is not subject to catastrophic cancellation. In addition, it now uses only (faster-than-decimal) floating point numbers to calculate, and renders that to other types on demand. mysql-test/r/func_group.result: Test that the bug is fixed, and that no unexpected behavior arises from the changes. mysql-test/t/func_group.test: Test that the bug is fixed, and that no unexpected behavior arises from the changes. sql/item_sum.cc: Serg's suggestion: Force all VARIANCE calculations to be done with floating- point types. It's faster, and the SQL standard says we may implement these functions any way we want. Additionally, use a form of variance calculation that is not subject to catastrophic cancellation. http://static.flickr.com/108/311308512_5c4e1c0c3d_b.jpg sql/item_sum.h: Remove unused members and add a comment describing the recurrence relation.
* | | | Merge neptunus.(none):/home/msvensson/mysql/mysql-5.0unknown2006-11-282-3/+13
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint BitKeeper/etc/collapsed: auto-union BitKeeper/etc/ignore: auto-union Makefile.am: Auto merged client/mysqltest.c: Auto merged mysql-test/lib/mtr_report.pl: Auto merged mysql-test/mysql-test-run.pl: Auto merged mysql-test/r/rpl_deadlock.result: Auto merged mysql-test/r/udf.result: Auto merged mysql-test/t/limit.test: Auto merged mysql-test/t/mysql.test: Auto merged mysql-test/t/rpl_deadlock.test: Auto merged mysql-test/t/udf.test: Auto merged mysql-test/mysql-test-run-shell.sh: Auto merged mysql-test/t/view_grant.test: Auto merged sql/item.cc: Auto merged sql/item_func.cc: Auto merged sql/item_func.h: Auto merged sql/item_timefunc.cc: Auto merged sql/mysql_priv.h: Auto merged sql/mysqld.cc: Auto merged sql-common/my_time.c: Auto merged sql/sql_base.cc: Auto merged sql/sql_parse.cc: Auto merged sql/sql_table.cc: Auto merged include/my_sys.h: Manual merge, my_getpagesize broken out of "#ifdef HAVE_SYS_MMAN_H"
| * \ \ \ Merge mysql.com:/home/bk/MERGE/mysql-4.1-mergeunknown2006-11-131-3/+11
| |\ \ \ \ | | | |_|/ | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into mysql.com:/home/bk/MERGE/mysql-5.0-merge BitKeeper/triggers/post-commit: Auto merged mysql-test/t/func_gconcat.test: Auto merged sql/item_sum.cc: Auto merged sql/sql_repl.cc: Auto merged sql/log_event.h: Manual merge sql/slave.cc: Manual merge
| | * | | Correcting BUG/WL identifier extraction to allow multiple references to auxilaryunknown2006-11-121-3/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bugs/wls in cset's comments. The targetted BUG's or WL's identifier must be specified the first in the comments. The referred bugs wls can be typed in same as the targeted clickable format. If the the target of the fix is a WL and there are some references to bugs then the first found reference is regarded as "co-target" so that the bug's identifier comes up on the subject line along with the WL's and commit mail will update the bug page. The latter feature can be disarmed (if there is no need to update the referred bug's page) with typing the first a pseudo-bug pattern (bug#0). This paticular cset will generate subject line containing bug#0 (as it was the first referred) whereas the old version would put in the subject line the last referred pattern (e.g bug#2147483648). BitKeeper/triggers/post-commit: fixing greedyness of old extraction
| * | | | Merge mysql.com:/home/bkroot/mysql-5.0-rplunknown2006-11-131-0/+2
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into mysql.com:/home/bk/MERGE/mysql-5.0-merge BitKeeper/etc/collapsed: auto-union sql/mysql_priv.h: Auto merged sql/slave.cc: Auto merged
| | * \ \ \ Merge mysql.com:/users/lthalmann/bkroot/mysql-5.0-rplunknown2006-11-071-0/+2
| | |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into mysql.com:/users/lthalmann/bk/MERGE/mysql-5.0-merge BitKeeper/etc/collapsed: auto-union mysql-test/r/ctype_utf8.result: Auto merged sql/field.cc: Auto merged sql/sql_parse.cc: Auto merged
| | | * \ \ \ Merge abarkov@bk-internal.mysql.com:/home/bk/mysql-5.0-rplunknown2006-11-011-0/+1
| | | |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into mysql.com:/usr/home/bar/mysql-5.0.b22877 BitKeeper/etc/collapsed: auto-union sql/sql_parse.cc: Auto merged
| | | | * | | | Bug#22877 replication character sets get out ofunknown2006-11-011-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | sync using replicate-wild-ignore-table Problem: changes in character set variables before an action on an replication-ignored table makes slave to forget new variable values. Fix: initialize one_shot variables only when 4.1 -> 5.x replication is running. mysql-test/r/rpl_ignore_table.result: Adding test case mysql-test/t/rpl_ignore_table-slave.opt: Don't replicate tables with names starting with "tmptbl" mysql-test/t/rpl_ignore_table.test: Adding test case sql/sql_parse.cc: Reset one_shot variables only if we do 4.1->5.x replication. In other cases we cannot do that: resetting thd->variables out of sync with st_relay_log_info::cached_charset, which makes st_relay_log_info::cached_charset_compare() not to notice character set related variables changes afterwards.
| | | * | | | | Merge abarkov@bk-internal.mysql.com:/home/bk/mysql-5.0-rplunknown2006-10-301-0/+1
| | | |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into mysql.com:/usr/home/bar/mysql-5.0.b18908 BitKeeper/etc/collapsed: auto-union mysql-test/r/ctype_utf8.result: Auto merged sql/field.cc: Auto merged sql/sql_string.cc: Auto merged
| | | | * | | | | Bug#18908: ERROR 1406 (22001): Data too long for column :: using utf8unknown2006-10-301-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Too confusing error message when cannot convert between string and column character sets on INSERT and UPDATE. Fix: producing a better error message, instead of "Data too long" in such cases Additional changes: Adding "DROP TABLE IF EXISTS" into several tests to be safe against failures in previous tests. mysql-test/include/strict_autoinc.inc: Adding DROP TABLE to be safe against previous tests failure. mysql-test/r/ctype_recoding.result: Fixing test results mysql-test/r/ctype_utf8.result: Fixing test results mysql-test/r/fulltext.result: Fixing test results mysql-test/r/strict_autoinc_1myisam.result: Adding DROP TABLE to be safe against previous tests failure. mysql-test/r/strict_autoinc_2innodb.result: Adding DROP TABLE to be safe against previous tests failure. mysql-test/r/strict_autoinc_3heap.result: Adding DROP TABLE to be safe against previous tests failure. mysql-test/r/strict_autoinc_4bdb.result: Adding DROP TABLE to be safe against previous tests failure. mysql-test/r/strict_autoinc_5ndb.result: Adding DROP TABLE to be safe against previous tests failure. sql/field.cc: - producing better error messages than "DATA TRUNCATED" or "DATA TOO LONG" (in strict mode) in case of "not well formed source" and "cannot convert to field character set" - Performance improvements: copying directly to the target, instead of using an intermediate String. - Moving duplicate code into report_data_too_long() function. sql/sql_string.cc: Adding a new function to convert strings between character sets, but not more than "nchar" characters - a helper function for Field_string::store(), Field_varstring::store() and Field_blob::store(). sql/sql_string.h: Adding new function prototype.
* | | | | | | | | Merge zippy.cornsilk.net:/home/cmiller/work/mysql/bug18761/my50-bug18761unknown2006-11-131-0/+8
|\ \ \ \ \ \ \ \ \ | |_|_|_|_|_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.0-maint BitKeeper/etc/collapsed: auto-union sql/item_func.cc: Auto merged
| * | | | | | | | Bug#18761: constant expression as UDF parameters not passed in as constantunknown2006-11-131-0/+8
| | |/ / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The code that set up data to be passed to user-defined functions was very old and analyzed the "Type" of the data that was passed into the UDF, when it really should analyze the "return_type", which is hard-coded for simple Items and works correctly for complex ones like functions. --- Added test at Sergei's behest. mysql-test/r/udf.result: Verify that various arguments work. --- Added test at Sergei's behest. mysql-test/t/udf.test: Verify that various arguments work. --- Added test at Sergei's behest. sql/item_func.cc: For function-Items, test whether it is constant and set the struct members for the UDF parameter appropriately. Replace tabs with spaces in affected code. sql/udf_example.c: Include a simple function that is useful in testing.
* | | | | | | | Merge zippy.cornsilk.net:/home/cmiller/work/mysql/bug22860/my41-bug22860unknown2006-11-111-0/+2
|\ \ \ \ \ \ \ \ | |_|/ / / / / / |/| | | | | | / | | |_|_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into zippy.cornsilk.net:/home/cmiller/work/mysql/bug22860/my50-bug22860 BitKeeper/deleted/.del-collapsed~fbec3523369aae99: Delete: BitKeeper/etc/collapsed BitKeeper/etc/collapsed: 'Auto converge' sql/mysqld.cc: manual merge
| * | | | | | Bug #22860: Option --memlock should be revisitedunknown2006-11-101-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Support says that memlock doesn't work on OSes other than Solaris. Add a warning about --memlock to the crash monologue. sql/mysqld.cc: On a crash when --memlock was active, emit advice about the insta- bility of that parameter.
* | | | | | | Merge zippy.cornsilk.net:/home/cmiller/work/mysql/bug23411/my41-bug23411unknown2006-11-061-0/+2
|\ \ \ \ \ \ \ | |/ / / / / / | | / / / / / | |/ / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into zippy.cornsilk.net:/home/cmiller/work/mysql/bug23411/my50-bug23411 BitKeeper/deleted/.del-collapsed~fbec3523369aae99: Delete: BitKeeper/etc/collapsed BitKeeper/etc/collapsed: 'Auto converge' mysql-test/r/func_test.result: Manual merge. mysql-test/t/func_test.test: Manual merge. sql/item_func.cc: Manual merge.
| * | | | | Bug#23411: ... MOD-ing zero returns strange resultunknown2006-11-061-0/+2
| | |_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Item_func_mod objects never had maybe_null set, so users had no reason to expect that they can be NULL, and may therefore deduce wrong results. Now, set maybe_null. mysql-test/r/func_test.result: Verify that the predictions are true. mysql-test/t/func_test.test: Verify that the predictions are true. sql/item_func.cc: MOD functions may be NULL.
* | | | | Merge bk-internal.mysql.com:/home/bk/mysql-5.0-maintunknown2006-10-131-0/+5
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into zippy.cornsilk.net:/home/cmiller/work/mysql/bug14262/my50-bug14262 BitKeeper/deleted/.del-collapsed: 'Auto converge rename' BitKeeper/etc/collapsed: 'Auto converge' sql/sp.cc: Auto merged sql/sql_acl.cc: Auto merged sql/sql_db.cc: Auto merged sql/sql_table.cc: Auto merged sql/sql_trigger.cc: Auto merged sql/sql_view.h: Auto merged vio/viosocket.c: Auto merged sql/sql_parse.cc: Manual merge sql/sql_view.cc: Manual merge
| * | | | | Bug #14262: SP: DROP PROCEDURE|VIEW (maybe more) write to binlog too late \unknown2006-10-031-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (race cond) It was possible for one thread to interrupt a Data Definition Language statement and thereby get messages to the binlog out of order. Consider: Connection 1: Drop Foo x Connection 2: Create or replace Foo x Connection 2: Log "Create or replace Foo x" Connection 1: Log "Drop Foo x" Local end would have Foo x, but the replicated slaves would not. The fix for this is to wrap all DDL and logging of a kind in the same mutex. Since we already use mutexes for the various parts of altering the server, this only entails moving the logging events down close to the action, inside the mutex protection. BitKeeper/etc/collapsed: BitKeeper file /home/cmiller/work/mysql/bug14262/my50-bug14262/BitKeeper/etc/collapsed --- BitKeeper file /home/cmiller/work/mysql/bug14262/my50-bug14262/BitKeeper/etc/collapsed --- BitKeeper file /home/cmiller/work/mysql/bug14262/my50-bug14262/BitKeeper/etc/collapsed --- BitKeeper file /home/cmiller/work/mysql/bug14262/my50-bug14262/BitKeeper/etc/collapsed --- BitKeeper file /home/cmiller/work/mysql/bug14262/my50-bug14262/BitKeeper/etc/collapsed --- BitKeeper file /home/cmiller/work/mysql/bug14262/my50-bug14262/BitKeeper/etc/collapsed --- BitKeeper file /home/cmiller/work/mysql/bug14262/my50-bug14262/BitKeeper/etc/collapsed --- BitKeeper file /home/cmiller/work/mysql/bug14262/my50-bug14262/BitKeeper/etc/collapsed sql/sp.cc: Move logging inside the routine drop and update functions, so it can be protected by a LOCK_open mutex. (The "create" function already had such a LOCK_open protection.) sql/sql_acl.cc: Move logging inside the grant functions, so that it can be protected by LOCK_grant . sql/sql_db.cc: Add comments that describe how each logging event is protected. sql/sql_parse.cc: Move all logging statements about DDL statements close to the actual event, so each can be protected by the same mutex. sql/sql_table.cc: Widen the scope of the mutex so that logging events are also protected. sql/sql_trigger.cc: Widen the scope of the mutex so that logging events are also protected. sql/sql_view.cc: Pass the head of the table linked-list so we can create a logging statement. Move the logging statement inside the worker function, and notably inside the LOCK_open mutex. Widen the same mutex a little to make room for logging. sql/sql_view.h: Pass the head of the table linked-list so we can create a logging statement.
* | | | | | Merge bk-internal.mysql.com:/home/bk/mysql-5.0-maintunknown2006-10-091-0/+1
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into zippy.cornsilk.net:/home/cmiller/work/mysql/bug17583/my50-bug17583 BitKeeper/etc/collapsed: auto-union client/mysql.cc: Auto merged
| * \ \ \ \ \ Merge zippy.cornsilk.net:/home/cmiller/work/mysql/bug17583/my41-bug17583unknown2006-10-091-0/+1
| |\ \ \ \ \ \ | | | |/ / / / | | |/| | | / | | |_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into zippy.cornsilk.net:/home/cmiller/work/mysql/bug17583/my50-bug17583 BitKeeper/deleted/.del-collapsed~fbec3523369aae99: Delete: BitKeeper/etc/collapsed BitKeeper/etc/collapsed: 'Auto converge' client/mysql.cc: Auto merged BitKeeper/deleted/.del-mysql_client.result: File is gone. BitKeeper/deleted/.del-mysql_client.test: File is gone.
| | * | | | Bug#17583: mysql drops connection when stdout is not writableunknown2006-10-091-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the client program had its stdout file descriptor closed by the calling shell, after some amount of work (enough to fill a socket buffer) the server would complain about a packet error and then disconnect the client. This is a serious security problem. If stdout is closed before the mysql is exec()d, then the first socket() call allocates file number 1 to communicate with the server. Subsequent write()s to that file number (as when printing results that come back from the database) go back to the server instead in the command channel. So, one should be able to craft data which, upon being selected back from the server to the client, and injected into the command stream become valid MySQL protocol to do something nasty when sent /back/ to the server. The solution is to close explicitly the file descriptor that we *printf() to, so that the libc layer and the OS layer both agree that the file is closed. BitKeeper/etc/collapsed: BitKeeper file /home/cmiller/work/mysql/bug17583/my41-bug17583/BitKeeper/etc/collapsed client/mysql.cc: If standard output is not open (specifically, if dup() of its file number fails) then we explicitly close it so that future uses of the file descriptor behave correctly for a closed file. mysql-test/r/mysql_client.result: Prove that the problem of writing SQL output to the command socket no longer exists. mysql-test/t/mysql_client.test: Prove that the problem of writing SQL output to the command socket no longer exists.
| | * | | | pekka - checkout:get (4.1)unknown2006-07-041-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | BitKeeper/etc/config: checkout:get
* | | | | | Merge bk-internal.mysql.com:/home/bk/mysql-5.0-maintunknown2006-10-041-0/+2
|\ \ \ \ \ \ | |_|_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into zippy.cornsilk.net:/home/cmiller/work/mysql/bug19356/my50-bug19356 BitKeeper/etc/collapsed: auto-union
| * | | | | Bug#19356: Assert on undefined @uservar in prepared statement executeunknown2006-10-041-0/+2
| | |_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The executing code had a safety assertion so that it refused to free Items that it didn't create. However, there is a case, undefined user variables, which would put Items into the list to be freed. Instead, do something that is more risky in expectation that the code will be refactored soon, as Kostja wants to do: Remove the assertions from prepare() and execute(). Put one assertion at a higher level, before stmt->set_params_from_vars(), which may then create new to-be-freed Items . mysql-test/r/ps_11bugs.result: Create tests to prove that undefined variables work, as keys and not, and that variables explicitly assigned to Null work. mysql-test/t/ps_11bugs.test: Create tests to prove that undefined variables work, as keys and not, and that variables explicitly assigned to Null work. sql/sql_prepare.cc: Move a safety assertion up one level and higher, because there is legitimately a case where thd->free_list is not NULL going into Prepared_statement::{prepare,execute} methods. Kostja plans to refactor this code so that it is both safe and works. (Now it works, but isn't very safe.)
* | | | | Merge bk-internal:/home/bk/mysql-5.0-runtimeunknown2006-10-031-0/+2
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint BitKeeper/etc/collapsed: auto-union mysql-test/lib/mtr_process.pl: Auto merged mysql-test/mysql-test-run.pl: Auto merged mysql-test/r/ps.result: Auto merged sql/mysql_priv.h: Auto merged sql/opt_range.cc: Auto merged sql/sql_acl.cc: Auto merged
| * | | | | Bug#21476: (Thread stack overrun not caught, causing SEGV)unknown2006-09-271-0/+2
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The STACK_MIN_SIZE is currently set to 8192, when we actually need (emperically discovered) 9236 bytes to raise an fatal error, on Ubuntu Dapper Drake, libc6 2.3.6-0ubuntu2, Linux kernel 2.6.15-27-686, on x86. I'm taking that as a new lower bound, plus 100B of wiggle-room for sundry word sizes and stack behaviors. The added test verifies in a cross-platform way that there are no gaps between the space that we think we need and what we actually need to report an error. DOCUMENTERS: This also adds "let" to the mysqltest commands that evaluate an argument to expand variables therein. (Only right of the "=", of course.) client/mysqltest.c: Add "let" to the list of mysqltest commands that evaluates its arguments (only the right-hand-side of the equals-sign expression). mysql-test/r/mysqltest.result: Added test to show that mysqltest "let" will evaluate the RHS correctly (and expand the backslash test). mysql-test/t/mysqltest.test: Added test to show that mysqltest "let" will evaluate the RHS correctly (and expand the backslash test). sql/mysql_priv.h: Increase the amount we require to be available for the stack, since experience told us that the previous amount was too little by at least 1044 bytes. mysql-test/r/execution_constants.result: New BitKeeper file ``mysql-test/r/execution_constants.result'' mysql-test/t/execution_constants.test: New BitKeeper file ``mysql-test/t/execution_constants.test''