An error occurred fetching the project authors.
- 31 Mar, 2010 1 commit
-
-
Georgi Kodinov authored
Added a read-only global boolean variable skip_name_resolve.
-
- 10 Mar, 2010 1 commit
-
-
Sergey Vojtovich authored
SET autocommit=1 while XA transaction is active may cause various side effects, including memory corruption and server crash. The problem is that SET autocommit=1 and further queries attempt to commit local transaction, whereas XA transaction is still active. As local and XA transactions are mutually exclusive, this patch forbids enabling autocommit mode while XA transaction is active. mysql-test/r/xa.result: A test case for BUG#51342. mysql-test/t/xa.test: A test case for BUG#51342. sql/set_var.cc: Forbid enabling autocommit mode while XA transaction is active.
-
- 21 Jan, 2010 1 commit
-
-
Magne Mahre authored
Several items said to be deprecated in the 4.1 manual have never been removed. This worklog adds deprecation warnings when these items are used, and warns the user that the items will be removed in MySQL 5.6. A couple of previously deprecation decision have been reversed (see single file comments) client/client_priv.h: Macro similar to the one in the server (mysql_priv.h) for printing a deprecation warning message client/mysql.cc: no-auto-rehash will not be deprecated skip-line-numbers will not be deprecated skip-column-names will not be deprecated no-pager is deprecated set-variable is deprecated no-named-commands is deprecated client/mysqladmin.cc: set-variable is deprecated client/mysqlbinlog.cc: position is deprecated client/mysqldump.c: first-slave is deprecated no-set-names is deprecated set-variable is deprecated mysql-test/r/mysqlbinlog.result: Adding the [Warning] to the test case, just to show that the deprecation works. The test case will be changed in Celosia to use --start-position. mysys/my_getopt.c: set-variable (include -O) is deprecated scripts/mysqld_multi.sh: Warning for mysqld_multi sql/mysqld.cc: default-collation is deprecated log-bin-trust-routine-creators is deprecated set-variable is deprecated default-character-set is deprecated safe-show-database is deprecated sql/share/errmsg.txt: Added version number for sql_log_update deprecation message.
-
- 20 Jan, 2010 1 commit
-
-
Alfranio Correia authored
It is well-known that due to concurrency issues, a slave can become inconsistent when a transaction contains updates to both transaction and non-transactional tables in statement and mixed modes. In a nutshell, the current code-base tries to preserve causality among the statements by writing non-transactional statements to the txn-cache which is flushed upon commit. However, modifications done to non-transactional tables on behalf of a transaction become immediately visible to other connections but may not immediately get into the binary log and therefore consistency may be broken. In general, it is impossible to automatically detect causality/dependency among statements by just analyzing the statements sent to the server. This happen because dependency may be hidden in the application code and it is necessary to know a priori all the statements processed in the context of a transaction such as in a procedure. Moreover, even for the few cases that we could automatically address in the server, the computation effort required could make the approach infeasible. So, in this patch we introduce the option - "--binlog-direct-non-transactional-updates" that can be used to bypass the current behavior in order to write directly to binary log statements that change non-transactional tables. mysql-test/extra/rpl_tests/rpl_mixing_engines.inc: Backported this from Celosia to improve the test cases related to the NTM issue. sql/log.cc: Checks the --binlog-direct-non-transactional-updates before choosing to either use the trxn-cache or not. sql/mysqld.cc: Introduces the option --binlog-direct-non-transactional-updates. sql/set_var.cc: Introduces the option --binlog-direct-non-transactional-updates. sql/sql_class.h: Introduces the option --binlog-direct-non-transactional-updates.
-
- 17 Dec, 2009 1 commit
-
-
Satya B authored
When compressed myisam files are opened, they are always memory mapped sometimes causing memory swapping problems. When we mmap the myisam compressed tables of size greater than the memory available, the kswapd0 process utilization is very high consuming 30-40% of the cpu. This happens only with linux kernels older than 2.6.9 With newer linux kernels, we don't have this problem of high cpu consumption and this option may not be required. The option 'myisam_mmap_size' is added to limit the amount of memory used for memory mapping of myisam files. This option is not dynamic. The default value on 32 bit system is 4294967295 bytes and on 64 bit system it is 18446744073709547520 bytes. Note: Testcase only tests the option variable. The actual bug has be to tested manually. include/my_global.h: Fix for Bug #37408 - Compressed MyISAM files should not require/use mmap() define SIZE_T_MAX include/myisam.h: Fix for Bug #37408 - Compressed MyISAM files should not require/use mmap() declare 'myisam_mmap_size' and 'myisam_mmap_used' variables and the mutex THR_LOCK_myisam_mmap myisam/mi_packrec.c: Fix for Bug #37408 - Compressed MyISAM files should not require/use mmap() add 'myisam_mmap_size' option which limits the memory available to mmap of myisam files myisam/mi_static.c: Fix for Bug #37408 - Compressed MyISAM files should not require/use mmap() declare 'myisam_mmap_size' and 'myisam_mmap_used' variables and the mutex THR_LOCK_myisam_mmap myisam/myisamdef.h: Fix for Bug #37408 - Compressed MyISAM files should not require/use mmap() move MEMMAP_EXTRA_MARGIN to myisam.h so that it can be used in mysqld.cc mysql-test/r/variables.result: Fix for Bug #37408 - Compressed MyISAM files should not require/use mmap() Testcase for BUG#37408 to test the myisam_mmap_size option mysql-test/t/variables.test: Fix for Bug #37408 - Compressed MyISAM files should not require/use mmap() Testcase for BUG#37408 to test the myisam_mmap_size option mysys/my_thr_init.c: Fix for Bug #37408 - Compressed MyISAM files should not require/use mmap() intialize the lock THR_LOCK_myisam_mmap sql/mysqld.cc: Fix for Bug #37408 - Compressed MyISAM files should not require/use mmap() add the 'myisam_mmap_size' option sql/set_var.cc: Fix for Bug #37408 - Compressed MyISAM files should not require/use mmap() add the 'myisam_mmap_size' to the SHOW VARIABLES list
-
- 29 Sep, 2009 1 commit
-
-
Ingo Struewing authored
Backport from 6.0 to 5.1. Only those sync points are included, which are used in debug_sync.test. The Debug Sync Facility allows to place synchronization points in the code: open_tables(...) DEBUG_SYNC(thd, "after_open_tables"); lock_tables(...) When activated, a sync point can - Send a signal and/or - Wait for a signal Nomenclature: - signal: A value of a global variable that persists until overwritten by a new signal. The global variable can also be seen as a "signal post" or "flag mast". Then the signal is what is attached to the "signal post" or "flag mast". - send a signal: Assign the value (the signal) to the global variable ("set a flag") and broadcast a global condition to wake those waiting for a signal. - wait for a signal: Loop over waiting for the global condition until the global value matches the wait-for signal. Please find more information in the top comment in debug_sync.cc or in the worklog entry. .bzrignore: WL#4259 - Debug Sync Facility Added the symbolic link libmysqld/debug_sync.cc. CMakeLists.txt: WL#4259 - Debug Sync Facility Added definition for ENABLED_DEBUG_SYNC. configure.in: WL#4259 - Debug Sync Facility Added definition for ENABLED_DEBUG_SYNC. include/my_sys.h: WL#4259 - Debug Sync Facility Added definition for the DEBUG_SYNC_C macro. libmysqld/CMakeLists.txt: WL#4259 - Debug Sync Facility Added sql/debug_sync.cc. libmysqld/Makefile.am: WL#4259 - Debug Sync Facility Added sql/debug_sync.cc. mysql-test/include/have_debug_sync.inc: WL#4259 - Debug Sync Facility New include file. mysql-test/mysql-test-run.pl: WL#4259 - Debug Sync Facility Added option --debug_sync_timeout. mysql-test/r/debug_sync.result: WL#4259 - Debug Sync Facility New test result. mysql-test/r/have_debug_sync.require: WL#4259 - Debug Sync Facility New require file. mysql-test/t/debug_sync.test: WL#4259 - Debug Sync Facility New test file. mysys/my_static.c: WL#4259 - Debug Sync Facility Added definition for debug_sync_C_callback_ptr. mysys/thr_lock.c: WL#4259 - Debug Sync Facility Added sync point "wait_for_lock". sql/CMakeLists.txt: WL#4259 - Debug Sync Facility Added debug_sync.cc and debug_sync.h. sql/Makefile.am: WL#4259 - Debug Sync Facility Added debug_sync.cc and debug_sync.h. sql/debug_sync.cc: WL#4259 - Debug Sync Facility New source file. sql/debug_sync.h: WL#4259 - Debug Sync Facility New header file. sql/mysqld.cc: WL#4259 - Debug Sync Facility Added opt_debug_sync_timeout. Added calls to debug_sync_init() and debug_sync_end(). Fixed a purecov comment (unrelated). sql/set_var.cc: WL#4259 - Debug Sync Facility Added server variable "debug_sync". sql/set_var.h: WL#4259 - Debug Sync Facility Added declaration for server variable "debug_sync". sql/share/errmsg.txt: WL#4259 - Debug Sync Facility Added error messages ER_DEBUG_SYNC_TIMEOUT and ER_DEBUG_SYNC_HIT_LIMIT. sql/sql_base.cc: WL#4259 - Debug Sync Facility Added sync points "after_flush_unlock" and "before_lock_tables_takes_lock". sql/sql_class.cc: WL#4259 - Debug Sync Facility Added initialization for debug_sync_control to THD::THD. Added calls to debug_sync_init_thread() and debug_sync_end_thread(). sql/sql_class.h: WL#4259 - Debug Sync Facility Added element debug_sync_control to THD. storage/myisam/myisamchk.c: Fixed a typo in an error message string (unrelated).
-
- 23 Sep, 2009 1 commit
-
-
Staale Smedseng authored
with gcc 4.3.2 Cleaning up warnings not present in 5.0.
-
- 22 Sep, 2009 1 commit
-
-
Davi Arnaut authored
The "socket" variable is not available on Windows even though the --socket option can be used to specify the pipe name for local connections that use a named pipe. The solution is to ensure that the variable is always defined. mysql-test/r/windows.result: Add test case result for Bug#45498 mysql-test/t/windows.test: Add test case for Bug#45498 sql/set_var.cc: socket variable must always be present.
-
- 10 Sep, 2009 1 commit
-
-
Alexander Nozdrin authored
on Windows in dbug.c) -- part 2: a patch for the DBUG subsystem to detect misuse of DBUG_ENTER / DBUG_RETURN macros. 5.1 version.
-
- 16 Jul, 2009 1 commit
-
-
Georgi Kodinov authored
Fixed various compilation warnings when compiling on a 64 bit windows.
-
- 19 Jun, 2009 1 commit
-
-
Staale Smedseng authored
Inconsistent behavior of session variable max_allowed_packet (and net_buffer_length); only assignment to the global variable has any effect, without this being obvious to the user. The patch for Bug#22891 is backported to 5.0, making the two session variables read-only. As this is a backport to GA software, the error used when trying to assign to the read- only variable is ER_UNKNOWN_ERROR. The error message is the same as in 5.1+. mysql-test/t/variables.test: Tests are changed to account for the new semantics, and assignment to the read-only variables is added to test the emission of the correct error message. sql/set_var.cc: Both max_allowed_packet and net_buffer_length are changed to be of type sys_var_thd_ulong_session_readonly. ER_UNKNOWN_ERROR is used to indicate an attempt to assign to an instance of a read-only variable. sql/set_var.h: Class sys_var_thd_ulong_session_readonly is added.
-
- 15 May, 2009 1 commit
-
-
Satya B authored
always rollsback. The global variable max_binlog_cache_size cannot be set more than 4GB on 32 bit systems, limiting transactions of all storage engines to 4G of changes. The problem is max_binlog_cache_size is declared as ulong which is 4 bytes on 32 bit and 8 bytes on 64 bit machines. Fixed by using ulonglong for max_binlog_cache_size which is 8bytes on 32 and 64 bit machines.The range for max_binlog_cache_size on 32 bit and 64 bit systems is 4096-18446744073709547520 bytes. mysql-test/r/variables.result: Result file for BUG#10206 mysql-test/t/variables.test: Testcase for BUG#10206 sql/mysql_priv.h: change the extern declaration of max_binlog_cache_size to ulonglong sql/mysqld.cc: change the declaration of max_binlog_cache_size to ulonglong and the option is fixed to extend the range of max_binlog_cache_size sql/set_var.cc: change the variable declaration of max_binlog_cache_size to ulonglong
-
- 11 May, 2009 1 commit
-
-
Chad MILLER authored
Also, add CPP so Windows works properly for profiling. Community-server functionality is required.
-
- 05 May, 2009 1 commit
-
-
Chad MILLER authored
-
- 30 Apr, 2009 1 commit
-
-
Daniel Fischer authored
-
- 24 Apr, 2009 1 commit
-
-
Satya B authored
for indexes of InnoDB table Fixes by replacing the PRNG that is used to pick random pages with a better one. Also adds a configuration option "innodb_use_legacy_cardinality_algorithm" to enable the fix only when the option is set. This patch is from http://bugs.mysql.com/file.php?id=11789
-
- 16 Mar, 2009 1 commit
-
-
Sergey Petrunia authored
- Fix valgrind warning on attempt to run a "SET optimizer_switch=number" statement. Need to call c_ptr_safe() as strings returned by non-string items are not necessarily null-terminated.
-
- 14 Mar, 2009 1 commit
-
-
Sergey Petrunia authored
mysql-test/r/index_merge_myisam.result: More tests mysql-test/t/index_merge_myisam.test: More tests
-
- 11 Mar, 2009 2 commits
-
-
Tatiana A. Nurnberg authored
normalize error-messages mysql-test/r/variables.result: show that warning uses underscore (sysvar-name), not hyphens (option-name) mysql-test/t/variables.test: show that warning uses underscore (sysvar-name), not hyphens (option-name) sql/set_var.cc: normalize error-messages
-
Sergey Petrunia authored
mysql-test/r/index_merge_myisam.result: Testcases mysql-test/t/index_merge_myisam.test: Testcases sql/strfunc.cc: Change optimizer_switch from no_xxx to xxx=on/xx=off. - Add functions to parse the new syntax
-
- 05 Mar, 2009 2 commits
-
-
Tatiana A. Nurnberg authored
Some changes that make things more elegant in 6.0, backported so the code is mostly the same in 5.1, for easier maintainence. sql/set_var.cc: Backporting some changes to 5.1 so the code is mostly the same in both versions. Less to learn!
-
Guangbao Ni authored
When binlog_format is STATEMENT and the statement is unsafe before, the unsafe warning/error message was issued without checking whether the SQL_LOG_BIN was turned on or not. Fixed with adding a sql_log_bin_toplevel flag in THD to check whether SQL_LOG_BIN is ON in current session whatever the current is in sp or not. mysql-test/suite/binlog/r/binlog_unsafe.result: Test case result for unsafe warning/error message mysql-test/suite/binlog/t/binlog_unsafe.test: Test case for unsafe message warning/error sql/set_var.cc: Adding a function set_option_log_bin_bit() which specailly handles to the change of SQL_LOG_BIN bit in order to set sql_log_bin_toplevel according to SQL_LOG_BIN current value at the same time. sql/sql_class.cc: Initialize the flag sql_log_bin_toplevel in THD::init(), and add the condition to check whether unsafe ror message was issued. sql/sql_class.h: Add a sql_log_bin_toplevel flag in THD to indicate whether the toplevel SQL_LOG_BIN is
-
- 27 Feb, 2009 1 commit
-
-
Tatiana A. Nurnberg authored
In STRICT mode, out-of-bounds values caused an error message to be queued (rather than just a warning), without any further error-like processing happening. (The error is queued during update, at which time it's too late. For it to be processed properly, it would need to be queued during check-stage.) The assertion rightfully complains that we're trying to send an OK while having an error queued. Changeset breaks a lot of tests out into check-stage. This also allows us to send more correct warnings/error messages. sql/set_var.cc: cleanup: fold get_unsigned() and fix_unsigned() into one, as well as all the semi-common code from the ::check functions.
-
- 24 Feb, 2009 1 commit
-
-
Tatiana A. Nurnberg authored
In STRICT mode, out-of-bounds values caused an error message to be queued (rather than just a warning), without any further error-like processing happening. (The error is queued during update, at which time it's too late. For it to be processed properly, it would need to be queued during check-stage.) The assertion rightfully complains that we're trying to send an OK while having an error queued. Changeset breaks a lot of tests out into check-stage. This also allows us to send more correct warnings/error messages. sql/set_var.cc: cleanup: fold get_unsigned() and fix_unsigned() into one, as well as all the semi-common code from the ::check functions.
-
- 23 Feb, 2009 1 commit
-
-
Sergey Petrunia authored
- Add support for setting it as a server commandline argument - Add support for those switches: = no_index_merge = no_index_merge_union = no_index_merge_sort_union = no_index_merge_intersection mysql-test/r/index_merge_myisam.result: Testcases for index_merge related @@optimizer_switch flags. mysql-test/t/index_merge_myisam.test: Testcases for index_merge related @@optimizer_switch flags. sql/set_var.cc: - Backport @@optimizer_switch support from 6.0 - Add support for setting it as a server commandline argument sql/sql_class.h: - Backport @@optimizer_switch support from 6.0 sql/sql_select.h: - Backport @@optimizer_switch support from 6.0
-
- 16 Feb, 2009 1 commit
-
-
Davi Arnaut authored
Substitute all references of MySQL version "5.2" to "6.0" in deprecation warning messages.Deprecated constructs are being removed in the 6.0 tree.
-
- 10 Feb, 2009 1 commit
-
-
Ignacio Galarza authored
- Remove bothersome warning messages. This change focuses on the warnings that are covered by the ignore file: support-files/compiler_warnings.supp. - Strings are guaranteed to be max uint in length
-
- 09 Feb, 2009 1 commit
-
-
Sergey Glukhov authored
added ignore-builtin-innodb option which disabled initialization of builtin InnoDB plugin mysql-test/r/innodb_ignore_builtin.result: test case mysql-test/t/innodb_ignore_builtin-master.opt: test case mysql-test/t/innodb_ignore_builtin.test: test case sql/mysql_priv.h: added ignore-builtin-innodb option which disabled initialization of builtin InnoDB plugin sql/mysqld.cc: added ignore-builtin-innodb option which disabled initialization of builtin InnoDB plugin sql/set_var.cc: added ignore-builtin-innodb option which disabled initialization of builtin InnoDB plugin sql/sql_plugin.cc: added ignore-builtin-innodb option which disabled initialization of builtin InnoDB plugin
-
- 03 Feb, 2009 1 commit
-
-
Tatiana A. Nurnberg authored
In STRICT mode, out-of-bounds values caused an error message to be queued (rather than just a warning), without any further error-like processing happening. (The error is queued during update, at which time it's too late. For it to be processed properly, it would need to be queued during check-stage.) The assertion rightfully complains that we're trying to send an OK while having an error queued. Changeset breaks a lot of tests out into check-stage. This also allows us to send more correct warnings/error messages. mysql-test/r/auto_increment_increment_basic.result: update test results reflecting more correct warnings mysql-test/r/auto_increment_increment_func.result: update test results reflecting more correct warnings mysql-test/r/auto_increment_offset_basic.result: update test results reflecting more correct warnings mysql-test/r/auto_increment_offset_func.result: update test results reflecting more correct warnings mysql-test/r/concurrent_insert_basic.result: update test results reflecting more correct warnings mysql-test/r/connect_timeout_basic.result: update test results reflecting more correct warnings mysql-test/r/default_week_format_basic.result: update test results reflecting more correct warnings mysql-test/r/delayed_insert_timeout_basic.result: update test results reflecting more correct warnings mysql-test/r/div_precision_increment_basic.result: update test results reflecting more correct warnings mysql-test/r/expire_logs_days_basic.result: update test results reflecting more correct warnings mysql-test/r/group_concat_max_len_basic.result: update test results reflecting more correct warnings mysql-test/r/interactive_timeout_basic.result: update test results reflecting more correct warnings mysql-test/r/max_allowed_packet_basic.result: update test results reflecting more correct warnings mysql-test/r/max_binlog_size_basic.result: update test results reflecting more correct warnings mysql-test/r/max_connections_basic.result: update test results reflecting more correct warnings mysql-test/r/max_delayed_threads_basic.result: update test results reflecting more correct warnings mysql-test/r/max_error_count_basic.result: update test results reflecting more correct warnings mysql-test/r/max_insert_delayed_threads_basic.result: update test results reflecting more correct warnings mysql-test/r/max_length_for_sort_data_basic.result: update test results reflecting more correct warnings mysql-test/r/max_prepared_stmt_count_basic.result: update test results reflecting more correct warnings mysql-test/r/max_relay_log_size_basic.result: update test results reflecting more correct warnings mysql-test/r/max_sort_length_basic.result: update test results reflecting more correct warnings mysql-test/r/max_sp_recursion_depth_basic.result: update test results reflecting more correct warnings mysql-test/r/myisam_data_pointer_size_basic.result: update test results reflecting more correct warnings mysql-test/r/net_buffer_length_basic.result: update test results reflecting more correct warnings mysql-test/r/net_read_timeout_basic.result: update test results reflecting more correct warnings mysql-test/r/net_write_timeout_basic.result: update test results reflecting more correct warnings mysql-test/r/optimizer_prune_level_basic.result: update test results reflecting more correct warnings mysql-test/r/optimizer_search_depth_basic.result: update test results reflecting more correct warnings mysql-test/r/preload_buffer_size_basic.result: update test results reflecting more correct warnings mysql-test/r/ps.result: update test results reflecting more correct warnings mysql-test/r/read_buffer_size_basic.result: update test results reflecting more correct warnings mysql-test/r/read_rnd_buffer_size_basic.result: update test results reflecting more correct warnings mysql-test/r/slave_net_timeout_basic.result: update test results reflecting more correct warnings mysql-test/r/slow_launch_time_basic.result: update test results reflecting more correct warnings mysql-test/r/table_definition_cache_basic.result: update test results reflecting more correct warnings mysql-test/r/table_lock_wait_timeout_basic.result: update test results reflecting more correct warnings mysql-test/r/table_open_cache_basic.result: update test results reflecting more correct warnings mysql-test/r/variables.result: add test case that throws error (rather than warning) in the middle of trying to set a system-variable. mysql-test/t/variables.test: add test case that throws error (rather than warning) in the middle of trying to set a system-variable. sql/set_var.cc: Add comments. Prevent double-warnings. Through warnings for negative values given to unsigned system-variables. Process errors and warnings at check() stage rather than update() stage, since we may only issue warnings at the latter.
-
- 08 Jan, 2009 1 commit
-
-
Timothy Smith authored
The binlog_innodb test was sensitive to what tests ran before it. Now run FLUSH STATUS before performing operations that need to be checked. sys_var_thd_ulong::update() was improperly casting an option value from ulonglong to ulong before comparing it to the max allowed value. On systems where ulong and ulonglong are of different size, this caused values greater than ULONG_MAX to wrap around (not be truncated to ULONG_MAX, which appears to have been the intention of the original coder), and caused some checks to work incorrectly. This wasn't generally visible to the user, because later checks would prevent the wrapped-around value from being used. But it caused warning messages to differ between 32- and 64-bit platforms. Fix is to just remove the cast. Also added a DBUG_ASSERT to ensure that the value really is capped properly before finally stuffing it into the ulong.
-
- 24 Dec, 2008 1 commit
-
-
Sergey Glukhov authored
init user->user struct with thd->security_ctx->priv_user context if user->user is not initializied mysql-test/r/grant.result: test result mysql-test/t/grant.test: test case sql/set_var.cc: init user->user struct with thd->security_ctx->priv_user context if user->user is not initializied
-
- 28 Nov, 2008 1 commit
-
-
Georgi Kodinov authored
The SHOW VARIABLES LIKE .../SELECT @@/SELECT ... FROM INFORMATION_SCHEMA.VARIABLES were assuming that all the system variables are in system charset (UTF-8). However the variables that are settable through command line will have a different character set (character_set_filesystem). Fixed the server to remember the correct character set of basedir, datadir, tmpdir, ssl, plugin_dir, slave_load_tmpdir, innodb variables; init_connect and init_slave variables and use it when processing data. mysql-test/r/ctype_filesystem.result: Bug #37339: test case (should be in utf-8) mysql-test/t/ctype_filesystem-master.opt: Bug #37339: test case (should be in ISO-8859-1) mysql-test/t/ctype_filesystem.test: Bug #37339: test case sql/mysqld.cc: Bug #37339: remember the correct character set for init_slave and init_connect sql/set_var.cc: Bug #37339: - remember the character set of the relevant variables - implement storing and using the correct character set sql/set_var.h: Bug #37339: implement storing and using the correct character set sql/sql_show.cc: Bug #37339: implement storing and using the correct character set
-
- 21 Nov, 2008 1 commit
-
-
Ingo Struewing authored
Several system variables did not behave like system variables should do. When trying to SET them or use them in SELECT, they were reported as "unknown system variable". But they appeared in SHOW VARIABLES. This has been fixed by removing the "fixed_vars" array of variables and integrating the variables into the normal system variables chain. All of these variables do now behave as read-only global-only variables. Trying to SET them tells they are read-only, trying to SELECT the session value tells they are global only. Selecting the global value works. It delivers the same value as SHOW VARIABLES. mysql-test/r/variables-notembedded.result: Bug#28234 - global/session scope - documentation vs implementation New test result. mysql-test/r/variables.result: Bug#28234 - global/session scope - documentation vs implementation New test result. mysql-test/t/variables-notembedded.test: Bug#28234 - global/session scope - documentation vs implementation Added a test for each moved variable that is not present in an embedded server. mysql-test/t/variables.test: Bug#28234 - global/session scope - documentation vs implementation Added a test for each moved variable that is also present in an embedded server. sql/item_func.cc: Bug#28234 - global/session scope - documentation vs implementation Added SHOW_BOOL to some Item_func_get_system_var methods. sql/set_var.cc: Bug#28234 - global/session scope - documentation vs implementation Moved all variables from the "fixed_vars" array into the normal system variables chain by using the new variable class sys_var_const. Removed the fixed_show_vars array and its initialization in enumerate_sys_vars(). Removed mysql_append_static_vars(), which added fixed_vars arrays to the fixed_show_vars array. sql/set_var.h: Bug#28234 - global/session scope - documentation vs implementation Added the new system variable class sys_var_const. Removed declaration of mysql_append_static_vars(). sql/slave.cc: Bug#28234 - global/session scope - documentation vs implementation Moved the definition of show_slave_skip_errors() from sql_repl.cc to here and renamed it to print_slave_skip_errors(). Changed print_slave_skip_errors() to create a static buffer with a printable version of the error numbers set. Added a call of print_slave_skip_errors() to init_slave_skip_errors(). sql/slave.h: Bug#28234 - global/session scope - documentation vs implementation Added declaration of slave_skip_error_names. sql/sql_repl.cc: Bug#28234 - global/session scope - documentation vs implementation Moved all variables from the "fixed_vars" array into the normal system variables chain by using the new variable class sys_var_const. Moved the definition of show_slave_skip_errors() to slave.cc and modified it to compute the string once at server initialization only. Removed the call to mysql_append_static_vars().
-
- 20 Nov, 2008 1 commit
-
-
Staale Smedseng authored
set but is ignored". This patch makes @@session.max_allowed_packed and @@session.net_buffer_length read-only as suggested in the bug report. The user will have to use SET GLOBAL (and reconnect) to alter the session values of these variables. The error string ER_VARIABLE_IS_READONLY is introduced. Tests are modified accordingly. sql/set_var.cc: The class sys_var_thd_ulong_session_readonly is introduced as a specialization of sys_var_thd_ulong implementing a read-only session variable. The class overrides check() and check_default() to achieve the read-only property for the session part of the variable. sql/set_var.h: The class sys_var_thd_ulong_session_readonly is introduced as a specialization of sys_var_thd_ulong implementing a read-only session variable. The class overrides check() and check_default() to achieve the read-only property for the session part of the variable. sql/share/errmsg.txt: New error ER_VARIABLE_IS_READONLY.
-
- 10 Nov, 2008 1 commit
-
-
Build Team authored
since Oct 1st
-
- 23 Oct, 2008 1 commit
-
-
Jonathan Perkin authored
-
- 08 Oct, 2008 1 commit
-
-
Georgi Kodinov authored
The code to get read the value of a system variable was extracting its value on PREPARE stage and was substituting the value (as a constant) into the parse tree. Note that this must be a reversible transformation, i.e. it must be reversed before each re-execution. Unfortunately this cannot be reliably done using the current code, because there are other non-reversible source tree transformations that can interfere with this reversible transformation. Fixed by not resolving the value at PREPARE, but at EXECUTE (as the rest of the functions operate). Added a cache of the value (so that it's constant throughout the execution of the query). Note that the cache also caches NULL values. Updated an obsolete related test suite (variables-big) and the code to test the result type of system variables (as per bug 74). mysql-test/extra/rpl_tests/rpl_insert_id.test: Bug #32124: removed ambiguous testcase mysql-test/r/innodb_data_home_dir_basic.result: Bug #32124: fixed wrong test case mysql-test/r/innodb_flush_method_basic.result: Bug #32124: fixed wrong test case mysql-test/r/ps_11bugs.result: Bug #32124: test case mysql-test/r/ssl_capath_basic.result: Bug #32124: fixed wrong test case mysql-test/r/ssl_cipher_basic.result: Bug #32124: fixed wrong test case mysql-test/r/variables.result: Bug #32124: system vars are shown as such in EXPLAIN EXTENDED, not as constants. mysql-test/suite/rpl/r/rpl_insert_id.result: Bug #32124: removed ambiguous testcase mysql-test/t/ps_11bugs.test: Bug #32124: test case sql/item.cc: Bug #32124: placed the code to convert string to longlong or double to a function (so that it can be reused) sql/item.h: Bug #32124: placed the code to convert string to longlong or double to a function (so that it can be reused) sql/item_func.cc: Bug #32124: moved the evaluation of system variables at runtime (val_xxx). sql/item_func.h: Bug #32124: moved the evaluation of system variables at runtime (val_xxx). sql/set_var.cc: Bug #32124: removed the code that calculated the system variable's value at PREPARE sql/set_var.h: Bug #32124: removed the code that calculated the system variable's value at PREPARE tests/mysql_client_test.c: Bug #32124 : removed the reading of the system variable, because its max length is depended on the system charset and client charset and can't be easily calculated.
-
- 06 Oct, 2008 1 commit
-
-
Tatiana A. Nurnberg authored
Adds --general_log_file, --slow_query_log_file command- line options to match system variables of the same names. Deprecates --log, --log-slow-queries command-line options and log, log_slow_queries system-variables for v7.0; they are superseded by general_log/general_log_file and slow_query_log/slow_query_log_file, respectively. mysql-test/r/log_basic.result: Change deprecated system variable "log" to general log. mysql-test/r/log_state.result: Show that all log-related server variables that should throw deprecation warnings do, and the others don't. mysql-test/t/log_basic.test: Change deprecated system variable "log" to general log. mysql-test/t/log_state.test: Show that all log-related server variables that should throw deprecation warnings do, and the others don't. sql/mysqld.cc: Add command-line options --general_log_file and --slow_query_log_file to match server options of the same name. Deprecated --log and --log-slow-queries command-line options; they are superseded by --general-log/ --general-log-file and --slow-query-log/--slow-query-log-file, respectively sql/set_var.cc: Deprecate system-variables log in favour of general_log, log_slow_queries in favour of slow_query_log for 7.0, both for value- and DEFAULT-setting.
-
- 09 Sep, 2008 1 commit
-
-
Mats Kindahl authored
SUPER is not required to change binlog format for session A user without SUPER privileges can change the value of the session variable BINLOG_FORMAT, causing problems for a DBA. This changeset requires a user to have SUPER privileges to change the value of the session variable BINLOG_FORMAT, and not only the global variable BINLOG_FORMAT. mysql-test/suite/binlog/t/binlog_grant.test: Adding test to test grants needed for SQL_LOG_BIN and BINLOG_FORMAT. sql/set_var.cc: Adding code to check that user has SUPER permission needed to change the value of BINLOG_FORMAT. sql/set_var.h: Adding function sys_var_thd_binlog_format::check()
-
- 25 Aug, 2008 1 commit
-
-
Sergey Glukhov authored
plugin_dir option backported from 5.1 mysql-test/r/udf.result: result fix sql/mysql_priv.h: opt_plugin_dir and opt_plugin_dir_ptr declared. sql/mysqld.cc: 'plugin_dir' option added sql/set_var.cc: 'plugin_dir' option added. sql/sql_udf.cc: opt_plugin_dir added to the udf->dl path. Warn if it's not specified. sql/unireg.h: PLUGINDIR defined.
-