myisam/mi_checksum.c:
workaround for zlib's crc32 glitch
mysql-test/r/show_check.result:
results updated
mysys/checksum.c:
switching to crc32 as a checksum algorithm
moved them all from different places to item_strfunc.{h,cc}
checksum table command
Com_xxx status variables updated
sql/item_create.cc:
fixed a crash on COMPRESS() and other zlib-dependent functions when compiled w/o zlib
moved them all from different places to item_strfunc.{h,cc}
sql/item_func.cc:
fixed a crash on COMPRESS() and other zlib-dependent functions when compiled w/o zlib
moved them all from different places to item_strfunc.{h,cc}
sql/item_func.h:
fixed a crash on COMPRESS() and other zlib-dependent functions when compiled w/o zlib
moved them all from different places to item_strfunc.{h,cc}
sql/item_geofunc.h:
fixed a crash on COMPRESS() and other zlib-dependent functions when compiled w/o zlib
moved them all from different places to item_strfunc.{h,cc}
sql/item_strfunc.cc:
fixed a crash on COMPRESS() and other zlib-dependent functions when compiled w/o zlib
moved them all from different places to item_strfunc.{h,cc}
sql/item_strfunc.h:
fixed a crash on COMPRESS() and other zlib-dependent functions when compiled w/o zlib
moved them all from different places to item_strfunc.{h,cc}
sql/mysql_priv.h:
checksum table command
sql/mysqld.cc:
Com_xxx updated
sql/sql_lex.h:
checksum table command
sql/sql_parse.cc:
checksum table command
sql/sql_table.cc:
checksum table command
sql/sql_yacc.yy:
checksum table command
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
configure.in:
./configure now tests if gmtime_r is present
include/config-os2.h:
Supposing that OS/2 have gmtime_r
include/my_pthread.h:
Use our imeplementation of gmtime_r if system lacks one
mysql-test/r/func_time.result:
Added UTC_* functions to test
mysql-test/t/func_time.test:
Added UTC_* functions to test
mysys/my_pthread.c:
Our implementation of gmtime_r
mysys/my_thr_init.c:
Now we also need LOCK_locktime_r if gmtime_r is absent
sql/item_timefunc.cc:
Generalized classes for CURDATE, CURTIME and NOW, abstracted them from
timezone. Added new children classes for implementing these and UTC_*
functions.
sql/item_timefunc.h:
Generalized classes for CURDATE, CURTIME and NOW, abstracted them from
timezone. Added new children classes for implementing these and UTC_*
functions.
sql/lex.h:
Added tokens for UTC_TIME, UTC_DATE and UTC_TIMESTAMP
sql/sql_yacc.yy:
Added UTC_* functions to grammar. Current functions are using
classes now.
The above query created a field of koi8r charset, not cp1251
Change:
CREATE TABLE a (a CHAR(1) CHARACTER SET utf8)
Length now means character length, not byte length.
The above creates a field that guarantees can store a multibyte value
1 character long. For utf8 the above creates a field that can store
3 bytes.
into serg.mylan:/usr/home/serg/Abk/mysql-4.1
sql/ha_myisam.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
mysql-test/r/subselect.result:
test of union unlocking problem
mysql-test/t/subselect.test:
test of union unlocking problem
sql/sql_union.cc:
prohibit unlocking all tables by fake select execution
mysql-test/r/innodb.result:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_derived.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_union.cc:
Auto merged
Code clean-up
sql_union.cc, union.test, union.result:
A fix for a bug #978.
This enables that NULL's can be entered into UNION's result set,
although first SELECT columns are NOT NULL.
This is also a start of fixing UNION's properly regarding type
acceptance.
sql_select.cc:
A commit for my second July SPRINT task
mysql-test/r/union.result:
A fix for a bug #978.
This enables that NULL's can be entered into UNION's result set,
although first SELECT columns are NOT NULL.
This is also a start of fixing UNION's properly regarding type
acceptance.
mysql-test/t/union.test:
A fix for a bug #978.
This enables that NULL's can be entered into UNION's result set,
although first SELECT columns are NOT NULL.
This is also a start of fixing UNION's properly regarding type
acceptance.
sql/sql_select.cc:
Code clean-up
sql/sql_union.cc:
Code clean-up
CREATE TABLE t1 (s1 CHAR(5) COLLATE latin1_german2_ci);
INSERT INTO t1 VALUES ('Ü');
SELECT FIELD('ue',s1) FROM t1;
The above returned 0 in error.
Now 1 is returned.
CREATE TABLE t1 (s1 CHAR(5) CHARACTER SET latin1 COLLATE latin1_german2_ci);
INSERT INTO t1 VALUES ('Ü');
INSERT INTO t1 VALUES ('ue');
SELECT DISTINCT s1 FROM t1;
The above returned two rows in error.
Now it returns one row, in latin1_german2_ci: Ü == ue
produced an error. This led to server crash in some cases, e.g.:
create table t7 (s1 char);
select * from t7
where concat(s1 collate latin1_general_ci,s1 collate latin1_swedish_ci)
= 'AA';
sql/item.cc:
Auto merged
sql/item_subselect.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
mysql-test/r/subselect.result:
merge
fixed test
mysql-test/t/subselect.test:
merge
fixed test
by MAX/MIN in some cases:
SELECT coercibility(max(s1)) from t1;
Subselect collation and derivation was not processed
correctly:
create table a select (select s1 from t1);
select * from t1 where s1 = (select s2 from t1);
(fixed BUG#943)
mysql-test/r/subselect.result:
test for bug 943
mysql-test/t/subselect.test:
test for bug 943
sql/item.cc:
bool field changed with enum
prevented finding references in item_list for non-SELECT st_select_lex
sql/sql_lex.cc:
bool field changed with enum
sql/sql_lex.h:
bool field changed with enum
sql/sql_parse.cc:
all subqueries and UNION parts marked as SELECT
sql/sql_yacc.yy:
bool field changed with enum
PRIMARY SELECT command st_select_lex marked as SELECT
removerd unused loop_id
mysql-test/r/subselect.result:
test of BUG#922
mysql-test/t/subselect.test:
test of BUG#922
sql/item.cc:
removerd unused loop_id
we need count HAVING clause elements, because agregate function can be present in it
sql/item.h:
removerd unused loop_id
sql/item_subselect.cc:
new name of field
sql/sql_derived.cc:
new name of field
sql/sql_lex.cc:
new name of field
sql/sql_lex.h:
new name of field
sql/sql_select.cc:
new name of field
sql/sql_union.cc:
new name of field
mysql-test/r/query_cache.result:
fixed charecter sets
new case sensetive test
mysql-test/t/query_cache.test:
fixed charecter sets
new case sensetive test
sql/sql_cache.cc:
query & table comparision should be case insensitive
The latter is misleading because differs from the syntax used for GRANT/REVOKE.
Fix up test result affected by error message edits.
mysql-test/r/grant_cache.result:
Fix up test result to match error message edit.
sql/share/czech/errmsg.txt:
Print user@host in syntax actually used for GRANT/REVOKE.
sql/share/danish/errmsg.txt:
Print user@host in syntax actually used for GRANT/REVOKE.
sql/share/dutch/errmsg.txt:
Print user@host in syntax actually used for GRANT/REVOKE.
sql/share/english/errmsg.txt:
Print user@host in syntax actually used for GRANT/REVOKE.
sql/share/estonian/errmsg.txt:
Print user@host in syntax actually used for GRANT/REVOKE.
sql/share/french/errmsg.txt:
Print user@host in syntax actually used for GRANT/REVOKE.
sql/share/german/errmsg.txt:
Print user@host in syntax actually used for GRANT/REVOKE.
sql/share/greek/errmsg.txt:
Print user@host in syntax actually used for GRANT/REVOKE.
sql/share/hungarian/errmsg.txt:
Print user@host in syntax actually used for GRANT/REVOKE.
sql/share/italian/errmsg.txt:
Print user@host in syntax actually used for GRANT/REVOKE.
sql/share/japanese/errmsg.txt:
Print user@host in syntax actually used for GRANT/REVOKE.
sql/share/korean/errmsg.txt:
Print user@host in syntax actually used for GRANT/REVOKE.
sql/share/norwegian-ny/errmsg.txt:
Print user@host in syntax actually used for GRANT/REVOKE.
sql/share/norwegian/errmsg.txt:
Print user@host in syntax actually used for GRANT/REVOKE.
sql/share/polish/errmsg.txt:
Print user@host in syntax actually used for GRANT/REVOKE.
sql/share/portuguese/errmsg.txt:
Print user@host in syntax actually used for GRANT/REVOKE.
sql/share/romanian/errmsg.txt:
Print user@host in syntax actually used for GRANT/REVOKE.
sql/share/russian/errmsg.txt:
Print user@host in syntax actually used for GRANT/REVOKE.
sql/share/serbian/errmsg.txt:
Print user@host in syntax actually used for GRANT/REVOKE.
sql/share/slovak/errmsg.txt:
Print user@host in syntax actually used for GRANT/REVOKE.
sql/share/spanish/errmsg.txt:
Print user@host in syntax actually used for GRANT/REVOKE.
sql/share/swedish/errmsg.txt:
Print user@host in syntax actually used for GRANT/REVOKE.
sql/share/ukrainian/errmsg.txt:
Print user@host in syntax actually used for GRANT/REVOKE.