same as above
sql_lex.h:
same as above
sql_union.cc:
same as aobve
sql_select.cc:
Fixing that SQL_CALC_FOUND_ROWS work properly in UNION's in 4.1
Plus updating some fields in THD in the proper places
plus fixing a wrong result
sql/sql_select.cc:
Fixing that SQL_CALC_FOUND_ROWS work properly in UNION's in 4.1
Plus updating some fields in THD in the proper places
plus fixing a wrong result
sql/sql_union.cc:
same as aobve
sql/sql_lex.h:
same as above
mysql-test/r/union.result:
same as above
into laptop.sanja.is.com.ua:/home/bell/mysql/bk/work-all_any_group-4.1
mysql-test/r/subselect.result:
Auto merged
mysql-test/t/subselect.test:
Auto merged
sql/item_subselect.cc:
Auto merged
sql/item_subselect.h:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_class.h:
Auto merged
fixed bug in Item_sum
fixed bug in dependence remover
after merge fix
mysql-test/r/subselect.result:
after merge fix
mysql-test/r/union.result:
new test
mysql-test/t/subselect.test:
after merge fix
mysql-test/t/union.test:
new test
sql/item.cc:
fixed returned value
sql/item.h:
fixed flag dropper
(I was not able to find Item whicj need more to be fix_fielded twice)
sql/item_subselect.h:
fixed initialisation
sql/item_sum.cc:
fixed absence of walk method of Item_sum
sql/item_sum.h:
fixed absence of walk method of Item_sum
sql/mysql_priv.h:
setup_fields reverter
sql/sql_base.cc:
setup_fields reverter
sql/sql_derived.cc:
fixed bug of lack of fix_fields call
sql/sql_union.cc:
fixed bug of lack of fix_fields call
mysql-test/r/func_test.result:
Auto merged
mysql-test/r/grant.result:
Auto merged
mysql-test/t/func_test.test:
Auto merged
mysql-test/t/grant.test:
Auto merged
sql/ha_innodb.cc:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/sql_acl.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_table.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
fix for BUG#1113 "INSERT into non-trans table SELECT ; ROLLBACK" does not send warning"
and
fix for BUG#873 "In transaction, INSERT to non-trans table is written too early to binlog".
Now we don't always write the non-trans update immediately to the binlog;
if there is something in the binlog cache we write it to the binlog cache
(because the non-trans update could depend on a trans table which was modified
earlier in the transaction); then in case of ROLLBACK, we write the binlog
cache to the binlog, wrapped with BEGIN/ROLLBACK.
This guarantees that the slave does the same updates.
For ROLLBACK TO SAVEPOINT: when we execute a SAVEPOINT command we write it
to the binlog cache. At ROLLBACK TO SAVEPOINT, if some non-trans table was updated,
we write ROLLBACK TO SAVEPOINT to the binlog cache; when the transaction
terminates (COMMIT/ROLLBACK), the binlog cache will be flushed to the binlog
(because of the non-trans update) so we'll have SAVEPOINT and ROLLBACK TO
SAVEPOINT in the binlog.
Apart from this rare case of updates of mixed table types in transaction, the
usual way is still clear the binlog cache at ROLLBACK, or chop it at
ROLLBACK TO SAVEPOINT (meaning the SAVEPOINT command is also chopped, which
is fine).
Note that BUG#873 encompasses subbugs 1) and 2) of BUG#333 "3 binlogging bugs when doing INSERT with mixed InnoDB/MyISAM".
client/mysqldump.c:
Minor edit: one CHANGE MASTER with 2 arguments instead of 2 CHANGE MASTER with one argument each.
mysql-test/r/rpl_loaddata.result:
result update
mysql-test/t/rpl_loaddata.test:
minor edit: simplifying the test.
sql/handler.cc:
Fix for BUG#873. See comments in code, and the description of the changeset.
sql/log.cc:
* Previously, if a query updated a non-transactional table we wrote it immediately
to the real binlog. This causes a bug when the update is done inside a transaction
and uses the content of an updated transactional table (because this makes
a wrong order of queries in the binlog). So if the binlog cache is not empty,
we write the query to the binlog cache; otherwise we can write it to the binlog.
* Previously, when we flushed the binlog cache to the binlog, we wrapped it
with BEGIN/COMMIT. Now it's also possible to wrap it with BEGIN/ROLLBACK, to handle
transactions which update both transactional and non-transactional tables.
sql/log_event.cc:
The slave thread can leave a transaction if COMMIT or if ROLLBACK.
sql/sql_class.h:
prototype
sql/sql_insert.cc:
Fix for BUG#1113:
this was because the INSERT SELECT code did not set OPTION_STATUS_NO_TRANS_UPDATE.
sql/sql_parse.cc:
Don't send ER_WARNING_NOT_COMPLETE_ROLLBACK if this is the SQL slave thread (see comments).
client/mysqltest.c:
Fix that LET can be used with queries that return multiple columns
libmysql/errmsg.c:
Extend socket name to 100 characters in error messages
libmysql/libmysql.c:
Reset some variables to make ensure that we can call mysql_server_init()/mysql_server_end() many times
mysql-test/mysql-test-run.sh:
Set open-files-limit to 1024
mysql-test/r/loaddata.result:
Add test case for LOAD DATA bug report (was not a bug)
mysql-test/r/query_cache.result:
Move test with many tables to separate test
mysql-test/r/select_safe.result:
Make test repeatable
mysql-test/t/loaddata.test:
Add test case for LOAD DATA bug report (was not a bug)
mysql-test/t/query_cache.test:
Move test with many tables to separate test
mysql-test/t/select_safe.test:
Make test repeatable
sql/field.cc:
Portability fix for gcc 3.3
sql/mysqld.cc:
Store in open_files_limit the true number of files we can open (if system supports it)
sql/sql_load.cc:
Safety fix
Since my changes, rpl_log.test, whose result file depends on file_id, became
non-repeatable, i.e. file_id on slave in SHOW BINLOG EVENTS
changed depending on the order of tests (sometimes 1, sometimes 5).
Which is logical: as now the slave does not copy Create_file and Exec_load from
the relay log (i.e from the master's binlog) to the slave's binlog, but
instead lets mysql_load() do the logging, the file_id is now the one whic
was used on the slave. Before it was the one which was used on the master,
and by chance the master was always restarted for this test because there's
a -master.opt file, so file_id on the master is always 1. But now file_id is
from the slave so we need to restart the slave. That's why I add an (empty)
-slave.opt file. I could have used 'server_stop/start slave', but this
would have required the manager, so most of the time mysql-test-run silently
skip the test which makes it useless. And I want this test to be run !
mysql-test/r/rpl_loaddata.result:
Orig_log_pos is like Pos since Dmitri's good change for BUG#1086
mysql-test/r/rpl_log.result:
Orig_log_pos is like Pos now, because Exec_load events are not directly copied
by the slave from the relay log to the slave's binary log (these events
are written by mysql_load() now).
mysql-test/t/rpl_log.test:
A comment
"LOAD DATA INFILE is badly filtered by binlog-*-db rules".
There will probably be a second final one to merge Dmitri's changes
to rpl_log.result and mine.
2 new tests:
rpl_loaddata_rule_m : test of logging of LOAD DATA INFILE when the master has binlog-*-db rules,
rpl_loaddata_rule_s : test of logging of LOAD DATA INFILE when the slave has binlog-*-db rules and --log-slave-updates.
mysql-test/r/rpl_loaddata.result:
Test that logging of LOAD DATA INFILE is done on the slave
mysql-test/t/rpl_loaddata.test:
Test that logging of LOAD DATA is done on the slave
sql/log.cc:
debug info
sql/log_event.cc:
* Append_block, Exec_load and Delete_file now have a member 'db' like Create_file.
This member is filled by mysql_load(). It is used for filtering by binlog-*-db rules,
that's all. It's not written to the binlog, and so can't be read from the binlog.
In other words, that's temporary info which is stored in the event and lost when
it is written and deleted.
* Better error messages in Append_block et al. events.
* The slave now logs (log-slave-updates) the Create_file et al. events in mysql_load()
(they are not directly copied from the events in the relay log, because this
prevented filtering by binlog-*-db rules). Before, mysql_load() in the slave
did no logging, now it does the logging, as in any regular thread.
sql/log_event.h:
New member 'db' for Append_block et al. events.
sql/slave.cc:
Removed useless code. Why was it useless:
- CREATE_FILE_EVENT is not defined in 3.23. It appeared in 4.0.
- in queue_old_event(), which is called only if the master is 3.23, we had a
case CREATE_FILE_EVENT:
so this case can be removed.
- this case was the only caller of process_io_create_file() so this function
can be removed.
sql/sql_load.cc:
Pass the db to events, so that they can be well filtered.
sql/sql_repl.cc:
Pass the db to events so that they can be well filtered.
sql/item_cmpfunc.cc:
Auto merged
sql/item_cmpfunc.h:
Auto merged
sql/item_subselect.cc:
Auto merged
sql/item_subselect.h:
Auto merged
sql/item_sum.cc:
Auto merged
sql/sql_union.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
Set min value of max_allowed_packet to 1024
Fixed problem with UNION's without braces and SQL_CALC_FOUND_ROWS, LIMIT #,#
and ORDER BY...LIMIT
include/m_string.h:
Added memcpy_overlap() to avoid warnings when using valgrind on memcpy(A,A,...)
myisam/mi_create.c:
Fixed comment
myisam/mi_search.c:
Fix warning from valgrind
myisam/mi_write.c:
Indentation fix
mysql-test/mysql-test-run.sh:
Add options handled by general skip- option
mysql-test/r/packet.result:
Update results after change to mysqld (min max_allowed_packet length is now 1024)
mysql-test/r/union.result:
Added testing of UNION with SQL_CALC_FOUND_ROWS
mysql-test/t/packet.test:
Update results after change to mysqld (min max_allowed_packet length is now 1024)
mysql-test/t/union.test:
Added testing of UNION with SQL_CALC_FOUND_ROWS
sql/field.cc:
Fix to remove waarning from valgrind
sql/ha_innodb.cc:
Remove wrong include file
sql/item_cmpfunc.cc:
Safety fix to handle EOM conditions in IN
sql/item_sum.cc:
Fixed prototype for update_field() (argument was alwys 0)
sql/item_sum.h:
Fixed prototype for update_field() (argument was alwys 0)
sql/item_uniq.h:
Fixed prototype for update_field() (argument was alwys 0)
sql/log.cc:
Indentation fix
sql/mysqld.cc:
Set min value of max_allowed_packet to 1024 (to avoid it getting set to 0)
sql/net_serv.cc:
Indentation changes + trivial optimization
sql/sql_select.cc:
Fixed prototype for update_field() (argument was alwys 0)
sql/sql_union.cc:
Fixed problem with UNION's without braces and
- SQL_CALC_FOUND_ROWS
- LIMIT #,#
- ORDER BY ... LIMIT
Test case for the LEAST() bug in LEFT JOIN
mysql-test/t/func_test.test:
Test case for the LEAST() bug in LEFT JOIN
mysql-test/r/func_test.result:
Test case for the LEAST() bug in LEFT JOIN
Fix for a bug with LEAST() in WHERE clause
ha_innodb.cc:
Fix for a configure bug
multi_update.result, multi_update.test:
Fix for the update with NULL's in the result set
sql_update.cc:
Fix for the update with NULL's in the result set
Fix for the update with NULL's in the result set
Fix for the update with NULL's in the result set
sql/sql_update.cc:
Fix for the update with NULL's in the result set
Fix for the update with NULL's in the result set
Fix for the update with NULL's in the result set
mysql-test/t/multi_update.test:
Fix for the update with NULL's in the result set
mysql-test/r/multi_update.result:
Fix for the update with NULL's in the result set
sql/ha_innodb.cc:
Fix for a configure bug
sql/item_func.h:
Fix for a bug with LEAST() in WHERE clause
log-slave-updates since this causes unexpected values in
Exec_master_log_pos in A->B->C replication setup, synchronization
problems in master_pos_wait()...
Still this brokes some functionality in sql/repl_failsafe.cc
(but this file is not used now)
mysql-test/r/rpl_log.result:
SHOW BINLOG EVENTS for binlog on slave should give the same
Orig_log_pos and Pos values
sql/log_event.cc:
Do not propagate our master's log pos to our bin log
sql/repl_failsafe.cc:
Added comment about broken SHOW NEW MASTER
sql/slave.cc:
Do not propagate our master's log pos to our bin log
sql/sql_class.cc:
THD::log_pos is no longer needed
sql/sql_class.h:
THD::log_pos is no longer needed
sql/sql_parse.cc:
Added comment about broken SHOW NEW MASTER
mysql-test/r/subselect.result:
Auto merged
mysql-test/t/subselect.test:
Auto merged
sql/item.cc:
Auto merged
sql/item.h:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_cmpfunc.h:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_func.h:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/sql_delete.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_table.cc:
Auto merged
sql/sql_update.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
sql/table.h:
Auto merged
configure.in:
Auto merged
mysql-test/r/func_time.result:
Auto merged
mysql-test/r/subselect.result:
Auto merged
mysql-test/t/func_time.test:
Auto merged
mysql-test/t/subselect.test:
Auto merged
sql/field.cc:
Auto merged
sql/field.h:
Auto merged
sql/item.h:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_timefunc.cc:
Auto merged
sql/item_timefunc.h:
Auto merged
sql/lex.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_table.cc:
Auto merged
sql/sql_union.cc:
Auto merged
sql/sql_update.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
Use server character set if --default-character-set is not used
Added convert_string() for more efficient alloc+character-set convert of strings
BitKeeper/deleted/.del-convert.result~a3b56e1db6f498e9:
Delete: mysql-test/r/convert.result
BitKeeper/deleted/.del-convert.test~f4ceb743194dfe72:
Delete: mysql-test/t/convert.test
BitKeeper/deleted/.del-make_win_src_distribution.old~5c9ebdc4a852b43b:
Delete: scripts/make_win_src_distribution.old
client/mysql.cc:
Use server character set if --default-character-set is not used
client/mysqltest.c:
Code cleanup (merge identical code)
More debug messages
heap/hp_create.c:
After merge fix
include/m_ctype.h:
After merge fix
include/my_global.h:
Remove size_str (we already have size_s)
include/mysql_com.h:
After merge fix
libmysql/libmysql.c:
After merge fix
libmysqld/Makefile.am:
After merge fix
mysql-test/r/auto_increment.result:
After merge fix
mysql-test/r/create.result:
After merge fix
mysql-test/r/ctype_latin1_de.result:
After merge fix
mysql-test/r/distinct.result:
After merge fix
mysql-test/r/drop.result:
After merge fix
mysql-test/r/fulltext.result:
After merge fix
mysql-test/r/func_gconcat.result:
After merge fix
mysql-test/r/func_str.result:
After merge fix
mysql-test/r/func_test.result:
After merge fix
mysql-test/r/grant.result:
After merge fix
mysql-test/r/group_by.result:
After merge fix
mysql-test/r/handler.result:
After merge fix
mysql-test/r/heap.result:
After merge fix
mysql-test/r/heap_btree.result:
After merge fix
mysql-test/r/heap_hash.result:
After merge fix
mysql-test/r/innodb.result:
After merge fix
mysql-test/r/insert.result:
After merge fix
mysql-test/r/insert_select.result:
After merge fix
mysql-test/r/join_outer.result:
After merge fix
mysql-test/r/key.result:
After merge fix
mysql-test/r/key_cache.result:
After merge fix
mysql-test/r/loaddata.result:
After merge fix
mysql-test/r/myisam.result:
After merge fix
mysql-test/r/null.result:
After merge fix
mysql-test/r/null_key.result:
After merge fix
mysql-test/r/order_by.result:
After merge fix
mysql-test/r/rpl_do_grant.result:
After merge fix
mysql-test/r/rpl_error_ignored_table.result:
After merge fix
mysql-test/r/rpl_ignore_grant.result:
After merge fix
mysql-test/r/rpl_loaddata.result:
After merge fix
mysql-test/r/rpl_log.result:
After merge fix
mysql-test/r/rpl_log_pos.result:
After merge fix
mysql-test/r/rpl_max_relay_size.result:
After merge fix
mysql-test/r/rpl_replicate_do.result:
After merge fix
mysql-test/r/rpl_reset_slave.result:
After merge fix
mysql-test/r/rpl_rotate_logs.result:
After merge fix
mysql-test/r/rpl_user_variables.result:
After merge fix
mysql-test/r/select.result:
After merge fix
mysql-test/r/select_safe.result:
After merge fix
mysql-test/r/subselect.result:
After merge fix
mysql-test/r/type_blob.result:
After merge fix
mysql-test/r/type_decimal.result:
After merge fix
mysql-test/r/type_float.result:
After merge fix
mysql-test/r/type_ranges.result:
After merge fix
mysql-test/r/type_time.result:
After merge fix
mysql-test/r/type_uint.result:
After merge fix
mysql-test/r/union.result:
After merge fix
mysql-test/r/warnings.result:
After merge fix
mysql-test/t/auto_increment.test:
After merge fix
mysql-test/t/case.test:
After merge fix
mysql-test/t/ctype_collate.test:
After merge fix
mysql-test/t/ctype_latin1_de.test:
After merge fix
mysql-test/t/drop.test:
After merge fix
mysql-test/t/func_in.test:
After merge fix
mysql-test/t/func_set.test:
After merge fix
mysql-test/t/func_str.test:
After merge fix
mysql-test/t/func_test.test:
After merge fix
mysql-test/t/grant.test:
After merge fix
mysql-test/t/group_by.test:
After merge fix
mysql-test/t/handler.test:
After merge fix
mysql-test/t/heap.test:
After merge fix
mysql-test/t/heap_btree.test:
After merge fix
mysql-test/t/heap_hash.test:
After merge fix
mysql-test/t/innodb.test:
After merge fix
mysql-test/t/insert_select.test:
After merge fix
mysql-test/t/key.test:
After merge fix
mysql-test/t/key_cache.test:
After merge fix
mysql-test/t/lock_tables_lost_commit-master.opt:
After merge fix
mysql-test/t/lock_tables_lost_commit.test:
After merge fix
mysql-test/t/myisam.test:
After merge fix
mysql-test/t/row.test:
After merge fix
mysql-test/t/subselect.test:
After merge fix
mysql-test/t/type_decimal.test:
After merge fix
mysql-test/t/type_ranges.test:
After merge fix
mysql-test/t/type_uint.test:
After merge fix
mysql-test/t/variables.test:
After merge fix
mysql-test/t/warnings.test:
After merge fix
scripts/make_win_src_distribution.sh:
after merge fixes
sql-common/client.c:
After merge fix
Change my_connect() to use poll()
If character set is not given, use servers character set.
sql/field.cc:
After merge fix
Don't give warnings when storing data in fields in optimizer.
sql/ha_myisammrg.h:
After merge fix
sql/log.cc:
After merge fix
sql/log_event.cc:
After merge fix
sql/mysqld.cc:
After merge fix
sql/opt_range.cc:
After merge fix
sql/set_var.cc:
Code cleanup
Fixed wrong usage of base_names (like medium.key_buffer) that caused core dumps
sql/set_var.h:
Fixed wrong usage of base_names (like medium.key_buffer) that caused core dumps
sql/slave.cc:
After merge fix
sql/sql_acl.cc:
After merge fix
Code cleanup
sql/sql_class.cc:
Added convert_string() for more efficient alloc+character-set convert of strings
Add cached flags to avoid calling mysql_charset_same() during parsing.
sql/sql_class.h:
Added convert_string() for more efficient alloc+character-set convert of strings
Add cached flags to avoid calling mysql_charset_same() during parsing.
sql/sql_handler.cc:
After merge fix
sql/sql_lex.h:
After merge fix
sql/sql_parse.cc:
Optimize and fix memory reference errors reported by valgrind
sql/sql_repl.cc:
After merge fix
sql/sql_yacc.yy:
After merge fix
Avoid calling mysql_charset_same() when parsing identifiers
strings/ctype-latin1.c:
Port latin_de conversion code from 4.0
Fix packet error when using wrong GRANT command
include/config-win.h:
Changed back to test for HAVE_SETFILEPOINTER instead of operating system
mysql-test/r/grant.result:
Extra test to catch wrong packet bug
mysql-test/t/grant.test:
Extra test to catch wrong packet bug
mysys/my_chsize.c:
Cleanup
sql/opt_range.cc:
Fix to recent BETWEEN patch
sql/sql_acl.cc:
Fix packet error when using wrong GRANT command
sql/sql_select.cc:
Cleanups
Added not critical out-of-memory check
into sanja.is.com.ua:/home/bell/mysql/bk/work-simple_in-4.1
sql/item_sum.cc:
Auto merged
sql/sql_derived.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_select.h:
Auto merged
sql/sql_union.cc:
Auto merged
mysql-test/r/derived.result:
test of BUG#1031
mysql-test/t/derived.test:
test of BUG#1031
sql/item_sum.cc:
'alias' parameter added to create_tmp_table
sql/sql_derived.cc:
Derived table should be named (to pass it name to Field and then to Item_field)
sql/sql_select.cc:
'alias' parameter added to create_tmp_table
sql/sql_select.h:
'alias' parameter added to create_tmp_table
sql/sql_union.cc:
'alias' parameter added to create_tmp_table
sql/sql_update.cc:
'alias' parameter added to create_tmp_table
mysql-test/r/subselect.result:
test of new optimisation
mysql-test/t/subselect.test:
test of new optimisation
sql/item_subselect.cc:
special subselect to finding max/min of returned values
optimisation of independent ALL/ANY with aggregate function
sql/item_subselect.h:
special subselect to finding max/min of returned values
sql/sql_class.cc:
class for collaction result for max/min subquery
sql/sql_class.h:
class for collaction result for max/min subquery