- 02 Aug, 2007 6 commits
-
-
unknown authored
into production.mysql.com:/usersnfs/jperkin/bk/trees/build/mysql-5.0 myisam/myisamchk.c: Auto merged
-
unknown authored
into production.mysql.com:/usersnfs/jperkin/bk/trees/build/mysql-4.1
-
unknown authored
Fix typo in usage. myisam/myisamchk.c: Fix typo in usage.
-
unknown authored
into mysql.com:/home/kent/bk/cmake-tls/mysql-5.0-build
-
unknown authored
Aligned client library build and use with the Unix version when it comes to what source to include directly in the builds, and what libraries to link with (bug#30118). Also reviewed, corrected and made more clear when static or dynamic Thread Local Storage is to be used. Some code duplication was removed, and some redundant library usage were removed, reducing the risk of incorrect TLS usage. client/CMakeLists.txt: - Removed code duplication by moving build of "mysqlclient" to the "libmysql" directory - Link clients with the new "mysqlclient_notls", to protect for the case the clients use more than the client API, and access thread data directly. - Synced explicit target addition of sources with Unix. dbug/CMakeLists.txt: No need to set CXX flags, no C++ code libmysql/CMakeLists.txt: - Aligned more with Unix version when it comes to included source files - Build both DLL and static library in this directory - Produce separe static TLS version of the static client library, for use when building clients in this build that might access TLS storage directly. mysys/CMakeLists.txt: We only have to build the static TLS version, as no clients are linking directly with the "mysys" library. scripts/make_win_bin_dist: Ajusted paths to new "mysqlclient.lib" location in source tree sql/CMakeLists.txt: Removed duplicate "ha_blackhole.cc" in file listing Removed explicit link to "dbug.lib" not needed Link with the static TLS "mysqlclient_notls" tests/CMakeLists.txt: Removed explicit link to "dbug", "mysys", "yassl", "taocrypt" and "zlib" not needed. Added explicit source addition "../mysys/my_memmem.c". No need for setting CXX flags, no C++ code. Use the static TLS "mysqlclient_notls" for linkage. zlib/CMakeLists.txt: No need for a dynamic TLS version of this library, no access to thread storage is done from it. Also no need to define MYSQL_CLIENT, not used, or __WIN32__ that is handled by the library header without this define.
-
unknown authored
into trift2.:/MySQL/M50/push-5.0
-
- 01 Aug, 2007 1 commit
-
-
unknown authored
mysql-test/r/func_time.result: Update results (use fixed datetime values instead of NOW()). mysql-test/t/func_time.test: Use fixed datetime values instead of NOW(): the test would have a sporadic failure when current day changed between two consequtive calls to NOW(). The test actually tests FROM_DAYS/TO_DAYS functions, so use of NOW() is not necessary.
-
- 31 Jul, 2007 1 commit
-
-
unknown authored
into bodhi.(none):/opt/local/work/mysql-5.0-runtime client/mysqldump.c: Auto merged mysql-test/r/mysqldump.result: Auto merged sql/sql_base.cc: Auto merged sql/table.cc: Auto merged mysql-test/r/innodb_mysql.result: Manual merge. mysql-test/t/innodb_mysql.test: Manual merge. sql/sql_table.cc: Manual merge.
-
- 30 Jul, 2007 7 commits
-
-
unknown authored
into mysql.com:/home/kent/bk/config_h/mysql-5.0-build
-
unknown authored
to "my_config.h". Not to pollute the top directory, and to get more control over what is included. Made the include path for "libedit" pick up its own "config.h" first. config/ac-macros/misc.m4: aclocal in automake 1.8 can't handle AC_REQUIRE on a user macro defined in the same included file. cmd-line-utils/libedit/Makefile.am: Changed include path so that current directory is taken first, as there is a "config.h" there with the same name as the one in top "include". configure.in: Generate "config.h" directly into "include", don't pollute top directory include/Makefile.am: Copy "config.h" from current directory to "my_config.h", added note in the make file why there are two identical files with different name. scripts/make_binary_distribution.sh: Removed copy of "config.h" from top directory, it is in "include" in a source tree.
-
unknown authored
into mysql.com:/home/kent/bk/config_h/mysql-5.0-build mysys/my_pthread.c: Auto merged
-
unknown authored
Backport of correction for Mac OS X build problem, global variable not initiated is "common" and can't be used in shared libraries, unless special flags are used (bug#26218) mysys/my_pthread.c: Backport of correction for Mac OS X build problem, global variable not initiated is "common" and can't be used in shared libraries, unless special flags are used (bug#26218)
-
unknown authored
into mysql.com:/home/kent/bk/tmp3/mysql-5.0-build
-
unknown authored
sql/handler.h: Fix a warning.
-
unknown authored
into trift2.:/MySQL/M50/push-5.0
-
- 29 Jul, 2007 1 commit
-
-
unknown authored
- Removed unused variable. sql/sql_lex.cc: - Removed unused variable
-
- 27 Jul, 2007 9 commits
-
-
unknown authored
into production.mysql.com:/usersnfs/jperkin/bk/mysql-5.0
-
unknown authored
into production.mysql.com:/usersnfs/jperkin/bk/mysql-5.0
-
unknown authored
Moved CERT files to where they are used, avoids conflict between two make files trying to install the same CERTs SSL/*.pem, Move: SSL/*.pem -> mysql-test/std_data/ mysql-test/std_data/cacert.pem: Rename: SSL/cacert.pem -> mysql-test/std_data/cacert.pem mysql-test/std_data/client-cert.pem: Rename: SSL/client-cert.pem -> mysql-test/std_data/client-cert.pem mysql-test/std_data/client-key.pem: Rename: SSL/client-key.pem -> mysql-test/std_data/client-key.pem mysql-test/std_data/server-cert.pem: Rename: SSL/server-cert.pem -> mysql-test/std_data/server-cert.pem mysql-test/std_data/server-key.pem: Rename: SSL/server-key.pem -> mysql-test/std_data/server-key.pem SSL/Makefile.am: Moved CERT files to where they are used, avoids conflict between two make files trying to install the same CERTs
-
unknown authored
into adventure.(none):/home/thek/Development/cpp/mysql-5.0-runtime
-
unknown authored
When a table was explicitly locked with LOCK TABLES no associated tables from any related trigger on the subject table were locked. As a result of this the user could experience unexpected locking behavior and statement failures similar to "failed: 1100: Table'xx' was not locked with LOCK TABLES". This patch fixes this problem by making sure triggers are pre-loaded on any statement if the subject table was explicitly locked with LOCK TABLES. mysql-test/r/sp-prelocking.result: Added test case mysql-test/t/sp-prelocking.test: Added test case sql/sql_lex.cc: - Moved some conditional logic out of the table iteration. - Added event map values for LOCK TABLE command. sql/table.cc: - Refactored set_trg_event_tpye into the two simpler functions set_trg_event_map and set_trg_event_map as methods for manipulating the table event map. The original function was only called from st_lex::set_trg_event_type_for_tables so it was possible to move the event map creation logic to this function as a loop optimization. sql/table.h: - Refactored set_trg_event_tpye into the two simpler functions set_trg_event_map and set_trg_event_map as methods for manipulating the table event map. The original function was only called from st_lex::set_trg_event_type_for_tables so it was possible to move the event map creation logic to this function as a loop optimization.
-
unknown authored
- make the 'dist-hook' from top-level Makefile work again. - we can find my_print_defaults from --basedir by parsing command line arguments prior to running my_print_defaults. - take advantage of additional command line parsing and allow the --no-defaults etc arguments to work anywhere rather than having to be the first argument. - find SQL files either from binary archive or source install. - consolidate and tidy code and error messages. scripts/mysql_install_db.sh: Consolidate error messages.
-
unknown authored
between perm and temp tables. Review fixes. The original bug report complains that if we locked a temporary table with LOCK TABLES statement, we would not leave LOCK TABLES mode when this temporary table is dropped. Additionally, the bug was escalated when it was discovered than when a temporary transactional table that was previously locked with LOCK TABLES statement was dropped, futher actions with this table, such as UNLOCK TABLES, would lead to a crash. The problem originates from incomplete support of transactional temporary tables. When we added calls to handler::store_lock()/handler::external_lock() to operations that work with such tables, we only covered the normal server code flow and did not cover LOCK TABLES mode. In LOCK TABLES mode, ::external_lock(LOCK) would sometimes be called without matching ::external_lock(UNLOCK), e.g. when a transactional temporary table was dropped. Additionally, this table would be left in the list of LOCKed TABLES. The patch aims to address this inadequacy. Now, whenever an instance of 'handler' is destroyed, we assert that it was priorly external_lock(UNLOCK)-ed. All the places that violate this assert were fixed. This patch introduces no changes in behavior -- the discrepancy in behavior will be fixed when we start calling ::store_lock()/::external_lock() for all tables, regardless whether they are transactional or not, temporary or not. mysql-test/r/innodb_mysql.result: Update test results (Bug#24918) mysql-test/t/innodb_mysql.test: Add a test case for Bug#24918 sql/handler.h: Make handler::external_lock() a protected method. Backport from 5.1 its public wrapper handler::ha_external_lock(). Assert that the handler is not closed if it is still locked. sql/lock.cc: In mysql_lock_tables only call lock_external() for the list of tables that we called store_lock() for. E.g. get_lock_data() does not add non-transactional temporary tables to the lock list, so lock_external() should not be called for them. Use handler::ha_external_lock() instead of handler::external_lock(). Add comments for mysql_lock_remove(), parameterize one strange side effect that it has. At least in one place where mysql_lock_remove is used, this side effect is not desired (DROP TABLE). The parameter will be dropped in 5.1, along with the side effect. sql/mysql_priv.h: Update declaration of mysql_lock_remove(). sql/opt_range.cc: Deploy handler::ha_external_lock() instead of handler::external_lock() sql/sql_base.cc: When closing a temporary table, remove the table from the list of LOCKed TABLES of this thread, in case it's there. It's there if it is a transactional temporary table. Use a new declaration of mysql_lock_remove(). sql/sql_class.h: Extend the comment for THD::temporary_tables. sql/sql_table.cc: Deploy handler::ha_external_lock() instead of handler::external_lock()
-
unknown authored
into mysql.com:/home/svoj/devel/mysql/BUG29957/mysql-5.0-engines
-
unknown authored
INSERT/DELETE/UPDATE followed by ALTER TABLE within LOCK TABLES may cause table corruption on Windows. That happens because ALTER TABLE writes outdated shared state info into index file. Fixed by removing obsolete workaround. Affects MyISAM tables on Windows only. myisam/mi_extra.c: On windows when mi_extra(HA_EXTRA_PREPARE_FOR_DELETE) is called, we release external lock and close index file. If we're in LOCK TABLES, MyISAM state info doesn't get updated until UNLOCK TABLES. That means when we release external lock and we're in LOCK TABLES, we may write outdated state info. As SQL layer closes all table instances, we do not need this workaround anymore. mysql-test/r/alter_table.result: A test case for BUG#29957. mysql-test/t/alter_table.test: A test case for BUG#29957.
-
- 26 Jul, 2007 13 commits
-
-
unknown authored
into debian.(none):/M50/push-5.0
-
unknown authored
For more information, see WL#3866 and the bugs numbered 28685 and 20390. BitKeeper/deleted/.del-readme.txt: Delete: mysql-test/suite/row_lock/readme.txt BitKeeper/deleted/.del-summary_of_sel_test.txt: Delete: mysql-test/suite/row_lock/summary_of_sel_test.txt BitKeeper/deleted/.del-innodb_row_lock_1.result: Delete: mysql-test/suite/row_lock/r/innodb_row_lock_1.result BitKeeper/deleted/.del-innodb_row_lock_2.result: Delete: mysql-test/suite/row_lock/r/innodb_row_lock_2.result BitKeeper/deleted/.del-innodb_row_lock_3.result: Delete: mysql-test/suite/row_lock/r/innodb_row_lock_3.result BitKeeper/deleted/.del-innodb_row_lock_4.result: Delete: mysql-test/suite/row_lock/r/innodb_row_lock_4.result BitKeeper/deleted/.del-innodb_row_lock_5.result: Delete: mysql-test/suite/row_lock/r/innodb_row_lock_5.result BitKeeper/deleted/.del-innodb_row_lock_big_tab.result: Delete: mysql-test/suite/row_lock/r/innodb_row_lock_big_tab.result BitKeeper/deleted/.del-innodb_row_lock_big_tab_1.result: Delete: mysql-test/suite/row_lock/r/innodb_row_lock_big_tab_1.result BitKeeper/deleted/.del-innodb_row_lock_big_tab_2.result: Delete: mysql-test/suite/row_lock/r/innodb_row_lock_big_tab_2.result BitKeeper/deleted/.del-innodb_row_lock_trig_1.result: Delete: mysql-test/suite/row_lock/r/innodb_row_lock_trig_1.result BitKeeper/deleted/.del-innodb_row_lock_trig_2.result: Delete: mysql-test/suite/row_lock/r/innodb_row_lock_trig_2.result BitKeeper/deleted/.del-innodb_row_lock_view_1.result: Delete: mysql-test/suite/row_lock/r/innodb_row_lock_view_1.result BitKeeper/deleted/.del-row_lock.inc: Delete: mysql-test/suite/row_lock/include/row_lock.inc BitKeeper/deleted/.del-row_lock_big_tab.inc: Delete: mysql-test/suite/row_lock/include/row_lock_big_tab.inc BitKeeper/deleted/.del-row_lock_big_tab_1.inc: Delete: mysql-test/suite/row_lock/include/row_lock_big_tab_1.inc BitKeeper/deleted/.del-row_lock_big_tab_2.inc: Delete: mysql-test/suite/row_lock/include/row_lock_big_tab_2.inc BitKeeper/deleted/.del-row_lock_trig.inc: Delete: mysql-test/suite/row_lock/include/row_lock_trig.inc BitKeeper/deleted/.del-row_lock_view.inc: Delete: mysql-test/suite/row_lock/include/row_lock_view.inc BitKeeper/deleted/.del-row_lock_view_mix.inc: Delete: mysql-test/suite/row_lock/include/row_lock_view_mix.inc BitKeeper/deleted/.del-row_lock_view_storedp.inc: Delete: mysql-test/suite/row_lock/include/row_lock_view_storedp.inc BitKeeper/deleted/.del-row_lock_view_trig.inc: Delete: mysql-test/suite/row_lock/include/row_lock_view_trig.inc BitKeeper/deleted/.del-innodb_row_lock_view_2.result: Delete: mysql-test/suite/row_lock/r/innodb_row_lock_view_2.result BitKeeper/deleted/.del-innodb_row_lock_view_mix_1.result: Delete: mysql-test/suite/row_lock/r/innodb_row_lock_view_mix_1.result BitKeeper/deleted/.del-innodb_row_lock_view_mix_2.result: Delete: mysql-test/suite/row_lock/r/innodb_row_lock_view_mix_2.result BitKeeper/deleted/.del-innodb_row_lock_view_storedp_1.result: Delete: mysql-test/suite/row_lock/r/innodb_row_lock_view_storedp_1.result BitKeeper/deleted/.del-innodb_row_lock_view_storedp_2.result: Delete: mysql-test/suite/row_lock/r/innodb_row_lock_view_storedp_2.result BitKeeper/deleted/.del-innodb_row_lock_view_trig_1.result: Delete: mysql-test/suite/row_lock/r/innodb_row_lock_view_trig_1.result BitKeeper/deleted/.del-innodb_row_lock_view_trig_2.result: Delete: mysql-test/suite/row_lock/r/innodb_row_lock_view_trig_2.result BitKeeper/deleted/.del-ndb_row_lock_1.result: Delete: mysql-test/suite/row_lock/r/ndb_row_lock_1.result BitKeeper/deleted/.del-ndb_row_lock_2.result: Delete: mysql-test/suite/row_lock/r/ndb_row_lock_2.result BitKeeper/deleted/.del-ndb_row_lock_3.result: Delete: mysql-test/suite/row_lock/r/ndb_row_lock_3.result BitKeeper/deleted/.del-ndb_row_lock_4.result: Delete: mysql-test/suite/row_lock/r/ndb_row_lock_4.result BitKeeper/deleted/.del-ndb_row_lock_5.result: Delete: mysql-test/suite/row_lock/r/ndb_row_lock_5.result BitKeeper/deleted/.del-ndb_row_lock_big_tab.result: Delete: mysql-test/suite/row_lock/r/ndb_row_lock_big_tab.result BitKeeper/deleted/.del-ndb_row_lock_big_tab_1.result: Delete: mysql-test/suite/row_lock/r/ndb_row_lock_big_tab_1.result BitKeeper/deleted/.del-ndb_row_lock_big_tab_2.result: Delete: mysql-test/suite/row_lock/r/ndb_row_lock_big_tab_2.result BitKeeper/deleted/.del-ndb_row_lock_trig_1.result: Delete: mysql-test/suite/row_lock/r/ndb_row_lock_trig_1.result BitKeeper/deleted/.del-ndb_row_lock_trig_2.result: Delete: mysql-test/suite/row_lock/r/ndb_row_lock_trig_2.result BitKeeper/deleted/.del-ndb_row_lock_view_1.result: Delete: mysql-test/suite/row_lock/r/ndb_row_lock_view_1.result BitKeeper/deleted/.del-ndb_row_lock_view_2.result: Delete: mysql-test/suite/row_lock/r/ndb_row_lock_view_2.result BitKeeper/deleted/.del-innodb_row_lock_1.test: Delete: mysql-test/suite/row_lock/t/innodb_row_lock_1.test BitKeeper/deleted/.del-innodb_row_lock_2.test: Delete: mysql-test/suite/row_lock/t/innodb_row_lock_2.test BitKeeper/deleted/.del-innodb_row_lock_3.test: Delete: mysql-test/suite/row_lock/t/innodb_row_lock_3.test BitKeeper/deleted/.del-innodb_row_lock_4.test: Delete: mysql-test/suite/row_lock/t/innodb_row_lock_4.test BitKeeper/deleted/.del-innodb_row_lock_5.test: Delete: mysql-test/suite/row_lock/t/innodb_row_lock_5.test BitKeeper/deleted/.del-innodb_row_lock_big_tab.test: Delete: mysql-test/suite/row_lock/t/innodb_row_lock_big_tab.test BitKeeper/deleted/.del-innodb_row_lock_big_tab_1.test: Delete: mysql-test/suite/row_lock/t/innodb_row_lock_big_tab_1.test BitKeeper/deleted/.del-innodb_row_lock_big_tab_2.test: Delete: mysql-test/suite/row_lock/t/innodb_row_lock_big_tab_2.test BitKeeper/deleted/.del-innodb_row_lock_trig_1.test: Delete: mysql-test/suite/row_lock/t/innodb_row_lock_trig_1.test BitKeeper/deleted/.del-innodb_row_lock_trig_2.test: Delete: mysql-test/suite/row_lock/t/innodb_row_lock_trig_2.test BitKeeper/deleted/.del-innodb_row_lock_view_1.test: Delete: mysql-test/suite/row_lock/t/innodb_row_lock_view_1.test BitKeeper/deleted/.del-innodb_row_lock_view_2.test: Delete: mysql-test/suite/row_lock/t/innodb_row_lock_view_2.test BitKeeper/deleted/.del-innodb_row_lock_view_mix_1.test: Delete: mysql-test/suite/row_lock/t/innodb_row_lock_view_mix_1.test BitKeeper/deleted/.del-ndb_row_lock_view_mix_1.result: Delete: mysql-test/suite/row_lock/r/ndb_row_lock_view_mix_1.result BitKeeper/deleted/.del-ndb_row_lock_view_mix_2.result: Delete: mysql-test/suite/row_lock/r/ndb_row_lock_view_mix_2.result BitKeeper/deleted/.del-ndb_row_lock_view_storedp_1.result: Delete: mysql-test/suite/row_lock/r/ndb_row_lock_view_storedp_1.result BitKeeper/deleted/.del-ndb_row_lock_view_storedp_2.result: Delete: mysql-test/suite/row_lock/r/ndb_row_lock_view_storedp_2.result BitKeeper/deleted/.del-ndb_row_lock_view_trig_1.result: Delete: mysql-test/suite/row_lock/r/ndb_row_lock_view_trig_1.result BitKeeper/deleted/.del-ndb_row_lock_view_trig_2.result: Delete: mysql-test/suite/row_lock/r/ndb_row_lock_view_trig_2.result BitKeeper/deleted/.del-innodb_row_lock_view_mix_2.test: Delete: mysql-test/suite/row_lock/t/innodb_row_lock_view_mix_2.test BitKeeper/deleted/.del-innodb_row_lock_view_storedp_1.test: Delete: mysql-test/suite/row_lock/t/innodb_row_lock_view_storedp_1.test BitKeeper/deleted/.del-innodb_row_lock_view_storedp_2.test: Delete: mysql-test/suite/row_lock/t/innodb_row_lock_view_storedp_2.test BitKeeper/deleted/.del-innodb_row_lock_view_trig_1.test: Delete: mysql-test/suite/row_lock/t/innodb_row_lock_view_trig_1.test BitKeeper/deleted/.del-innodb_row_lock_view_trig_2.test: Delete: mysql-test/suite/row_lock/t/innodb_row_lock_view_trig_2.test BitKeeper/deleted/.del-ndb_row_lock_1.test: Delete: mysql-test/suite/row_lock/t/ndb_row_lock_1.test BitKeeper/deleted/.del-ndb_row_lock_2.test: Delete: mysql-test/suite/row_lock/t/ndb_row_lock_2.test BitKeeper/deleted/.del-ndb_row_lock_3.test: Delete: mysql-test/suite/row_lock/t/ndb_row_lock_3.test BitKeeper/deleted/.del-ndb_row_lock_4.test: Delete: mysql-test/suite/row_lock/t/ndb_row_lock_4.test BitKeeper/deleted/.del-ndb_row_lock_5.test: Delete: mysql-test/suite/row_lock/t/ndb_row_lock_5.test BitKeeper/deleted/.del-ndb_row_lock_big_tab.test: Delete: mysql-test/suite/row_lock/t/ndb_row_lock_big_tab.test BitKeeper/deleted/.del-ndb_row_lock_big_tab_1.test: Delete: mysql-test/suite/row_lock/t/ndb_row_lock_big_tab_1.test BitKeeper/deleted/.del-ndb_row_lock_big_tab_2.test: Delete: mysql-test/suite/row_lock/t/ndb_row_lock_big_tab_2.test BitKeeper/deleted/.del-ndb_row_lock_trig_1.test: Delete: mysql-test/suite/row_lock/t/ndb_row_lock_trig_1.test BitKeeper/deleted/.del-ndb_row_lock_trig_2.test: Delete: mysql-test/suite/row_lock/t/ndb_row_lock_trig_2.test BitKeeper/deleted/.del-ndb_row_lock_view_1.test: Delete: mysql-test/suite/row_lock/t/ndb_row_lock_view_1.test BitKeeper/deleted/.del-ndb_row_lock_view_2.test: Delete: mysql-test/suite/row_lock/t/ndb_row_lock_view_2.test BitKeeper/deleted/.del-ndb_row_lock_view_mix_1.test: Delete: mysql-test/suite/row_lock/t/ndb_row_lock_view_mix_1.test BitKeeper/deleted/.del-ndb_row_lock_view_mix_2.test: Delete: mysql-test/suite/row_lock/t/ndb_row_lock_view_mix_2.test BitKeeper/deleted/.del-ndb_row_lock_view_storedp_1.test: Delete: mysql-test/suite/row_lock/t/ndb_row_lock_view_storedp_1.test BitKeeper/deleted/.del-ndb_row_lock_view_storedp_2.test: Delete: mysql-test/suite/row_lock/t/ndb_row_lock_view_storedp_2.test BitKeeper/deleted/.del-ndb_row_lock_view_trig_1.test: Delete: mysql-test/suite/row_lock/t/ndb_row_lock_view_trig_1.test BitKeeper/deleted/.del-ndb_row_lock_view_trig_2.test: Delete: mysql-test/suite/row_lock/t/ndb_row_lock_view_trig_2.test Makefile.am: Remove the "row_lock" suite from the "test-bt" target. Also, a formatting change: empty line for better readability.
-
unknown authored
into xiphis.org:/anubis/antony/work/mysql-5.0-engines.merge
-
unknown authored
into debian.(none):/M50/push-5.0
-
unknown authored
into debian.(none):/M50/push-5.0
-
unknown authored
into debian.(none):/M50/push-5.0
-
unknown authored
into debian.(none):/M41/push-4.1
-
unknown authored
into debian.(none):/M50/bug16635-5.0 BitKeeper/deleted/.del-errmsg.txt~f96b7055cac394e: Auto merged
-
unknown authored
Fix error in previous change, correct --language argument. scripts/mysql_install_db.sh: Fix error in previous change, correct --language argument.
-
unknown authored
scripts/mysql_install_db.sh: Put back variable initialisation for those which could be passed in via the environment and confuse the script.
-
unknown authored
available and reduce the chance of failure. This should fix bug#28585 which is caused by the script being quite random in how it finds files it requires and not giving very good feedback to the user about what went wrong. Also update make_binary_distribution so that it provides the correct path to the required SQL scripts when generating mysql_install_db. The script only previously worked because of the permissive behaviour which looked around the current working directory before the "correct" location. This could lead to severe problems if the user happened to run the script from a location which contained older or even broken copies of the SQL scripts. We now require either a complete binary release (and the mysql_install_db script ran from inside the extracted archive), or an installed compiled tree, as this is the only way we can be sure everything that we need is available and ready to run. While working on this fix, also clean up the mysql_install_db script a lot to make it simpler, easier to read, and hopefully less prone to bugs in the future. scripts/make_binary_distribution.sh: SQL files live in ./share not ./support-files in binary distribution. scripts/mysql_install_db.sh: Use a consistent shell indentation style.
-
unknown authored
to 150 or 107 characters for those messages which are generated by the embedded server during release builds. This fixes bug#16635: Error messages wrong: absolute path names, "%s" format code See the bug report or the changelog for "sql/share/english/errmsg.txt" for instructions how to do that with other languages, even at the customer site, and for the restrictions to keep. sql/share/english/errmsg.txt: The embedded server uses absolute path names in its error messages, in the release build environment these exceed the 64 character limit which the format strings for the error messages impose (bug#16635). But when the messages are output, the server does the "printf()" internally in a 256 character buffer; the constant text and the expanded variables (strings, error number) must fit into this. (If the buffer would overflow, a format specification will not be expanded but just copied with its code, and the message output will just contain '%s' or '%d' where a value is expected.) So the string lengths are increased to 150 characters in those messages which are issued by the embedded server during release tests and contain 1 (one) path name, but only to 107 in the "rename" message which contains 2 (two). This solves bug#16635 for the release builds. For other languages used by OEM customers, similar fixes may be needed, but we cannot test them. These fixes can be done even in a binary installation at the customer site by following these steps: cd <<install-root>>/share $EDITOR <<lang>>/errmsg.txt ../../bin/comp_err -C./charsets/ <<lang>>/errmsg.txt <<lang>>/errmsg.sys and then restarting the server.
-
unknown authored
sql/ha_federated.cc: remote_error_number is set to -1 when an error was already reported with my_error(). ER(-1) will also cause a crash on 64bit arch and only worked on 32bit arch by luck
-
- 25 Jul, 2007 2 commits
-
-
unknown authored
into gleb.loc:/home/uchum/work/bk/5.0-opt mysql-test/t/create.test: Auto merged sql/field.cc: Auto merged sql/sql_base.cc: Auto merged sql/table.cc: Auto merged mysql-test/r/create.result: Merge with 5.0 (main).
-
unknown authored
"Federated Denial of Service" Federated storage engine used to attempt to open connections within the ::create() and ::open() methods which are invoked while LOCK_open mutex is being held by mysqld. As a result, no other client sessions can open tables while Federated is attempting to open a connection. Long DNS lookup times would stall mysqld's operation and a rogue connection string which connects to a remote server which simply stalls during handshake can stall mysqld for a much longer period of time. This patch moves the opening of the connection much later, when the federated actually issues queries, by which time the LOCK_open mutex is no longer being held. mysql-test/r/federated.result: change of test/results due to patch for bug25679 mysql-test/t/federated.test: change of test/results due to patch for bug25679 sql/ha_federated.cc: bug25679 remove function check_foreign_fata_source() ha_federated::open() no longer opens the federated connection. ha_federated::create() no longer opens and tests connection. ha_federated::real_connect() opens connection and tests presence of table. ha_federated::real_query() sends query, calling real_connect() if neccessary. sql/ha_federated.h: bug25679 new methods real_query() and real_connect()
-