Moved all range checks for TIMESTAMP value to my_gmt_sec().
Also fixed check of upper boundary of TIMESTAMP range (which
also now will catch datetime values which are too small for
TIMESTAMP in case if time_t is unsigned).
values for TIMESTAMP columns. The solution is not perfect since
we just silently ignoring default value for first TIMESTAMP
column and properly reflecting this fact in SHOW CREATE TABLE.
We can't give a warning or simply support standard syntax
(niladic functions as legal value for default) for first field
since it is 4.0 tree.
mysql-test/r/type_timestamp.result:
Added test for bugs #1885, #2464, #2539
(proper support of default values for TIMESTAMP columns)
mysql-test/t/type_timestamp.test:
Added test for bugs #1885, #2464, #2539
(proper support of default values for TIMESTAMP columns)
sql/field.cc:
Enabled copying of defaults for TIMESTAMP fields when we are
creating table with CREATE TABLE x (SELECT ...)
sql/field.h:
Set proper DEFAULT value for non-first TIMESTAMP column.
sql/sql_parse.cc:
Allowed default values for TIMESTAMP column.
sql/sql_show.cc:
Enabled printing of default values in SHOW CREATE TABLE and
SHOW COLUMNS for all TIMESTAMP columns except first one.
values for TIMESTAMP columns. The solution is not perfect since
we just silently ignoring default value for first TIMESTAMP
column and properly reflecting this fact in SHOW CREATE TABLE.
We can't give a warning or simply support standard syntax
(niladic functions as legal value for default) for first field
since it is 4.0 tree.
sql/field.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/sql_table.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
sql/table.cc:
Auto merged
include/mysqld_error.h:
merging
sql/share/english/errmsg.txt:
merging
client/mysqldump.c:
Auto merged
client/mysqltest.c:
Auto merged
include/my_global.h:
Auto merged
libmysqld/lib_sql.cc:
Auto merged
mysql-test/r/warnings.result:
Auto merged
mysql-test/t/type_enum.test:
Auto merged
sql/field.cc:
Auto merged
sql/lex.h:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/set_var.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_show.cc:
Auto merged
sql/sql_table.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
sql/table.cc:
Auto merged
Cleaned up embedded library access and query cache handling
Changed min stack size to 128K (to allow longer MyISAM keys)
Fixed wrong priority for XOR (should be less than NEG to get -1^1 to work)
client/mysqldump.c:
Fixed bugs found after merge
include/mysql_embed.h:
Disable query cache when using embedded version
myisam/mi_check.c:
Removed not used variable
mysql-test/r/auto_increment.result:
Fixed bugs found after merge
mysql-test/r/bdb.result:
Fixed bugs found after merge
mysql-test/r/func_group.result:
Fixed bugs found after merge
mysql-test/r/func_str.result:
Fixed bugs found after merge
mysql-test/r/func_time.result:
Fixed bugs found after merge
mysql-test/r/group_by.result:
Fixed bugs found after merge
mysql-test/r/innodb.result:
Fixed bugs found after merge
mysql-test/r/insert.result:
Fixed bugs found after merge
mysql-test/r/join_outer.result:
Fixed bugs found after merge
mysql-test/r/loaddata.result:
Fixed bugs found after merge
mysql-test/r/multi_update.result:
Fixed bugs found after merge
mysql-test/r/mysqldump.result:
Update results
mysql-test/r/rpl_EE_error.result:
Fixed bugs found after merge
mysql-test/r/rpl_multi_update.result:
Fixed bugs found after merge
mysql-test/r/symlink.result:
Update results
mysql-test/r/type_blob.result:
Update results
mysql-test/r/type_datetime.result:
Update results
mysql-test/r/type_decimal.result:
Update results
mysql-test/r/type_enum.result:
Fixed bugs found after merge
mysql-test/r/type_timestamp.result:
Update results
mysql-test/r/union.result:
Update results
mysql-test/r/warnings.result:
Update results
mysql-test/t/bdb.test:
Fix test for 4.1
mysql-test/t/innodb.test:
Fix test for 4.1
mysql-test/t/multi_update.test:
Fix test for 4.1
mysql-test/t/mysqldump.test:
Fix test for 4.1
mysql-test/t/rpl_EE_error.test:
Fix test for 4.1
mysql-test/t/rpl_multi_update.test:
Fix test for 4.1
mysql-test/t/union.test:
Cleanup
mysys/charset.c:
Check results from my_once_alloc()
mysys/my_handler.c:
part of 4.0 merge
sql-common/client.c:
Part of 4.0 merge
sql/field.cc:
After merge fixes
sql/field.h:
After merge fixes
sql/ha_innodb.cc:
Remove duplicate include files
sql/item.cc:
Changed automatic int conversion to be of type binary
sql/item.h:
After merge fixes
sql/item_func.cc:
Changed automatic int conversion to be of type binary
sql/item_func.h:
After merge fixes
sql/item_strfunc.cc:
Added comments
sql/item_subselect.cc:
Indentation fixes
sql/item_sum.cc:
Changed automatic int conversion to be of type binary
sql/item_sum.h:
After merge fixes
sql/mysql_priv.h:
Cleanup embedded library access checks
sql/mysqld.cc:
Changed min stack size to 128K (to allow longer MyISAM keys)
sql/set_var.cc:
Fixed compiler warnings
sql/share/czech/errmsg.txt:
Better error message
sql/share/danish/errmsg.txt:
Better error message
sql/share/dutch/errmsg.txt:
Better error message
sql/share/english/errmsg.txt:
Better error message
sql/share/estonian/errmsg.txt:
Better error message
sql/share/french/errmsg.txt:
Better error message
sql/share/greek/errmsg.txt:
Better error message
sql/share/hungarian/errmsg.txt:
Better error message
sql/share/italian/errmsg.txt:
Better error message
sql/share/japanese/errmsg.txt:
Better error message
sql/share/korean/errmsg.txt:
Better error message
sql/share/norwegian-ny/errmsg.txt:
Better error message
sql/share/norwegian/errmsg.txt:
Better error message
sql/share/polish/errmsg.txt:
Better error message
sql/share/romanian/errmsg.txt:
Better error message
sql/share/russian/errmsg.txt:
Better error message
sql/share/serbian/errmsg.txt:
Better error message
sql/share/slovak/errmsg.txt:
Better error message
sql/share/spanish/errmsg.txt:
Better error message
sql/share/swedish/errmsg.txt:
Better error message
sql/share/ukrainian/errmsg.txt:
Better error message
sql/sql_acl.h:
Cleaned up embedded library acccess checks
sql/sql_base.cc:
After merge fixes
sql/sql_client.cc:
After merge fixes
sql/sql_parse.cc:
After merge fixes
Changed access check code for embedded library (needed to make code shorter and ensure that check_table_access() is called)
Recoded create-table handling for CREATE TABLE ... SELECT to make code shorter and faster
sql/sql_prepare.cc:
Add missing arguments
sql/sql_select.cc:
After merge fixes
sql/sql_update.cc:
After merge fixes
sql/sql_yacc.yy:
Fixed wrong priority for XOR (should be less than NEG to get -1^1 to work)
sql/table.cc:
After merge fixes
Cleaned up embedded library access and query cache handling
Changed min stack size to 128K (to allow longer MyISAM keys)
Fixed wrong priority for XOR (should be less than NEG to get -1^1 to work)
BitKeeper/etc/logging_ok:
auto-union
Build-tools/Do-compile:
Auto merged
acinclude.m4:
Auto merged
configure.in:
Auto merged
dbug/dbug.c:
Auto merged
include/config-win.h:
Auto merged
include/my_base.h:
Auto merged
include/my_global.h:
Auto merged
include/my_pthread.h:
Auto merged
include/my_sys.h:
Auto merged
include/mysql.h:
Auto merged
include/mysql_com.h:
Auto merged
innobase/lock/lock0lock.c:
Auto merged
innobase/row/row0ins.c:
Auto merged
innobase/row/row0sel.c:
Auto merged
innobase/row/row0umod.c:
Auto merged
innobase/row/row0upd.c:
Auto merged
myisam/ft_boolean_search.c:
Auto merged
myisam/mi_check.c:
Auto merged
myisam/mi_dbug.c:
Auto merged
myisam/mi_open.c:
Auto merged
mysql-test/r/auto_increment.result:
Auto merged
mysql-test/r/bdb.result:
Auto merged
mysql-test/r/func_op.result:
Auto merged
Build-tools/Bootstrap:
Merge with 4.0
client/mysql.cc:
Merge with 4.0
client/mysqldump.c:
Merge with 4.0
client/mysqltest.c:
Use local version
innobase/btr/btr0cur.c:
Merge with 4.0 (Heikki should check if we should remove btr_cur_update_sec_rec_in_place()
libmysql/libmysql.c:
Merge with 4.0
libmysqld/lib_sql.cc:
Merge with 4.0
myisam/mi_key.c:
Merge with 4.0
myisam/mi_search.c:
Merge with 4.0
mysql-test/r/binary.result:
Merge with 4.0
mysql-test/r/func_group.result:
Merge with 4.0
mysql-test/r/func_str.result:
Merge with 4.0
mysql-test/r/func_time.result:
Merge with 4.0
mysql-test/r/group_by.result:
Merge with 4.0
mysql-test/r/handler.result:
Merge with 4.0
mysql-test/r/innodb.result:
Merge with 4.0
mysql-test/r/insert.result:
Merge with 4.0
mysql-test/r/join_outer.result:
Merge with 4.0
mysql-test/r/loaddata.result:
Merge with 4.0
mysql-test/r/lowercase_table.result:
Merge with 4.0
mysql-test/r/multi_update.result:
Merge with 4.0
mysql-test/r/mysqldump.result:
Merge with 4.0
mysql-test/r/query_cache.result:
Merge with 4.0
mysql-test/r/rpl_max_relay_size.result:
Merge with 4.0
mysql-test/r/rpl_rotate_logs.result:
Merge with 4.0
mysql-test/r/rpl_trunc_binlog.result:
Merge with 4.0
mysql-test/r/select_found.result:
Merge with 4.0
mysql-test/r/symlink.result:
Merge with 4.0
mysql-test/r/truncate.result:
Merge with 4.0
mysql-test/r/type_blob.result:
Merge with 4.0
mysql-test/r/type_datetime.result:
Merge with 4.0
mysql-test/r/type_decimal.result:
Merge with 4.0
mysql-test/r/type_enum.result:
Merge with 4.0
mysql-test/r/type_timestamp.result:
Merge with 4.0
mysql-test/r/union.result:
Merge with 4.0
mysql-test/t/auto_increment.test:
Merge with 4.0
mysql-test/t/bdb.test:
Merge with 4.0
mysql-test/t/func_group.test:
Merge with 4.0
mysql-test/t/func_op.test:
Merge with 4.0
mysql-test/t/func_str.test:
Merge with 4.0
mysql-test/t/func_time.test:
Merge with 4.0
mysql-test/t/group_by.test:
Merge with 4.0
mysql-test/t/handler.test:
Merge with 4.0
mysql-test/t/innodb.test:
Merge with 4.0
mysql-test/t/insert.test:
Merge with 4.0
mysql-test/t/join_outer.test:
Merge with 4.0
mysql-test/t/limit.test:
Merge with 4.0
mysql-test/t/loaddata.test:
Merge with 4.0
mysql-test/t/lowercase_table.test:
Merge with 4.0
mysql-test/t/multi_update.test:
Merge with 4.0
mysql-test/t/mysqldump.test:
Merge with 4.0
mysql-test/t/query_cache.test:
Merge with 4.0
mysql-test/t/rpl_log_pos.test:
Merge with 4.0
mysql-test/t/rpl_max_relay_size.test:
Merge with 4.0
mysql-test/t/rpl_rotate_logs.test:
Merge with 4.0
mysql-test/t/rpl_trunc_binlog.test:
Merge with 4.0
mysql-test/t/select_found.test:
Merge with 4.0
mysql-test/t/symlink.test:
Merge with 4.0
mysql-test/t/truncate.test:
Merge with 4.0
mysql-test/t/type_blob.test:
Merge with 4.0
mysql-test/t/type_datetime.test:
Merge with 4.0
mysql-test/t/type_decimal.test:
Merge with 4.0
mysql-test/t/type_enum.test:
Merge with 4.0
mysql-test/t/type_timestamp.test:
Merge with 4.0
mysql-test/t/union.test:
Merge with 4.0
mysys/charset.c:
Merge with 4.0
mysys/my_init.c:
Merge with 4.0
mysys/my_symlink.c:
Merge with 4.0
mysys/my_thr_init.c:
Merge with 4.0
regex/reginit.c:
Merge with 4.0
sql/field.cc:
Change fix_datetime() to print errors
sql/field.h:
Merge with 4.0
sql/ha_innodb.cc:
Merge with 4.0
sql/item.cc:
Merge with 4.0
sql/item.h:
Merge with 4.0
sql/item_cmpfunc.cc:
Merge with 4.0
sql/item_func.cc:
Merge with 4.0
sql/item_func.h:
Merge with 4.0
sql/item_strfunc.cc:
Merge with 4.0
sql/item_strfunc.h:
Merge with 4.0
sql/item_sum.cc:
Merge with 4.0
sql/item_sum.h:
Merge with 4.0
sql/item_timefunc.cc:
Merge with 4.0
sql/lex.h:
Merge with 4.0
sql/log.cc:
Merge with 4.0
sql/log_event.cc:
Merge with 4.0
sql/log_event.h:
Merge with 4.0
sql/mysql_priv.h:
Merge with 4.0
sql/mysqld.cc:
Merge with 4.0
sql/nt_servc.cc:
Merge with 4.0
sql/opt_range.cc:
Merge with 4.0
sql/records.cc:
Merge with 4.0
sql/repl_failsafe.cc:
Merge with 4.0
sql/slave.cc:
Merge with 4.0
sql/sql_acl.cc:
Merge with 4.0
sql/sql_analyse.cc:
Merge with 4.0
sql/sql_base.cc:
Merge with 4.0
sql/sql_cache.cc:
Merge with 4.0
sql/sql_class.h:
Merge with 4.0
sql/sql_db.cc:
Merge with 4.0
sql/sql_delete.cc:
Merge with 4.0
sql/sql_insert.cc:
Merge with 4.0
sql/sql_load.cc:
Merge with 4.0
sql/sql_parse.cc:
Merge with 4.0
sql/sql_rename.cc:
Merge with 4.0
sql/sql_select.cc:
Merge with 4.0
sql/sql_show.cc:
Merge with 4.0
sql/sql_table.cc:
Merge with 4.0
sql/sql_update.cc:
Merge with 4.0
sql/sql_yacc.yy:
Merge with 4.0
sql/table.cc:
Merge with 4.0
sql/table.h:
Merge with 4.0
sql/time.cc:
Merge with 4.0
sql/uniques.cc:
Merge with 4.0
strings/ctype-tis620.c:
Merge with 4.0
strings/strto.c:
Merge with 4.0
support-files/mysql.server.sh:
Merge with 4.0
support-files/mysql.spec.sh:
Merge with 4.0
note: bar asked me to use res.charset in ::sql_type() functions to be more consistent.
mysql-test/r/type_enum.result:
proper fix for the bug #2077: accented characters in enum/defaul values are reported incorrectly
mysql-test/t/type_enum.test:
proper fix for the bug #2077: accented characters in enum/defaul values are reported incorrectly
sql/field.cc:
proper fix for the bug #2077: accented characters in enum/defaul values are reported incorrectly
sql/sql_show.cc:
proper fix for the bug #2077: accented characters in enum/defaul values are reported incorrectly
sql/table.cc:
proper fix for the bug #2077: accented characters in enum/defaul values are reported incorrectly
libmysqld/lib_sql.cc:
Fixed compilation error in embedded library (from last pull)
sql/field.cc:
Safer timestamp year checking (as 1969 can be in timestamp)
if we failed to classify integer as datetime
in Field_datetime::store().
Stylistic clean-ups.
sql/field.cc:
Fix undeterministic behaviour of year check
if we failed to classify integer as datetime
Stylistic clean-ups.
about it". Now numbers representing illegal timestamps are
converted to 0 value if they are stored as timestamp or
datetime. This behaviour is consistent with manual and with
behaviour of string -> timestamp conversion.
mysql-test/r/type_datetime.result:
Added test if ranges are checked during
integer, string -> timestamp conversion
mysql-test/r/type_timestamp.result:
Added test if ranges are checked during
integer, string -> datetime conversion
mysql-test/t/type_datetime.test:
Added test if ranges are checked during
integer, string -> datetime conversion
mysql-test/t/type_timestamp.test:
Added test if ranges are checked during
integer, string -> timestamp conversion
sql/field.cc:
Checks of month, day, hour, minute and second ranges were added
to storing of integer into Field_datetime and Field_timestamp
and so for integer -> datetime, timestamp conversion.
about it". Now numbers representing illegal timestamps are
converted to 0 value if they are stored as timestamp or
datetime. This behaviour is consistent with manual and with
behaviour of string -> timestamp conversion.
It was a forgotten ltime->neg=0 (neg was the only forgotten variable).
I scanned field.cc for other places where we would forget to set neg, found none.
A test for the bug.
mysql-test/r/date_formats.result:
result update
mysql-test/t/date_formats.test:
a test for BUG#1960 "date_format() returns spurious '-' for valid dates"
sql/field.cc:
When preparing ltime from the 3-byte date, don't forget to set ltime->neg to 0
(otherwise it remains unitialized).
Dates are not allowed to be negative (only times can be, when they mean a time interval),
so it's ok to always set neg to 0.
It was a forgotten ltime->neg=0 (neg was the only forgotten variable).
I scanned field.cc for other places where we would forget to set neg, found none.
A test for the bug.
mysql-test/r/union.result:
new tests, more correct results for old one
mysql-test/t/union.test:
new tests, more correct results for old one
sql/field.cc:
new way to make field types csting
sql/field.h:
new way to make field types csting
sql/item.cc:
new way to make field types csting
sql/sql_derived.cc:
fixed typo
sql/sql_lex.h:
comment added
Fixed compiler warnings (IRIX C compiler and VC++)
VC++Files/client/mysqlclient.dsp:
Add missing file to project
VC++Files/libmysql/libmysql.dsp:
Add missing file to project
VC++Files/myisam/myisam.dsp:
Add missing file to project
VC++Files/mysys/mysys.dsp:
Add missing file to project
heap/hp_test1.c:
Fixed wrong call to heap_rkey()
heap/hp_test2.c:
Fixed wrong call to heap_rkey()
include/hash.h:
Move not used (internal) struct to hash.c
include/my_pthread.h:
Made some structs 'const char*' to avoid warnings
include/my_sys.h:
Moved key cache structs and functions to keycache.h
include/myisam.h:
Merge key cache structures to one
include/mysql.h:
Remove STDCALL from internal functions
include/sql_common.h:
Remove STDCALL from internal functions
include/violite.h:
Fixed compiler warning
isam/_locking.c:
Merge key cache structures to one
isam/_page.c:
Merge key cache structures to one
isam/close.c:
Merge key cache structures to one
isam/extra.c:
Merge key cache structures to one
isam/isamchk.c:
Merge key cache structures to one
isam/isamdef.h:
Merge key cache structures to one
isam/isamlog.c:
Merge key cache structures to one
isam/panic.c:
Merge key cache structures to one
isam/test2.c:
Merge key cache structures to one
isam/test3.c:
Merge key cache structures to one
libmysql/client_settings.h:
Remove STDCALL from internal functions
libmysql/libmysql.c:
Remove STDCALL from internal functions
myisam/ft_boolean_search.c:
Fixed compiler warning
myisam/ft_dump.c:
Fixed compiler warnings (%qx is not portable)
myisam/ft_update.c:
Fixed compiler warnings
myisam/mi_check.c:
Merge key cache structures to one
myisam/mi_close.c:
Merge key cache structures to one
myisam/mi_delete_all.c:
Merge key cache structures to one
myisam/mi_extra.c:
Merge key cache structures to one
myisam/mi_keycache.c:
Merge key cache structures to one
myisam/mi_locking.c:
Merge key cache structures to one
myisam/mi_page.c:
Merge key cache structures to one
myisam/mi_panic.c:
Merge key cache structures to one
myisam/mi_preload.c:
Merge key cache structures to one
myisam/mi_test1.c:
Merge key cache structures to one
myisam/mi_test2.c:
Merge key cache structures to one
myisam/mi_test3.c:
Merge key cache structures to one
myisam/myisamchk.c:
Merge key cache structures to one
myisam/myisamdef.h:
Merge key cache structures to one
myisam/myisamlog.c:
Merge key cache structures to one
Removed not used option
myisam/sort.c:
Fixed compiler warnings
myisam/sp_test.c:
Fixed compiler warnings
mysql-test/r/case.result:
Updated results after fix of correct NULL detection in WHEN
mysql-test/r/date_formats.result:
Updated results after fixing date handling
mysql-test/r/symlink.result:
Updated results after adding DEFAULT CHARSET
mysql-test/t/case.test:
New test
mysql-test/t/symlink.test:
Updated error numbers
mysys/hash.c:
Made HASH_LINK struct local
mysys/mf_keycache.c:
Merge key cache structures to one
Fixed key_cache_read() and key_cache_write() to be resize-safe.
mysys/mf_keycaches.c:
Merge key cache structures to one
mysys/thr_mutex.c:
Added test if mutex is initalized
sql-common/client.c:
Remove STDCALL from internal functions
sql/derror.cc:
Added comment
sql/field.cc:
Removed not used variables
sql/ha_innodb.cc:
Fixed compiler warnings (removed not used variables)
sql/ha_myisam.cc:
Merge key cache structures to one
sql/ha_myisammrg.cc:
Removed not used variables
sql/handler.cc:
Merge key cache structures to one
sql/handler.h:
Merge key cache structures to one
sql/item.cc:
Fixed compiler warning
sql/item_cmpfunc.cc:
Remove not used variables
sql/item_func.cc:
Remove not used variables
sql/item_strfunc.cc:
Removed not used variables
sql/item_sum.cc:
Removed not used variables
Moved setting of item_thd to fix_fields()
sql/item_timefunc.cc:
Removed not used variables
sql/mysql_priv.h:
Merge key cache structures to one
sql/mysqld.cc:
Merge key cache structures to one
init_thread_environment() is not called before mysql_init_variables(). This fixes a case where a mutex was not initialized before it was used
sql/opt_sum.cc:
Remove not used variables
sql/protocol.cc:
Don't send errors after ok has been sent
sql/protocol_cursor.cc:
Remove not used variable
Simple optimization
sql/repl_failsafe.cc:
Remove not used variables
sql/set_var.cc:
Merge key cache structures to one
sql/set_var.h:
Merge key cache structures to one
sql/sql_acl.cc:
Remove not used variables
sql/sql_base.cc:
Remove not used function
sql/sql_db.cc:
Remove not used variables
sql/sql_handler.cc:
Remove not used variables
sql/sql_insert.cc:
More DBUG statements
Simple code cleanup
sql/sql_lex.cc:
Remove not used variables
sql/sql_parse.cc:
Remove not used variables
sql/sql_prepare.cc:
Remove not used variables
sql/sql_repl.cc:
Remove not used variables
sql/sql_select.cc:
Remove not used variables
sql/sql_show.cc:
Remove not used variables
sql/sql_table.cc:
Merge key cache structures to one
Removed not used variables
sql/sql_test.cc:
Merge key cache structures to one
sql/strfunc.cc:
Fixed that find_type() returns correct value for partly matched words.
(This fixed the error found by date_formats.test)
sql/time.cc:
Remove not used variables
strings/my_strtoll10.c:
Fixed compiler warnings