mysql-test/r/func_gconcat.result:
test of Bug #3752
mysql-test/t/func_gconcat.test:
test of Bug #3752
sql/sql_base.cc:
check of item name presence in find_item_in_list
BitKeeper/etc/ignore:
auto-union
BitKeeper/etc/logging_ok:
auto-union
libmysqld/Makefile.am:
Auto merged
mysql-test/r/func_group.result:
Auto merged
mysql-test/r/subselect.result:
Auto merged
sql/Makefile.am:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/set_var.cc:
Auto merged
sql/sql_class.h:
Auto merged
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/sql_select.cc:
Auto merged
sql/sql_select.h:
Auto merged
sql/sql_show.cc:
Auto merged
sql/sql_test.cc:
Auto merged
sql/structs.h:
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
Note: One sp.test still fails (prime), and rpl_server_id2.test fails (will be fixed by guilhem ASAP).
mysql-test/r/index_merge.result:
Fixed syntax error (no ',' after last index in create table any more).
mysql-test/r/index_merge_bdb.result:
Fixed syntax error (no ',' after last index in create table any more).
mysql-test/r/index_merge_innodb.result:
Fixed syntax error (no ',' after last index in create table any more).
mysql-test/r/index_merge_innodb2.result:
Fixed syntax error (no ',' after last index in create table any more).
mysql-test/r/rpl_server_id1.result:
Update result after merge.
mysql-test/r/sp-error.result:
Update result after merge.
mysql-test/r/variables.result:
Update result after merge.
mysql-test/t/index_merge.test:
Fixed syntax error (no ',' after last index in create table any more).
mysql-test/t/index_merge_bdb.test:
Fixed syntax error (no ',' after last index in create table any more).
mysql-test/t/index_merge_innodb.test:
Fixed syntax error (no ',' after last index in create table any more).
mysql-test/t/index_merge_innodb2.test:
Fixed syntax error (no ',' after last index in create table any more).
mysql-test/t/sp-error.test:
Post-merge fix of error codes.
sql/opt_range.cc:
Manually merged by Monty.
sql/opt_range.h:
Manually merged by Monty.
sql/slave.cc:
Post-merge fixes with some help from Guilhem.
sql/slave.h:
Post-merge fixes with some help from Guilhem.
sql/sp_head.cc:
Got rid of warning (reordering initialization).
sql/sql_parse.cc:
Post-merge fix: Need to set/reset select_limit at SP CALL time as well.
tests/client_test.c:
Post-merge fix: key_len length in explain has changed.
Fix remaining cases of Bug #3596: fix possible races caused by an obsolete value of thd->query_length in SHOW PROCESSLIST and SHOW INNODB STATUS; this fix depends on the fact that thd->query is always set to NULL before setting it to point to a new query
sql/sql_class.h:
Fix remaining cases of Bug #3596: fix possible races caused by an obsolete value of thd->query_length in SHOW PROCESSLIST and SHOW INNODB STATUS; this fix depends on the fact that thd->query is always set to NULL before setting it to point to a new query
sql/ha_innodb.cc:
Fix remaining cases of Bug #3596: fix possible races caused by an obsolete value of thd->query_length in SHOW PROCESSLIST and SHOW INNODB STATUS; this fix depends on the fact that thd->query is always set to NULL before setting it to point to a new query
sql/log_event.cc:
Fix remaining cases of Bug #3596: fix possible races caused by an obsolete value of thd->query_length in SHOW PROCESSLIST and SHOW INNODB STATUS; this fix depends on the fact that thd->query is always set to NULL before setting it to point to a new query
sql/slave.cc:
Fix remaining cases of Bug #3596: fix possible races caused by an obsolete value of thd->query_length in SHOW PROCESSLIST and SHOW INNODB STATUS; this fix depends on the fact that thd->query is always set to NULL before setting it to point to a new query
sql/sql_db.cc:
Fix remaining cases of Bug #3596: fix possible races caused by an obsolete value of thd->query_length in SHOW PROCESSLIST and SHOW INNODB STATUS; this fix depends on the fact that thd->query is always set to NULL before setting it to point to a new query
sql/sql_parse.cc:
Fix remaining cases of Bug #3596: fix possible races caused by an obsolete value of thd->query_length in SHOW PROCESSLIST and SHOW INNODB STATUS; this fix depends on the fact that thd->query is always set to NULL before setting it to point to a new query
sql/sql_show.cc:
Fix remaining cases of Bug #3596: fix possible races caused by an obsolete value of thd->query_length in SHOW PROCESSLIST and SHOW INNODB STATUS; this fix depends on the fact that thd->query is always set to NULL before setting it to point to a new query
into sanja.is.com.ua:/home/bell/mysql/bk/work-explain-4.1
mysql-test/r/subselect.result:
Auto merged
mysql-test/t/subselect.test:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_union.cc:
Auto merged
mysql-test/r/subselect.result:
Auto merged
mysql-test/r/union.result:
Auto merged
sql/item.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_union.cc:
SCCS merged
Fix bug #3749: if there were several indexs that made an automatically generated FOREIGN KEY index redundant, then MySQL miscalculated the number of keys, and the AUTO_INCREMENT flag was forgotten by MySQL from a PRIMARY KEY. There were probably a multitude of other errors caused by this.
sql/sql_table.cc:
Fix bug #3749: if there were several indexs that made an automatically generated FOREIGN KEY index redundant, then MySQL miscalculated the number of keys, and the AUTO_INCREMENT flag was forgotten by MySQL from a PRIMARY KEY. There were probably a multitude of other errors caused by this.
Reserve the MySQL LOCK_thread_count mutex when printing thd->query of
an arbitrary transaction; if we are printing thd->query of a transaction that
we know is currently executing inside InnoDB, then we know that MySQL cannot
meanwhile change thd->query, and no need to reserve the MySQL mutex; note
that this patch still leaves open the possibility of races in MySQL's
thd->query_len
innobase/trx/trx0trx.c:
Reserve the MySQL LOCK_thread_count mutex when printing thd->query of an arbitrary transaction; if we are printing thd->query of the a transaction that we know is currently executing inside InnoDB, then we know that MySQL cannot meanwhile change thd->query, and no need to reserve the MySQL mutex; note that thsi patch still leaves aopen the possibility of races in MySQL's thd->query_len
innobase/lock/lock0lock.c:
Reserve the MySQL LOCK_thread_count mutex when printing thd->query of an arbitrary transaction; if we are printing thd->query of the a transaction that we know is currently executing inside InnoDB, then we know that MySQL cannot meanwhile change thd->query, and no need to reserve the MySQL mutex; note that thsi patch still leaves aopen the possibility of races in MySQL's thd->query_len
innobase/include/trx0trx.h:
Reserve the MySQL LOCK_thread_count mutex when printing thd->query of an arbitrary transaction; if we are printing thd->query of the a transaction that we know is currently executing inside InnoDB, then we know that MySQL cannot meanwhile change thd->query, and no need to reserve the MySQL mutex; note that thsi patch still leaves aopen the possibility of races in MySQL's thd->query_len
sql/ha_innodb.cc:
Reserve the MySQL LOCK_thread_count mutex when printing thd->query of an arbitrary transaction; if we are printing thd->query of the a transaction that we know is currently executing inside InnoDB, then we know that MySQL cannot meanwhile change thd->query, and no need to reserve the MySQL mutex; note that thsi patch still leaves aopen the possibility of races in MySQL's thd->query_len
A flawed fix of the thd->query race in SHOW INNODB STATUS; see the comments in code about how to fix this properly; we cannot use LOCK_thread_count to protect thd->query, because that will cause a deadlock of threads
sql/ha_innodb.cc:
A flawed fix of the thd->query race in SHOW INNODB STATUS; see the comments in code about how to fix this properly; we cannot use LOCK_thread_count to protect thd->query, because that will cause a deadlock of threads
into neptunus.(none):/home/magnus/mysql-4.1
ndb/src/ndbapi/NdbScanOperation.cpp:
Auto merged
sql/sql_table.cc:
Auto merged
BitKeeper/deleted/.del-regression.sh~c19f771726612629:
Auto merged
- New solution after discussions with Sergei, no handler specific code or error messages should be in sql layer.
next_result, only check for error if check is -1
Improved index_read
include/mysqld_error.h:
New error codes ER_GET_ERRMSG and ER_GET_TEMPORARY_ERRMSG, update number to 298.
Removed prevoius ER_NDB_ERROR, handler specific error should not be here.
sql/ha_ndbcluster.cc:
Removed print_error from ha_ndbcluster, added code to handler::print_error to ask handler::get_error_message for message for an error.
Fix bug in next_result, only check for error if -1 is returned.
Make index_read easier, special case where pk_read or unique_index_read is detected and as default do ordered_index_scan
sql/ha_ndbcluster.h:
Remplace print_error with get_error_message
sql/handler.cc:
Add new function get_error_message usedc to ask handler for a message for an error.
Call get_error_message from print_error if error code is not known.
sql/handler.h:
Add new function get_error_message
sql/share/czech/errmsg.txt:
Error message for ER_GET_ERRMSG and ER_GET_TEMPORARY_ERRMSG
sql/share/danish/errmsg.txt:
Error message for ER_GET_ERRMSG and ER_GET_TEMPORARY_ERRMSG
sql/share/dutch/errmsg.txt:
Error message for ER_GET_ERRMSG and ER_GET_TEMPORARY_ERRMSG
sql/share/english/errmsg.txt:
Error message for ER_GET_ERRMSG and ER_GET_TEMPORARY_ERRMSG
sql/share/estonian/errmsg.txt:
Error message for ER_GET_ERRMSG and ER_GET_TEMPORARY_ERRMSG
sql/share/french/errmsg.txt:
Error message for ER_GET_ERRMSG and ER_GET_TEMPORARY_ERRMSG
sql/share/german/errmsg.txt:
Error message for ER_GET_ERRMSG and ER_GET_TEMPORARY_ERRMSG
sql/share/greek/errmsg.txt:
Error message for ER_GET_ERRMSG and ER_GET_TEMPORARY_ERRMSG
sql/share/hungarian/errmsg.txt:
Error message for ER_GET_ERRMSG and ER_GET_TEMPORARY_ERRMSG
sql/share/italian/errmsg.txt:
Error message for ER_GET_ERRMSG and ER_GET_TEMPORARY_ERRMSG
sql/share/korean/errmsg.txt:
Error message for ER_GET_ERRMSG and ER_GET_TEMPORARY_ERRMSG
sql/share/norwegian-ny/errmsg.txt:
Error message for ER_GET_ERRMSG and ER_GET_TEMPORARY_ERRMSG
sql/share/norwegian/errmsg.txt:
Error message for ER_GET_ERRMSG and ER_GET_TEMPORARY_ERRMSG
sql/share/polish/errmsg.txt:
Error message for ER_GET_ERRMSG and ER_GET_TEMPORARY_ERRMSG
sql/share/portuguese/errmsg.txt:
Error message for ER_GET_ERRMSG and ER_GET_TEMPORARY_ERRMSG
sql/share/romanian/errmsg.txt:
Error message for ER_GET_ERRMSG and ER_GET_TEMPORARY_ERRMSG
sql/share/russian/errmsg.txt:
Error message for ER_GET_ERRMSG and ER_GET_TEMPORARY_ERRMSG
sql/share/serbian/errmsg.txt:
Error message for ER_GET_ERRMSG and ER_GET_TEMPORARY_ERRMSG
sql/share/slovak/errmsg.txt:
Error message for ER_GET_ERRMSG and ER_GET_TEMPORARY_ERRMSG
sql/share/spanish/errmsg.txt:
Error message for ER_GET_ERRMSG and ER_GET_TEMPORARY_ERRMSG
sql/share/swedish/errmsg.txt:
Error message for ER_GET_ERRMSG and ER_GET_TEMPORARY_ERRMSG
sql/share/ukrainian/errmsg.txt:
Error message for ER_GET_ERRMSG and ER_GET_TEMPORARY_ERRMSG
include/my_sys.h:
Auto merged
innobase/include/row0mysql.h:
Auto merged
innobase/row/row0sel.c:
Auto merged
sql/ha_berkeley.cc:
Auto merged
sql/ha_berkeley.h:
Auto merged
sql/ha_heap.h:
Auto merged
sql/ha_innodb.cc:
Auto merged
sql/ha_innodb.h:
Auto merged
sql/handler.h:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_select.h:
Auto merged
sql/sql_test.cc:
Auto merged
include/my_base.h:
Manually merged
sql/opt_range.cc:
Manually merged
sql/opt_range.h:
Manually merged
sql/sql_delete.cc:
Manually merged
sql/sql_update.cc:
Manually merged
The main idea is to exploit the fact that key scans for "key=const" return ordered sequences of rowids.
include/my_base.h:
Added HA_EXTRA_KEYREAD_PRESERVE_FIELDS flag
include/my_bitmap.h:
Added a couple of utility functions
include/my_sys.h:
Added my_conunt_bits_ushort function
innobase/include/row0mysql.h:
Added support for HA_EXTRA_KEYREAD_PRESERVE_FIELDS
innobase/row/row0sel.c:
Added support for HA_EXTRA_KEYREAD_PRESERVE_FIELDS
mysys/my_bit.c:
Added my_count_bits_ushort function
mysys/my_bitmap.c:
Added a couple of utility functions
sql/ha_berkeley.cc:
Added cmp_ref rowid comparison function.
sql/ha_berkeley.h:
Added cmp_ref rowid comparison function.
sql/ha_heap.h:
Added cmp_ref rowid comparison function.
sql/ha_innodb.cc:
Added cmp_ref rowid comparison function and support from HA_EXTRA_KEYREAD_PRESERVE_FIELDS
sql/ha_innodb.h:
Added cmp_ref rowid comparison function.
sql/handler.h:
Added cmp_ref rowid comparison function.
sql/opt_range.cc:
Added QUICK_ROR_{INTERSECT,UNION}_SELECT classes and related optimizer code
sql/opt_range.h:
Added QUICK_ROR_{INTERSECT,UNION}_SELECT classes
sql/sql_delete.cc:
Changed to use new ROWID comparison function
also always call quick->reset() for quick selects
sql/sql_select.cc:
Account for new quick select types
sql/sql_select.h:
New, proper rowid ordering/comparison function to be used with Unique class etc.
sql/sql_test.cc:
Account for new quick select types
sql/sql_update.cc:
Account for new quick select types
scripts/mysql_install_db.sh:
Portability fix (! is not portable)
sql/item_func.cc:
Use my_strtoll10() instead of strtoull()
sql/repl_failsafe.cc:
Use my_strtoll10() instead of strtoull()
sql/sql_analyse.cc:
Use my_strtoll10() instead of strtoull()
sql/sql_yacc.yy:
Use my_strtoll10() instead of strtoull()
strings/my_strtoll10.c:
Fix compiler warnings
sql/examples/ha_example.cc:
Documentation updates (lots of comments in the code).
sql/examples/ha_example.h:
Documenation update, lots of comments in the code.
Prefer not automatic keys before automatic keys. If there is two conf
BitKeeper/etc/ignore:
added *.d
include/my_base.h:
Added flag for automaticly generated key
mysql-test/r/constraints.result:
Update tests after bug fix
mysql-test/r/create.result:
Update tests after bug fix
mysql-test/r/innodb.result:
Added test of automatic creation of foreign keys
mysql-test/t/innodb.test:
Added test of automatic creation of foreign keys
mysql-test/t/key_cache.test:
Portability fixes (64 BIT os)
sql/sql_acl.cc:
Indentation fixes
sql/sql_class.cc:
Fix key comparison to handle prefix and optionally key segments in different order.
sql/sql_class.h:
Added flag for automaticly generated keys
sql/sql_parse.cc:
Added flag for automaticly generated keys
sql/sql_table.cc:
Don't automaticly generate a new key for a foreign key constraint if there is already a usable key.
Prefer not automatic keys before automatic keys. If there is two conflicting automatic keys, prefer the longer one.
sql/sql_yacc.yy:
Added flag for automaticly generated keys
strings/strings-x86.s:
Portability fix.
- Close an open scan if index_read is called without closing the previous one.
- Removed some errors that occured during previous merge
include/mysqld_error.h:
Added two new error messages for NDB
sql/ha_ndbcluster.cc:
Added more error code mappings, from NDB code to MySQL
Added function to print out the error message when an NDB error occurs.
Added two new error codes, which will represent either a permanent or temporary NDB error.
Modev get_ndb_lock_type from class to local function
Removed some merge errors
New function close_scan, to close an open scan.
sql/ha_ndbcluster.h:
Added print_error function, overrides handler::print_error
Added close_scan
Moved get_ndb_lock_type from class to local function
sql/share/czech/errmsg.txt:
Added two new error messages for NDB
sql/share/danish/errmsg.txt:
Added two new error messages for NDB
sql/share/dutch/errmsg.txt:
Added two new error messages for NDB
sql/share/english/errmsg.txt:
Added two new error messages for NDB
sql/share/estonian/errmsg.txt:
Added two new error messages for NDB
sql/share/french/errmsg.txt:
Added two new error messages for NDB
sql/share/german/errmsg.txt:
Added two new error messages for NDB
sql/share/greek/errmsg.txt:
Added two new error messages for NDB
sql/share/hungarian/errmsg.txt:
Added two new error messages for NDB
sql/share/italian/errmsg.txt:
Added two new error messages for NDB
sql/share/japanese/errmsg.txt:
Added two new error messages for NDB
sql/share/korean/errmsg.txt:
Added two new error messages for NDB
sql/share/norwegian-ny/errmsg.txt:
Added two new error messages for NDB
sql/share/norwegian/errmsg.txt:
Added two new error messages for NDB
sql/share/polish/errmsg.txt:
Added two new error messages for NDB
sql/share/portuguese/errmsg.txt:
Added two new error messages for NDB
sql/share/romanian/errmsg.txt:
Added two new error messages for NDB
sql/share/russian/errmsg.txt:
Added two new error messages for NDB
sql/share/serbian/errmsg.txt:
Added two new error messages for NDB
sql/share/slovak/errmsg.txt:
Added two new error messages for NDB
sql/share/spanish/errmsg.txt:
Added two new error messages for NDB
sql/share/swedish/errmsg.txt:
Added two new error messages for NDB
sql/share/ukrainian/errmsg.txt:
Added two new error messages for NDB
into mysql.com:/home/my/mysql-5.0
sql/mysql_priv.h:
Auto merged
sql/opt_range.cc:
Auto merged
sql/sp.cc:
Auto merged
sql/sql_acl.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql-bench/limits/mysql-4.0.cfg:
Auto merged
consisting of pos-review fixes and improvements.
mysql-test/r/distinct.result:
Adjusted to account for pre-sorting of tables before optimiziation.
mysql-test/r/func_group.result:
Adjusted to account for pre-sorting of tables before optimiziation.
mysql-test/r/greedy_optimizer.result:
- Adjusted to account for pre-sorting of tables before optimiziation.
- Removed unnecessary test.
- More comments.
mysql-test/r/select.result:
- Adjusted to account for pre-sorting of tables before optimiziation.
mysql-test/t/greedy_optimizer.test:
- Adjusted to account for pre-sorting of tables before optimiziation.
- Removed unnecessary test.
- More comments.
sql/mysql_priv.h:
Moved function print_plan() to sql_test.cc
sql/sql_select.cc:
- Simplified the recursion in best_extension_by_limited_search()
and aligned it with its pseudo-code.
- Renamed functions to better reflect their semantics.
- Post-review changes of function specifications.
- Moved function print_plan() to sql_test.cc.
sql/sql_test.cc:
Moved function print_plan() to sql_test.cc
BitKeeper/deleted/.del-regression.sh~c19f771726612629:
Delete: ndb/bin/regression.sh
sql/ha_ndbcluster.cc:
Change index flags, remove HA_WRONG_ASCII_ORDER and HA_ONLY_WHOLE_INDEX.
HA_WRONG_ASCII_ORDER was used in field::optimize_range and if it was set, the index was hardly ever used.
Correct check of start_key and start_key->flag != HA_READ_KEY_EXACT, ignore end-Key in suc a case
Updated implementation o read_range_first
Made the calculation of number of bytes par batch easier to underatsn and easier to configure. The value bytesperbatch can be made a config variable.
AReduce the number of bytes sent per batch, don't overload.
Increase the value returned from scan_time in order to make it clear to optimizer that scanning is the worst alternative. Always use index if available.
sql/ha_ndbcluster.cc:
Modified next_result to process fetched records cached in NdbApi before asking NDB for more.
It should also NoCommit any pending operations before contacting NDB again.
Added utility function define_read_attrs to set the fields that should be read.
sql/ha_ndbcluster.h:
Add function define_read_attrs, used to set the fields to read
Add get_nd_lock_type funciton ,to convert MySQL lock type to NDB lock type
Always compile filtered scan function even if it's not used yet.
Add variable ops_pending to keep track of "pending" update/delete operations.
sql/sql_select.cc:
treat parameter as constant in ORDER BY check of fields in SELECT list
tests/client_test.c:
test of using parameters in SELECT list with ORDER BY
mysql-test/r/subselect.result:
ALL/ANY test
mysql-test/t/subselect.test:
ALL/ANY test
sql/item_subselect.cc:
keep old engine & JOIN if we changed subquery Item, which allow avoid second all SELECT items fix_fields call with pervios clean up (because of second setup_tables which remove table->key_use and maybe something else)
keep list when we change Item in SELECT list
processing inserted max/min function (now JOIN::prepare will be called only once)
methods of changing item for subselect engines
sql/item_subselect.h:
change item & results procedure
sql/item_sum.cc:
Item_sum_hybrid::clear moved to .cc file (to keep .h clean and to make inserving/removing debug info easy)
sql/item_sum.h:
Item_sum_hybrid::clear moved to .cc file (to keep .h clean and to make inserving/removing debug info easy)
sql/sql_lex.cc:
note about new method
sql/sql_lex.h:
method for changing result of UNION JOINs
sql/sql_select.cc:
method for changing result in JOIN
sql/sql_select.h:
method for changing result in JOIN
sql/sql_union.cc:
method for changing result in JOIN