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
Czech collations were renamed to _cs
Index.xml:
Czech collation were renamed to _cs
sql/share/charsets/Index.xml:
Czech collation were renamed to _cs
strings/ctype-czech.c:
Czech collations were renamed to _cs
strings/ctype-win1250ch.c:
Czech collations were renamed to _cs
Change strtoll -> my_strtoll10()
Fixed bug in my_strntoul() and my_strntol() where we got different values on 32 and 64 bit systems (Bug #3472)
configure.in:
Fixed problem on IRIX64 (One can't have AC_MSG_RESULT on same row as AC_DEFINE
extra/my_print_defaults.c:
Fixed wrong definition for 'verbose'
include/my_global.h:
Portability fix (IRIX64)
libmysql/client_settings.h:
Remove compiler warnings
libmysql/libmysql.c:
Remove compiler warnings
mysql-test/r/func_str.result:
Updated results
mysql-test/r/key_cache.result:
Updated results to not depend on key_blocks_unused
mysql-test/t/func_str.test:
More test of long overflow
mysql-test/t/key_cache.test:
Updated results to not depend on key_blocks_unused
sql/item.cc:
Portability fix (don't use strtoll())
sql/item.h:
Portability fix (don't use strtoll())
sql/item_sum.h:
Portability fix (don't use strtoll())
sql/item_timefunc.cc:
Fixed compiler warning
strings/ctype-simple.c:
Fixed bug in my_strntoul() and my_strntol() where we got different values on 32 and 64 bit systems
strings/ctype-ucs2.c:
Fixed bug in my_strntoul() and my_strntol() where we got different values on 32 and 64 bit systems
item_list for fake_select will be created only once
(problem reported by valgrind in test_union2 fixed)
sql/sql_lex.h:
new function to keep code in one place
sql/sql_union.cc:
fake_select_lex should be prepared during PS preparation to work correctly
item_list for fake_select will be created only once
libmysql/libmysql.c:
Make advanced_command check client reply
sql/sql_prepare.cc:
mysql_stmt_reset now sends ok/error reply to the client.
tests/client_test.c:
Memory leak fixed.
sql/handler.h:
Fixed (portability) bug. No qualified method names in the class definition.
sql/item_cmpfunc.h:
Attempt to silence cast warnings on some platforms.
sql/item_subselect.h:
Attempt to silence cast warnings on some platforms.
sql/set_var.cc:
Silence warning (missing cast).
sql/spatial.h:
Attempt to silence cast warnings on some platforms.
sql/sql_cache.cc:
Silence warning (wrong cast).
sql/sql_lex.h:
Attempt to silence cast warnings on some platforms.
HEAP: Copies the key count to a backup variable and sets the key count to zero.
That way, no HEAP function will ever try to touch any index.
Re-enabling is done by copying back the backup variable.
To avoid memory leak at table close, disable deletes all index trees.
Re-enabling must be done with empty indexes and data anyway. Otherwise,
the indexes would need to be repaired, wich HEAP is not capable of.
MyISAM: Only the key_map is cleared and set.
Re-enabling must be done with empty indexes and data. Otherwise, repair needs
to be done which will enable all keys persistently.
The former implementation disabled only non-unique keys and maked this persistent.
The new implementation additionally can disable all keys, but only without
making this persistent. Re-enabling all keys can be done without repair,
if data file and indexes are empty.
heap/heapdef.h:
WL#1687 - Optimize UNION DISTINCT ... UNION ALL (again).
Pulled hp_clear_keys() out of hp_clear().
heap/hp_clear.c:
WL#1687 - Optimize UNION DISTINCT ... UNION ALL (again).
Pulled hp_clear_keys() out of hp_clear().
Added the new functions for disabling and enabling keys and to ask for the key state.
include/heap.h:
WL#1687 - Optimize UNION DISTINCT ... UNION ALL (again).
Added a new HP_SHARE element to save the key count while keys are disabled.
Added declarations for the new functions.
myisam/mi_open.c:
WL#1687 - Optimize UNION DISTINCT ... UNION ALL (again).
Added the new functions for disabling and enabling keys and to ask for the key state.
myisam/myisamdef.h:
WL#1687 - Optimize UNION DISTINCT ... UNION ALL (again).
Added declarations for the new functions.
sql/ha_heap.cc:
WL#1687 - Optimize UNION DISTINCT ... UNION ALL (again).
Pulled set_keys_for_scanning() out of open().
Added the new functions for disabling and enabling keys and to ask for the key state.
sql/ha_heap.h:
WL#1687 - Optimize UNION DISTINCT ... UNION ALL (again).
Added declarations for the new functions.
sql/ha_myisam.cc:
WL#1687 - Optimize UNION DISTINCT ... UNION ALL (again).
Extended disable_indexes() for all keys and no save.
The argument is now 'mode' as it must handle different cases.
Extended enable_indexes() for no save.
The new feature needs the new argument 'mode' with the same semantics as in disable_indexes().
Added indexes_are_disabled() to ask for the key state.
Extended the existing call to enable_indexes() by the new argument.
sql/ha_myisam.h:
WL#1687 - Optimize UNION DISTINCT ... UNION ALL (again).
Modified the declarations of dis-/enable_indexes() for the new argument.
Added the declaration of the new function to ask for the key state.
sql/handler.h:
WL#1687 - Optimize UNION DISTINCT ... UNION ALL (again).
Added declarations for the operation modes for the key switching functions.
Modified the declarations of dis-/enable_indexes() for the new argument.
Added the declaration of the new function to ask for the key state.
sql/sql_select.cc:
WL#1687 - Optimize UNION DISTINCT ... UNION ALL (again).
In create_myisam_from_heap() take notice of disabled keys
and disable them in the new table before copying the data.
sql/sql_table.cc:
WL#1687 - Optimize UNION DISTINCT ... UNION ALL (again).
Modified the calls of dis-/enable_indexes() for the new argument.
innobase/include/os0file.h:
Auto merged
innobase/os/os0file.c:
Auto merged
innobase/srv/srv0srv.c:
Auto merged
mysql-test/r/rpl_server_id2.result:
Auto merged
sql/ha_innodb.cc:
Auto merged
sql/slave.cc:
Merge with 4.0
The bug was introduced in a patch in the 4.1.2 source tree.
mysql-test/r/key.result:
New result
mysql-test/t/key.test:
Added test case for bug in key read
sql/sql_select.cc:
Fixed wrong key usage which caused wrong result for some "WHERE primary_key=constant" queries where MySQL could use 'only index' (Bug #3666)
as the I/O thread filters on the server id, we must test replicate_same_server_id in it (on top of in the SQL thread).
mysql-test/r/rpl_server_id2.result:
result update
sql/slave.cc:
As the I/O thread filters on the server id, we must test replicate_same_server_id in it (on top of in the SQL thread).
and a comment update
mysql-test/r/rpl_server_id2.result:
result update
mysql-test/t/rpl_server_id2.test:
We stop the slave before cleaning up otherwise we'll get
'drop table t1' executed twice, so an error in the slave.err
(not critical).
sql/slave.cc:
update comment about 4.1 now that 4.1 is fixed (in a few minutes, exactly)
into sanja.is.com.ua:/home/bell/mysql/bk/work-ndb-4.1
mysql-test/r/subselect.result:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_union.cc:
Auto merged
sql/sql_update.cc:
Auto merged
SQL_SELECT_LIMIT as default will be applied only for SELECT statement if there was not explicit LIMIT clause
correct table list passed to class constructor of select_update
mysql-test/r/subselect.result:
do not show limit if it is not explicit
mysql-test/r/union.result:
test of LIMIT + ORDER
mysql-test/t/union.test:
test of LIMIT + ORDER
sql/ha_isammrg.h:
caching of queries with isammerge tables forbiden
sql/sql_cache.cc:
removed check on isammerge
sql/sql_lex.cc:
tag of explicit limit in statement
sql/sql_lex.h:
tag of explicit limit in statement
sql/sql_parse.cc:
blanks in empty line removed
no limit by default (SQL_SELECT_LIMIT as default will be applied only for SELECT statement if there was not explicit LIMIT clause)
sql/sql_union.cc:
reverted incorrect patch
sql/sql_update.cc:
reverted incorrect patch
correct table list passed to class constructor
sql/sql_yacc.yy:
explicit LIMIT marked
into mysql.com:/home/my/mysql-4.1
mysql-test/r/subselect.result:
Auto merged
sql/item.cc:
Auto merged
sql/sql_prepare.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_update.cc:
Auto merged
tests/client_test.c:
Auto merged
sql/sql_parse.cc:
Delete Items created during Prepared Stat (memory leak bug)
sql/sql_prepare.cc:
Delete Items created during Prepared Stat (memory leak bug)
We didn't use 'only index' for tables of type 'const'. (Bug #3497)
mysql-test/r/func_str.result:
New testfin
mysql-test/r/key.result:
New test
mysql-test/r/key_primary.result:
Update after "We didn't use 'only index' for tables of type 'const'" fix.
mysql-test/r/null_key.result:
Update after "We didn't use 'only index' for tables of type 'const'" fix.
mysql-test/r/subselect.result:
Update after "We didn't use 'only index' for tables of type 'const'" fix.
mysql-test/t/func_str.test:
Updated bug texts
Added test for conversion of long string value to integer (Bug #3472)
mysql-test/t/key.test:
Test of key read with primary key (Bug #3497)
sql/item.cc:
Added assert
sql/sql_base.cc:
Fixed crashing bug with alter table when table was in use (Bug #3643)
sql/sql_load.cc:
Indentation fixes
sql/sql_select.cc:
We didn't use 'only index' for tables of type 'const'. (Bug #3497)
(Bug #3596)
innobase/srv/srv0srv.c:
Truncate "<datadir>/innodb.status.<pid>" to its actual size (Bug #3596)
sql/ha_innodb.cc:
Truncate "<datadir>/innodb.status.<pid>" to its actual size (Bug #3596)
sql/ha_ndbcluster.h:
fixed layout
prohibit using query cache with ndb tables
sql/handler.h:
new caching type
sql/sql_cache.cc:
support of new caching type (caching prohibited)
"mysql_send_long_data() API call is completely broken".
Now we are resetting some members (long_data_supplied/null_value...) of Item_param to its
initial state after each execution of prepared statement. We also manipulating
Item_param::maybe_null/null_value only via Item_param::set_* setters which makes code a bit
more robust.
sql/item.cc:
Now we are assuming that Item_param may be NULL until we know this fact exactly.
Added non-empty implementation of Item_param::reset() method which should be used
for restoring Item_param state after each statment execution. (We need to clear
long_data_supplied flag, we also clear some other Item_param members here since it
makes code simpler.)
sql/item.h:
Now Item_param::reset() method really does something.
sql/sql_prepare.cc:
Now we are calling Item_param::reset() for each parameter after execution for resetting Item_param
to initial state. So we no longer don't need Prepared_statement::long_data_flag. We also
set Item_param::null_value/maybe_null value in Item_param::set_* and reset() methods
instead of doing it explicitly in insert_params_* functions (this by the way lowers
probability that we will forget to update one of such functions).
tests/client_test.c:
Added test for Bug#1664 "mysql_send_long_data() API call is broken".
just for beauty of truth.
sql/mysqld.cc:
correcting sentence (even if option is not really usable,
as it depends on report-user and report-password which are undocumented
(and will stay like this)).
sql/slave.cc:
report password when you must report password.
in hard-coded replication messages, always put small-length info (error codes, explanation of the error) at the beginning,
so that it is not cut by truncation if the query is very long (which happens if the query goes first).
sql/log_event.cc:
in hard-coded replication messages, always put small-length info (error codes, explanation of the error) at the beginning,
so that it is not cut by truncation if the query is very long (which happens if the query goes first).