exceed unsigned long limit.
include/config-win.h:
implementation of ULL macro for Windows
include/my_global.h:
ULL macro defined: we need this macro because ULL qualifier is not defined
on systems withoug unsigned long long
sql/item_func.cc:
new ULL macro caused conflict with class for user level lock ULL.
ULL renamed to User_level_lock
sql/item_func.h:
ULL -> User_level_lock
sql/mysql_priv.h:
merge error fixed: LL defined in my_global.h
sql/mysqld.cc:
ULL macro used for long long constants to fix compilation failure on gcc 3.*
sql/sql_class.h:
ULL renamed to User_level_lock
#2709 Affected Rows for ON DUPL. KEY undocumented, perheps illogical
1. added COPY_INFO::updated to work with it in
'insert .. on duplicate' instead of COPY_INFO::deleted
2. added affected rows to output of "info:" in mysqltest.c
client/mysqltest.c:
added "affected rows" to output of "info : "..
mysql-test/r/insert_update.result:
added tests for affected rows with insert .. duplicate (bug #2709)
mysql-test/t/insert_update.test:
added tests for affected rows with insert .. duplicate (bug #2709)
sql/sql_class.h:
added COPY_INFO::updated
sql/sql_insert.cc:
get write_record to work with COPY_INFO::updated instead of
COPY_INFO::deleted for 'insert ... duplicate' statement
COM_EXECUTE packet" and #2795 "prepare + execute without bind_param crashes
server" and #2473 "seg fault running tests/client_test.c":
- length checking added to packet parser
- default impelemntation of Item_param::set_param_func will work in
case of malformed packet.
No test cases are possible in our test suite, as there are no tests
operating on protocol layer.
sql/item.cc:
Default set_param function implemented: this is to not sigsegv in case
of malformed packet with no parameters data.
sql/item.h:
- Item_param constructor moved to .cc to be able to assign set_param_func.
- now embedded and ordinary versions of set_param have the same signature.
sql/mysql_priv.h:
mysql_stmt_execute now requires packet_length
sql/sql_parse.cc:
mysql_stmt_execute now requires packet length.
sql/sql_prepare.cc:
- length checking added to all functions working with network packet.
- set_param_func's in embedded and ordinary version now have the same
signature
sql/gstream.cc:
checking for ending \0 changed with m_limit
sql/gstream.h:
checking for ending \0 changed with m_limit
sql/item_geofunc.cc:
we should check for null value before we use val_str result
sql/item_strfunc.cc:
get rid of annoying warnings
sql/spatial.h:
error about size_t type fixed
mysql-test/r/create.result:
Changed ERROR -> NOTE (for enum/set)
sql/lock.cc:
Removed not needed test (table_list->db is always set)
sql/sql_repl.cc:
Removed not needed test
sql/sql_table.cc:
ERROR -> NOTE
Removed not needed test
strings/strtod.c:
Portabilty fix. (DBL_MAX *10 is not safe)
into eagle.mysql.r18.ru:/home/vva/work/BUG_856/mysql-4.1
mysql-test/r/create.result:
Auto merged
mysql-test/t/create.test:
Auto merged
sql/sql_table.cc:
Auto merged
mysql-test/r/create.result:
added test for bug #856 'Naming a key "Primary" causes trouble'
mysql-test/t/create.test:
added test for bug #856 'Naming a key "Primary" causes trouble'
include/mysqld_error.h:
added ER_DUPLICATED_VALUE_IN_TYPE
mysql-test/r/create.result:
added test for bug #1427 "enum allows duplicate values in the list"
mysql-test/t/create.test:
added test for bug #1427 "enum allows duplicate values in the list"
sql/share/czech/errmsg.txt:
added message for ER_DUPLICATED_VALUE_IN_TYPE
sql/share/danish/errmsg.txt:
added message for ER_DUPLICATED_VALUE_IN_TYPE
sql/share/dutch/errmsg.txt:
added message for ER_DUPLICATED_VALUE_IN_TYPE
sql/share/english/errmsg.txt:
added message for ER_DUPLICATED_VALUE_IN_TYPE
sql/share/estonian/errmsg.txt:
added message for ER_DUPLICATED_VALUE_IN_TYPE
sql/share/french/errmsg.txt:
added message for ER_DUPLICATED_VALUE_IN_TYPE
sql/share/german/errmsg.txt:
added message for ER_DUPLICATED_VALUE_IN_TYPE
sql/share/greek/errmsg.txt:
added message for ER_DUPLICATED_VALUE_IN_TYPE
sql/share/hungarian/errmsg.txt:
added message for ER_DUPLICATED_VALUE_IN_TYPE
sql/share/italian/errmsg.txt:
added message for ER_DUPLICATED_VALUE_IN_TYPE
sql/share/japanese/errmsg.txt:
added message for ER_DUPLICATED_VALUE_IN_TYPE
sql/share/korean/errmsg.txt:
added message for ER_DUPLICATED_VALUE_IN_TYPE
sql/share/norwegian-ny/errmsg.txt:
added message for ER_DUPLICATED_VALUE_IN_TYPE
sql/share/norwegian/errmsg.txt:
added message for ER_DUPLICATED_VALUE_IN_TYPE
sql/share/polish/errmsg.txt:
added message for ER_DUPLICATED_VALUE_IN_TYPE
sql/share/portuguese/errmsg.txt:
added message for ER_DUPLICATED_VALUE_IN_TYPE
sql/share/romanian/errmsg.txt:
added message for ER_DUPLICATED_VALUE_IN_TYPE
sql/share/russian/errmsg.txt:
added message for ER_DUPLICATED_VALUE_IN_TYPE
sql/share/serbian/errmsg.txt:
added message for ER_DUPLICATED_VALUE_IN_TYPE
sql/share/slovak/errmsg.txt:
added message for ER_DUPLICATED_VALUE_IN_TYPE
sql/share/spanish/errmsg.txt:
added message for ER_DUPLICATED_VALUE_IN_TYPE
sql/share/swedish/errmsg.txt:
added message for ER_DUPLICATED_VALUE_IN_TYPE
sql/share/ukrainian/errmsg.txt:
added message for ER_DUPLICATED_VALUE_IN_TYPE
sql/sql_table.cc:
added function check_duplicates_in_interval and
calling it from mysql_create_table for enum and set
Now we use virtual calls instead and redirect VMT pointer of the
geometry object with 'new' operation
sql/field.cc:
Usage of the Geometry class changed
sql/item_geofunc.cc:
Usage of the Geometry class changed
sql/spatial.cc:
Now we rewrite the real VMT of the object with new operation
sql/spatial.h:
No need for the VMT-like structure and pointers to it
sql/sql_yacc.yy:
enum items was renamed accordingly to coding standards
mysql-test/r/func_math.result:
Updated tests after merge with 3.23
mysql-test/r/multi_update.result:
Fixed not portable test
mysql-test/r/mysqlbinlog.result:
Fixed test after push without doing 'make test'
mysql-test/t/multi_update.test:
Fixed not portable test
sql/sql_parse.cc:
Don't use static inline, as this is not portable
BitKeeper/etc/logging_ok:
auto-union
myisam/mi_check.c:
Auto merged
mysql-test/r/func_math.result:
Auto merged
mysql-test/t/func_math.test:
Auto merged
sql/item_func.cc:
Auto merged
Abort if we can't allocate memory for table cache
Fix bug with multi-update-tables and BDB tables.
extra/replace.c:
Fix comments
mysql-test/install_test_db.sh:
Change internal option from -bin to --bin
Ensure that script works with both 'make install' and 'make_binary_distribution' layouts (Bug #3031)
mysql-test/mysql-test-run.sh:
Change internal option from -bin to --bin
sql/ha_berkeley.cc:
More debug
sql/mysql_priv.h:
Change table_cache_init to return error
sql/mysqld.cc:
Abort if we can't allocate memory for table cache. (Bug #3085)
Enable warnings by default
sql/sql_base.cc:
Change table_cache_init to return error
sql/sql_update.cc:
Fix bug with multi-update-tables and BDB tables. Bug #3098
Problem was that we didn't initialize BDB for calls to rnd_pos()
Test case for a #2996 bug fix
multi_update.test:
test case for a #2996 bug fix
sql_select.cc:
Fix for a bug #2996 involving multi-table updates over the const tables
sql/sql_select.cc:
Fix for a bug #2996 involving multi-table updates over the const tables
mysql-test/t/multi_update.test:
test case for a #2996 bug fix
mysql-test/r/multi_update.result:
Test case for a #2996 bug fix
We introduce a new function mysql_test_parse_for_slave().
If the slave sees that the query got a really bad error on master
(killed e.g.), then it calls this function to know if this query
can be ignored because of replicate-*-table rules (do not worry
about replicate-*-db rules: they are checked so early that they have
no bug). If the answer is yes, it skips the query and continues. If
it's no, then it stops and say "fix your slave data manually" (like it
did before this change).
mysql-test/r/rpl_error_ignored_table.result:
result update
mysql-test/t/rpl_error_ignored_table-slave.opt:
ignore more tables
mysql-test/t/rpl_error_ignored_table.test:
we test if a killed query on the master, is ignored on the slave
if the tables it involves should be excluded because of replicate-*-table
rules.
sql/log_event.cc:
If the query got a really bad error on the master (thread killed etc),
parse it to test the table names: if the replicate-*-do|ignore-table
rules say "this query must be ignored" then we exit gracefully;
otherwise we warn about the bad error and tell DBA to check/fix it.
Before this change, we always warned and stopped.
sql/mysql_priv.h:
new function
sql/slave.cc:
don't print error immediately as we need to do one more test to
be sure.
sql/sql_parse.cc:
we add a function mysql_test_parse_for_slave(), to be used only
by the slave if it wants to know if the query should be ignored or not;
so this function only parses the query, does not execute it.
re-using unused LOCK_active_mi to serialize all administrative
commands related to replication:
START SLAVE, STOP SLAVE, RESET SLAVE, CHANGE MASTER, init_slave()
(replication autostart at server startup), end_slave() (replication
autostop at server shutdown), LOAD DATA FROM MASTER.
This protects us against a handful of deadlocks (like BUG#2921
when two START SLAVE, but when two STOP SLAVE too).
Removing unused variables.
sql/item_func.cc:
We don't need LOCK_active_mi just to MASTER_POS_WAIT().
sql/repl_failsafe.cc:
no need for macro
sql/set_var.cc:
no need for macro
sql/slave.cc:
Re-using unused LOCK_active_mi to serialize all administrative
commands related to replication:
START SLAVE, STOP SLAVE, RESET SLAVE, CHANGE MASTER, init_slave()
(replication autostart at server startup), end_slave() (replication
autostop at server shutdown), LOAD DATA FROM MASTER.
This protects us against a handful of deadlocks.
Removing unused variables.
sql/slave.h:
Re-using LOCK_active_mi to serialize administrative replication commands.
Macros unneeded. Removing unneeded variables.
sql/sql_parse.cc:
found unused variable.
Replacing macros.
sql/sql_show.cc:
replacing macros
ChangeSet 1.1620.12.1 and ChangeSet 1.1625.2.1
from 4.1. This makes the slave I/O thread flush the relay log
after every event, which provides additional safety in case
of brutal crash (reduces chances to lose a part of the relay log).
sql/repl_failsafe.cc:
update for new prototype
sql/slave.cc:
The slave I/O thread now flushes the relay log after writing
every event to it, like we already do in 4.1.
sql/slave.h:
new prototype
sql/sql_repl.cc:
update for new prototype
- the one about BUG#2921
- the one about relay log flushing
Both will be rewritten in a next changeset
(this one will not be pushed before the next changeset).
sql/log.cc:
undo
sql/log_event.cc:
undo
sql/repl_failsafe.cc:
undo
sql/slave.cc:
undo
sql/slave.h:
undo
sql/sql_repl.cc:
undo
BUILD/compile-pentium-debug-max:
Added --with-raid
configure.in:
Removed -DFN_NO_CASE_SENCE for Mac OS X as this is not always true
mysql-test/install_test_db.sh:
Added --skip-warnings
mysql-test/mysql-test-run.sh:
Fixes to get --gdb and --ddd to work
mysql-test/r/lowercase_table2.result:
Test for lower_case_table_names=2 and temporary tables
mysql-test/r/lowercase_table3.result:
Fixed error message
mysql-test/r/multi_update.result:
Test of behaviour of multi-table-delete and alias
mysql-test/t/lowercase_table2.test:
Test for lower_case_table_names=2 and temporary tables
mysql-test/t/lowercase_table3.test:
Fixed error
mysql-test/t/multi_update.test:
Test of behaviour of multi-table-delete and alias (Bug #2940)
mysys/mf_iocache.c:
Renamed _flush_io_cache to my_b_flush_io_cache
sql/ha_myisam.cc:
Added comment
sql/lock.cc:
Extra debugging
sql/log.cc:
New parameter to flush_relay_log_info
sql/log_event.cc:
New parameter to flush_relay_log_info
sql/mf_iocache.cc:
Removed not used header files
sql/mysqld.cc:
More debugging info
Less warnings when run with --skip-warnings
sql/opt_range.cc:
More debug information
sql/repl_failsafe.cc:
New parameter to flush_relay_log_info
sql/slave.cc:
First start SQL thread, then start IO thread. This fixed a raze condition in SLAVE START (Bug #2921)
Ensure that we have a lock on the IO thread before flushing a relay log file that. The original code could core dump when a relay log rotated.
sql/slave.h:
New parameter to flush_relay_log_info
sql/sql_base.cc:
Added warning
sql/sql_handler.cc:
Indentation fix
sql/sql_repl.cc:
New parameter to flush_relay_log_info
sql/sql_select.cc:
Fixed problem with deleting temporary tables when using lower_case_table_names=2. (Bug #2858)
sql/sql_table.cc:
Fixed comment
sql/sql_yacc.yy:
Removed compiler warning
include/my_sys.h:
Fixed usage of unpack_filename
mysys/mf_pack.c:
Changed unpack_filename() to return length of result string.
mysys/test_fn.c:
Fixed usage of unpack_filename
sql/sql_db.cc:
Fixed memory leak with raid tables
sql/table.cc:
Fixed usage of unpack_filename
mysql-test/r/subselect.result:
Auto merged
mysql-test/t/subselect.test:
Auto merged
sql/item.cc:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_sum.cc:
Auto merged
sql/set_var.cc:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_class.cc:
Auto merged
into teton.kitebird.com:/home/paul/mysql-4.1
sql/share/czech/errmsg.txt:
Auto merged
sql/share/danish/errmsg.txt:
Auto merged
sql/share/dutch/errmsg.txt:
Auto merged
sql/share/english/errmsg.txt:
Auto merged
sql/share/estonian/errmsg.txt:
Auto merged
sql/share/french/errmsg.txt:
Auto merged
sql/share/greek/errmsg.txt:
Auto merged
sql/share/hungarian/errmsg.txt:
Auto merged
sql/share/italian/errmsg.txt:
Auto merged
sql/share/japanese/errmsg.txt:
Auto merged
sql/share/korean/errmsg.txt:
Auto merged
sql/share/norwegian-ny/errmsg.txt:
Auto merged
sql/share/norwegian/errmsg.txt:
Auto merged
sql/share/polish/errmsg.txt:
Auto merged
sql/share/portuguese/errmsg.txt:
Auto merged
sql/share/romanian/errmsg.txt:
Auto merged
sql/share/russian/errmsg.txt:
Auto merged
sql/share/slovak/errmsg.txt:
Auto merged
sql/share/spanish/errmsg.txt:
Auto merged
sql/share/swedish/errmsg.txt:
Auto merged
sql/share/ukrainian/errmsg.txt:
Auto merged
INSERT DELAYED works only for one-row inserts (in latest 4.0 versions
at least). So killing a delayed_insert thread does not spoil replication:
the rows which actually went into the table are exactly those listed
in the binlog. So when the delayed_insert thread is killed, don't log
it as 'killed', because it causes superfluous stops on the slave.
sql/log_event.cc:
INSERT DELAYED works only for one-row inserts (in latest 4.0 versions
at least). So killing a delayed_insert thread does not spoil replication:
the rows which actually went into the table are exactly those listed
in the binlog. So when the delayed_insert thread is killed, don't log
it as 'killed', because it causes superfluous stops on the slave.
Note: the patch removes an extra declaration of
the read_only variable. It also assumes that '_'
sorts before [a-z].
mysql-test/r/fulltext_var.result:
Fix test result to account for SHOW VARIABLES
output reordering.
sql/set_var.cc:
Make SHOW VARIABLES output really alphabetic.
Allow one to force lower_case_table_names to 0, even if the file system is case insensitive. This fixes some issues on Mac OS X (Bug #2994)
Added variables "lower_case_file_system", "version_compile_os" and "license"
mysql-test/t/lowercase_table3-master.opt:
Rename: mysql-test/t/lowercase_table2-master.opt -> mysql-test/t/lowercase_table3-master.opt
mysys/my_getopt.c:
Ensure that one can't from the command line set a variable too small (could happen when sub_size was set)
sql/mysql_priv.h:
Added lower_case_file_system
sql/mysqld.cc:
Allow one to force lower_case_table_names to 0, even if the file system is case insensitive
sql/set_var.cc:
Added variable "lower_case_file_system"
Added variable "version_compile_os"
Added variable "license"
sql/set_var.h:
Added support for read only strings
sql/sql_select.cc:
Make join optimizer killable
- get my_strtod to return inf
- get Field_float::store(double) and Field_double::store(float) to set null for
nan value
(as extra serg's recomendations to fix for patch on
Bug #2082 'mysqldump converts "inf" to null')
client/mysqltest.c:
added commands --query_vertical and --query_horisontal
mysql-test/r/insert.result:
converted testcase so as my_strtod can return inf now
mysql-test/r/mysqldump.result:
converted testcase so as my_strtod can return inf now
mysql-test/t/insert.test:
corrected tests to using --query_vertical instead of
pair (vertical_results,horisontal_results)
sql/field.cc:
corrected Field_float::store(double) and Field_double::store(double)
to set null for nan value
strings/strtod.c:
get my_strtod to return inf
"Table truncated when creating another table name with Spaces"
added to check_db_name, check_table_name and check_column_name
test for end space
mysql-test/r/create.result:
added test for Bug #2985
"Table truncated when creating another table name with Spaces"
mysql-test/t/create.test:
added test for Bug #2985
"Table truncated when creating another table name with Spaces"
sql/sql_db.cc:
cancel strip end spaces for database name
sql/sql_parse.cc:
cancel strip end spaces for database name
sql/table.cc:
added to check_db_name, check_table_name and check_column_name
test for end space
mysql-test/r/show_check.result:
Updated results
mysql-test/t/show_check.test:
Portability fix (for 64 bit platforms)
mysys/hash.c:
Portablity fix
sql/gen_lex_hash.cc:
Don't include mysql_priv.h; Causes build errors on a lot of platforms
sql/lex_symbol.h:
Moved symbols here from mysql_priv.h to avoid including mysql_priv.h in gen_lex_hash.cc
sql/mysql_priv.h:
Move symbols and struct to lex_symbol.h
sql/sql_db.cc:
Don't use sql_alloc/sql_free methods in sql_string.h
sql/sql_help.cc:
Don't use sql_alloc/sql_free methods in sql_string.h
sql/sql_string.h:
Don't use sql_alloc/sql_free methods in sql_string.h
This makes the code faster and more portable
sql/sql_yacc.yy:
Don't use sql_alloc/sql_free methods in sql_string.h
into teton.kitebird.com:/home/paul/mysql-4.1
sql/share/czech/errmsg.txt:
Auto merged
sql/share/danish/errmsg.txt:
Auto merged
sql/share/dutch/errmsg.txt:
Auto merged
sql/share/english/errmsg.txt:
Auto merged
sql/share/estonian/errmsg.txt:
Auto merged
sql/share/french/errmsg.txt:
Auto merged
sql/share/german/errmsg.txt:
Auto merged
sql/share/greek/errmsg.txt:
Auto merged
sql/share/hungarian/errmsg.txt:
Auto merged
sql/share/italian/errmsg.txt:
Auto merged
sql/share/japanese/errmsg.txt:
Auto merged
sql/share/korean/errmsg.txt:
Auto merged
sql/share/norwegian-ny/errmsg.txt:
Auto merged
sql/share/norwegian/errmsg.txt:
Auto merged
sql/share/polish/errmsg.txt:
Auto merged
sql/share/portuguese/errmsg.txt:
Auto merged
sql/share/romanian/errmsg.txt:
Auto merged
sql/share/russian/errmsg.txt:
Auto merged
sql/share/serbian/errmsg.txt:
Auto merged
sql/share/slovak/errmsg.txt:
Auto merged
sql/share/spanish/errmsg.txt:
Auto merged
sql/share/ukrainian/errmsg.txt:
Auto merged
mysql-test/r/func_math.result:
added test for Bug #3051 "FLOOR returns invalid"
mysql-test/t/func_math.test:
added test for Bug #3051 "FLOOR returns invalid"
added commands vertical_results and horisontal_results to client/mysqltest.c
client/mysqltest.c:
added commands vertical_results and horisontal_results
mysql-test/r/insert.result:
added test for bug #2082 'mysqldump converts "inf" to NULL'
mysql-test/t/insert.test:
Fixed bug #2082 'mysqldump converts "inf" to NULL'
sql/field.cc:
added test for Fixed bug #2082 'mysqldump converts "inf" to NULL'
fixed linking query_prealloc_size to query cache presence
mysql-test/r/query_cache.result:
test of QC invalidation by LOCK command
mysql-test/t/query_cache.test:
test of QC invalidation by LOCK command
sql/mysqld.cc:
new variable query_cache_wlock_invalidate
fixed query_prealloc_size with QC absence
sql/set_var.cc:
new variable query_cache_wlock_invalidate
sql/sql_cache.cc:
new method for table invalidation
sql/sql_cache.h:
new method for table invalidation
sql/sql_class.h:
new variable query_cache_wlock_invalidate
sql/sql_parse.cc:
layout fixed
nsure that rows in a multi-row INSERT DELAYED are inserted atomicly
mysql-test/mysql-test-run.sh:
Make test case safe for openserver/unixware (Bug #2700)
sql/sql_delete.cc:
Rollback statement on kill
sql/sql_insert.cc:
Ensure that rows in a multi-row INSERT DELAYED are inserted atomicly (without releasing logs).
This is needed to ensure that the mysqlbinlog is consistent.
Bug #2491
sql/sql_list.h:
Ensure that rows in a multi-row INSERT DELAYED is inserted atomicly (without releasing logs).
This is needed to ensure that the mysqlbinlog is consistent.
Bug #2491
sql/sql_update.cc:
Rollback statement on kill
even if the thread was killed, we write the DROP with error_code=0.
This will remove unneeded stops on slave, and will lose nothing:
if a real update was killed, this real update will be logged with the
nonzero error code and will cause the stop on slave.
heap/hp_delete.c:
Added comments
mysql-test/r/gis.result:
Updated results after name changes (all results line are unchanged)
mysql-test/r/show_check.result:
Update test results after fix in hp_delete.cc
mysql-test/t/gis.test:
Changed table names to longer, hopefully non conflicting ones.
Added missing drop table
mysys/hash.c:
Inendation cleanup
mysys/tree.c:
Updated comments
Decrease tree->allocated on delete (for status)
sql/field.cc:
Added safety checking for GIS objects
sql/gstream.cc:
Added copyright message
Made a lot of speed/space optimizations
Changed class names to be MySQL compliant
sql/gstream.h:
Made a lot of speed/space optimizations
Changed class names to be MySQL compliant
sql/item_create.cc:
Indentation fixup
sql/item_geofunc.cc:
Use new gis interface functions and new gis class names.
Simple optimizations
Indentation fixups
Fixed a lot of unlikely but possible errors.
sql/item_geofunc.h:
Moved SRID_SIZE to spatial.h
sql/spatial.cc:
Added copyright message
Made a lot of speed/space optimizations
Changed class names to be MySQL compliant
sql/spatial.h:
Made a lot of speed/space optimizations
Changed class names to be MySQL compliant
Indentation fixes
Use bool instead of int as result type for functions that only return 0 or 1
sql/sql_string.cc:
Simple optimizations
sql/sql_string.h:
Simple cleanups
sql/structs.h:
Added LEX_STRING_WITH_INIT (needed by spatial.cc)
BUG#2826 "Seconds behind master weirdness"
(sometimes this column of SHOW SLAVE STATUS shows a very big value,
in fact a small negative number casted to ulonglong).
This problem was reported by only one user, but which uses
synchronized time between his servers.
As suggested by the user, to hide this I display max(0, the value)
so that it will be less confusing. For a user, seeing 0 is probably
better than seeing -1 (both tell you that the slave is very close
to the master).
sql/slave.cc:
Don't display a negative Seconds_Behind_Master in SHOW SLAVE STATUS.
reviewed in Saint-Petersbourg (including post-review fixes).
include/my_sys.h:
Added clear_alloc_root (reset alloc root without freeing its memory)
sql/item.h:
- rename setup_param -> set_parap (function assigns parameter value to item)
sql/mysql_priv.h:
- all return values are void, because return value is never checked in
dispatch_command
- removed unused declaration of setup_param_functions
sql/protocol.h:
- unused declarations of setup_params_data* removed
sql/sql_class.cc:
Cleanup:
- bzero(mem_root) replaced with clear_alloc_root
- query_id and command members moved back to THD from Statement
Assignment of mem_root, free_list, query_id and command optimized
away from set_statement().
sql/sql_class.h:
- query_id and command moved back to THD from Statement
sql/sql_lex.h:
- better type for param_list
- param_count is the same thing as param_list.elements
sql/sql_parse.cc:
- comments for dispatch_command
sql/sql_prepare.cc:
Cleanup:
- added comments to many functions and removed trailing spaces in many
lines, some stale comments removed.
- it's faster to iterate using pointers, than classes
- Renames: error_in_prepare renamed to get_longdata_error (because it is set
when there is an error in mysql_send_longdata, rather than in
mysql_prepare), embedded versions of placeholder assignement functions
now have prefix emb_, setup_ functions renamed to set_, because they
perform assignment, not installation, setup_params_data now doesn't
call insert_params and was renamed to setup_set_param_functions,
- find_prepared_statement should not send error if called from no-reply
calls, like mysql_stmt_reset
- error reporting is checked up, to always report errors and not report
errors twice. send_prep_stmt can be done mostly in send_prepare_result,
rather than in test_* functions.
- now we don't need to reinit THD->mem_root/free_list in mysql_stmt_execute,
because it's not reset there.
tests/client_test.c:
- removed second call to test_subqueries
into teton.kitebird.com:/home/paul/mysql-4.1
sql/share/czech/errmsg.txt:
Auto merged
sql/share/danish/errmsg.txt:
Auto merged
sql/share/dutch/errmsg.txt:
Auto merged
sql/share/english/errmsg.txt:
Auto merged
sql/share/estonian/errmsg.txt:
Auto merged
sql/share/french/errmsg.txt:
Auto merged
sql/share/german/errmsg.txt:
Auto merged
sql/share/greek/errmsg.txt:
Auto merged
sql/share/hungarian/errmsg.txt:
Auto merged
sql/share/italian/errmsg.txt:
Auto merged
sql/share/japanese/errmsg.txt:
Auto merged
sql/share/korean/errmsg.txt:
Auto merged
sql/share/norwegian-ny/errmsg.txt:
Auto merged
sql/share/norwegian/errmsg.txt:
Auto merged
sql/share/polish/errmsg.txt:
Auto merged
sql/share/portuguese/errmsg.txt:
Auto merged
sql/share/romanian/errmsg.txt:
Auto merged
sql/share/russian/errmsg.txt:
Auto merged
sql/share/serbian/errmsg.txt:
Auto merged
sql/share/slovak/errmsg.txt:
Auto merged
sql/share/spanish/errmsg.txt:
Auto merged
sql/share/swedish/errmsg.txt:
Auto merged
sql/share/ukrainian/errmsg.txt:
Auto merged
When password was granted with a global grant, then granting
privileges on database level, without password being specified,
will temporary (in memory) set password to ''.
"(binlog, position) stored by InnoDB for a replication slave can be wrong".
This code contains conditional #if to distinguish between versions;
it should be merged into 4.1 and 5.0.
sql/ha_innodb.cc:
correcting the binlog position stored in InnoDB in a slave.
sql/log_event.cc:
better code to store the binlog position in InnoDB for a slave.
sql/slave.h:
Better code for storing the binlog position in InnoDB for a slave.
"wrong Relay_Log_Pos if Rotate is in the middle of a transaction in relay log"
increment 'pending' instead of 'relay_log_pos'.
mysql-test/r/rpl_trunc_binlog.result:
result update
sql/log_event.cc:
- corrected error message
- in Rotate_log_event::exec_event(), if we're in a transaction (which
can happen if the I/O slave thread reconnected while reading a
transaction), don't increment relay_log_pos but pending instead.
Otherwise, relay_log_pos becomes garbage (and so if slave stops at that
moment, it will never restart).
sql/sql_acl.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/share/serbian/errmsg.txt:
Auto merged
include/mysqld_error.h:
for merge
mysql-test/r/loaddata.result:
for merge
mysql-test/r/warnings.result:
for merge
sql/share/czech/errmsg.txt:
for merge
sql/share/danish/errmsg.txt:
for merge
sql/share/dutch/errmsg.txt:
for merge
sql/share/english/errmsg.txt:
for merge
sql/share/estonian/errmsg.txt:
for merge
sql/share/french/errmsg.txt:
for merge
sql/share/german/errmsg.txt:
for merge
sql/share/greek/errmsg.txt:
for merge
sql/share/hungarian/errmsg.txt:
for merge
sql/share/italian/errmsg.txt:
for merge
sql/share/japanese/errmsg.txt:
for merge
sql/share/korean/errmsg.txt:
for merge
sql/share/norwegian-ny/errmsg.txt:
for merge
sql/share/norwegian/errmsg.txt:
for merge
sql/share/polish/errmsg.txt:
for merge
sql/share/portuguese/errmsg.txt:
for merge
sql/share/romanian/errmsg.txt:
for merge
sql/share/russian/errmsg.txt:
for merge
sql/share/slovak/errmsg.txt:
for merge
sql/share/spanish/errmsg.txt:
for merge
sql/share/swedish/errmsg.txt:
for merge
sql/share/ukrainian/errmsg.txt:
for merge
"replicate-wild-*-table=db.% does not apply to ALTER DATABASE"
apply replicate-* rules to ALTER DATABASE like we already do
for CREATE DATABASE/ DROP DATABASE.
sql/sql_parse.cc:
apply replicate-* rules to ALTER DATABASE like we already do
for CREATE DATABASE/ DROP DATABASE.
UUID() function
BitKeeper/etc/ignore:
Added mysys/test_gethwaddr to the ignore list
include/my_sys.h:
my_gethwaddr()
mysys/Makefile.am:
my_gethwaddr
sql/item_create.cc:
UUID() function
sql/item_create.h:
UUID() function
sql/item_strfunc.cc:
UUID() function
sql/item_strfunc.h:
UUID() function
sql/lex.h:
UUID() function
sql/mysql_priv.h:
UUID() function
sql/mysqld.cc:
UUID() function
sql/sql_class.cc:
cleanup
VC++Files/libmysql/libmysql.dsp:
strtod.c is needed to build the library.
VC++Files/libmysqld/libmysqld.dsp:
Add include directory to resolve problem with including emb_qcache.h,
remove opt_ft.cc (no longer in tree).
VC++Files/mysqldemb/mysqldemb.dsp:
Add include directory to resolve problem with including emb_qcache.h,
remove opt_ft.cc (no longer in tree).
VC++Files/mysqlserver/mysqlserver.dsp:
Add include directory to resolve problem with including emb_qcache.h.
VC++Files/strings/MASM6x/strings.dsp:
Remove atof.c (no longer in tree) and add strtod.c,
needed for the library.
VC++Files/strings/noMASM/strings.dsp:
Remove atof.c (no longer in tree) and add strtod.c,
needed for the library.
VC++Files/strings/strings.dsp:
Remove atof.c (no longer in tree) and add strtod.c,
needed for the library.
sql/mysqld.cc:
A cast is required to resolve the compile error on Windows (char * is
not equivalent to byte *).
sql/set_var.cc:
A cast is required to resolve the compile error on Windows (char * is
not equivalent to byte *).
BitKeeper/etc/logging_ok:
Logging to logging@openlogging.org accepted
VC++Files/innobase/innobase.dsp:
odbc0odbc.c was removed from the tree.
VC++Files/libmysql/libmysql.dsp:
strxnmov.c is needed in this module.
sql/log_event.cc:
Cast required to resolve compile error on Windows - byte * is
not equivalent to char *.
sql/opt_range.cc:
Cast to const char * required to resolve compile error on Windows.
BitKeeper/etc/logging_ok:
Logging to logging@openlogging.org accepted
(that is, these numbers are converted to doubles by a local OS strtod,
and on different systems they get different values)
sql/item_strfunc.cc:
no need to check for HAVE_ISNAN here, it is taken care of in my_global.h
strings/strtod.c:
do not use static array of pastpoints - it is not portable
(that is, these numbers are converted to doubles by a local OS strtod,
and on different systems they get different values)
BitKeeper/etc/logging_ok:
Logging to logging@openlogging.org accepted
Add diagnostic code to analyze an assertion failure in ha_innodb.cc on line 2020 reported by a user (Bug #2903)
sql/ha_innodb.cc:
Add diagnostic code to analyze an assertion failure in ha_innodb.cc on line 2020 reported by a user (Bug #2903)
ChangeSet 1.1616.23.1
Fix for BUG#1858 "SQL-Thread stops working when using optimize table".
A test for this.
sql/sql_base.cc:
In remove_table_from_cache(), kill only delayed threads.
into mashka.mysql.fi:/home/my/mysql-4.1
innobase/rem/rem0cmp.c:
Auto merged
libmysql/libmysql.c:
Auto merged
sql-common/client.c:
Auto merged
sql/ha_innodb.cc:
Auto merged
sql/sql_base.cc:
Auto merged
BitKeeper/etc/ignore:
auto-union
VC++Files/comp_err/comp_err.dsp:
Auto merged
VC++Files/my_print_defaults/my_print_defaults.dsp:
Auto merged
VC++Files/myisampack/myisampack.dsp:
Auto merged
acinclude.m4:
Auto merged
innobase/buf/buf0buf.c:
Auto merged
innobase/com/com0shm.c:
Auto merged
innobase/data/data0data.c:
Auto merged
innobase/ha/ha0ha.c:
Auto merged
innobase/include/buf0buf.ic:
Auto merged
innobase/include/dict0dict.h:
Auto merged
innobase/include/ibuf0ibuf.h:
Auto merged
innobase/include/lock0lock.h:
Auto merged
innobase/include/mtr0log.h:
Auto merged
innobase/include/mtr0mtr.h:
Auto merged
innobase/include/os0proc.h:
Auto merged
innobase/include/os0thread.h:
Auto merged
innobase/include/srv0srv.h:
Auto merged
innobase/include/sync0sync.h:
Auto merged
innobase/lock/lock0lock.c:
Auto merged
innobase/log/log0recv.c:
Auto merged
innobase/mem/mem0dbg.c:
Auto merged
innobase/mtr/mtr0mtr.c:
Auto merged
innobase/os/os0proc.c:
Auto merged
innobase/page/page0page.c:
Auto merged
innobase/que/que0que.c:
Auto merged
innobase/rem/rem0cmp.c:
Auto merged
innobase/row/row0ins.c:
Auto merged
innobase/row/row0mysql.c:
Auto merged
innobase/srv/srv0start.c:
Auto merged
innobase/sync/sync0sync.c:
Auto merged
innobase/trx/trx0rec.c:
Auto merged
innobase/trx/trx0trx.c:
Auto merged
innobase/ut/ut0mem.c:
Auto merged
innobase/ut/ut0ut.c:
Auto merged
libmysql/libmysql.c:
Auto merged
scripts/mysql_config.sh:
Auto merged
sql/net_serv.cc:
Auto merged
sql/sql_delete.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
Fixed wrong test of database name (affected optimization of ORDER BY)
VC++Files/client/mysqlclient.dsp:
Add my_file.c
VC++Files/mysys/mysys.dsp:
Add my_file.c
mysql-test/r/negation_elimination.result:
Fix wrong test
sql-common/client.c:
After merge fix
sql/sql_base.cc:
Fixed testing of database name
"--read-only gives weird error on update".
It is not fixable in 4.0 because it requires modifying
the sql/share/*/errmsg.txt files. So it is fixed in 4.1 like this:
the ER_SKIP_GRANT_TABLES is replaced by a more generic
ER_OPTION_PREVENTS_STATEMENT which can be used both for
"can't do this because of --skip-grant-tables" and
"can't do this because of --read-only" (for this we don't use
ER_CANT_UPDATE_WITH_READLOCK anymore).
So now the message for --read-only is:
"The MySQL server is running with the --read-only option so
cannot execute this statement".
include/mysqld_error.h:
more general naming as more general message
sql/share/czech/errmsg.txt:
message change
sql/share/danish/errmsg.txt:
message change
sql/share/dutch/errmsg.txt:
message change
sql/share/english/errmsg.txt:
message change
sql/share/estonian/errmsg.txt:
message change
sql/share/french/errmsg.txt:
message change
sql/share/german/errmsg.txt:
message change
sql/share/greek/errmsg.txt:
message change
sql/share/hungarian/errmsg.txt:
message change
sql/share/italian/errmsg.txt:
message change
sql/share/japanese/errmsg.txt:
message change
sql/share/korean/errmsg.txt:
message change
sql/share/norwegian-ny/errmsg.txt:
message change
sql/share/norwegian/errmsg.txt:
message change
sql/share/polish/errmsg.txt:
message change
sql/share/portuguese/errmsg.txt:
message change
sql/share/romanian/errmsg.txt:
message change
sql/share/russian/errmsg.txt:
message change
sql/share/serbian/errmsg.txt:
message change
sql/share/slovak/errmsg.txt:
message change
sql/share/spanish/errmsg.txt:
message change
sql/share/swedish/errmsg.txt:
message change
sql/share/ukrainian/errmsg.txt:
message change
sql/sql_acl.cc:
Changes to use the more generic ER_OPTION_PREVENTS_STATEMENT
instead of ER_SKIP_GRANT_TABLES:
* use of net_printf() instead of send_error() (because send_error()
does not support printf-like format).
* in some places we now just do my_error() and return -1
(only caller is mysql_execute_command() which does send_error()
if result is -1).
* Replaced my_printf_error() by simpler my_error() (except in 2 locations
where there was a "we must use my_printf_error()" comment).
sql/sql_parse.cc:
new error code (more generic).
Change some inline functions to normal functions, so that they can be called in ha_innodb.cc; this removes the the remaining linking problems reported by Paul DuBois
innobase/include/data0type.h:
Change some inline functions to normal functions, so that they can be called in ha_innodb.cc; this removes the the remaining linking problems reported by Paul DuBois
innobase/include/data0type.ic:
Change some inline functions to normal functions, so that they can be called in ha_innodb.cc; this removes the the remaining linking problems reported by Paul DuBois
innobase/data/data0type.c:
Change some inline functions to normal functions, so that they can be called in ha_innodb.cc; this removes the the remaining linking problems reported by Paul DuBois
sql/ha_innodb.cc:
Change some inline functions to normal functions, so that they can be called in ha_innodb.cc; this removes the the remaining linking problems reported by Paul DuBois
mysql-test/r/lowercase_table.result:
test of multi-update/multi-delete
mysql-test/t/lowercase_table.test:
test of multi-update/multi-delete
sql/sql_cache.cc:
correct databese names comparation
sql/sql_parse.cc:
correct table names comparation in multi-delete
into teton.kitebird.com:/home/paul/mysql-4.1
sql/share/english/errmsg.txt:
Auto merged
sql/share/russian/errmsg.txt:
Auto merged
sql/share/ukrainian/errmsg.txt:
Auto merged
BitKeeper/etc/logging_ok:
auto-union
configure.in:
Auto merged
BitKeeper/deleted/.del-mini_client.cc~8677895ec8169183:
Auto merged
VC++Files/mysql.dsw:
Auto merged
VC++Files/mysys/mysys.dsp:
Auto merged
innobase/buf/buf0buf.c:
Auto merged
innobase/include/srv0start.h:
Auto merged
innobase/lock/lock0lock.c:
Auto merged
innobase/mem/mem0dbg.c:
Auto merged
innobase/que/que0que.c:
Auto merged
innobase/srv/srv0start.c:
Auto merged
innobase/sync/sync0rw.c:
Auto merged
innobase/sync/sync0sync.c:
Auto merged
innobase/trx/trx0trx.c:
Auto merged
libmysql/manager.c:
Auto merged
sql/ha_innodb.cc:
Auto merged
sql/sql_load.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
sql/unireg.cc:
Auto merged
VC++Files/sql/mysqld.dsp:
Removed wrong define USE_SYMLINK
include/config-win.h:
Use original code
innobase/srv/srv0srv.c:
merge
innobase/usr/usr0sess.c:
merge
libmysql/libmysql.c:
merge
mysql-test/r/func_test.result:
merge
mysql-test/t/func_test.test:
merge
sql/log.cc:
merge
sql/mysqld.cc:
merge
sql/item.h:
typo fixed
sql/item_func.h:
clear refernce on deleted variable
sql/item_subselect.cc:
layout fixed
sql/sql_base.cc:
temporary memory pool allocation moved from open_and_lock_tables
sql/sql_prepare.cc:
temporary memory pool allocation moved
changing in routine suggeted by Monty
tests/client_test.c:
uncomment accidently commented test
Remove the now redundant flag DATA_NONLATIN1; better comments
sql/ha_innodb.cc:
Remove the now redundant flag DATA_NONLATIN1; better comments
innobase/include/data0type.h:
Remove the now redundant flag DATA_NONLATIN1; better comments
innobase/include/data0type.ic:
Remove the now redundant flag DATA_NONLATIN1; better comments
innobase/data/data0type.c:
Remove the now redundant flag DATA_NONLATIN1; better comments
innobase/rem/rem0cmp.c:
Remove the now redundant flag DATA_NONLATIN1; better comments