fixed number of rows of external field reported to optimizer
added check of choosen key (checked left expression tag)
(SCRUM fix for simple IN optimisation)
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
Unfortunately the returned value of "hostname" is inconsistent on
various platforms - some return the host name only, others return the
FQDN by default. On Linux, one can use option "-f" to enable the output
of the FQDN. Use it, if available.
- Fixed BUG#959 (libmysqld not being compiled properly)
- Fixed BUG#998 (RPM build errors): added missing files to the
distribution (mysql_fix_extensions, mysql_tableinfo, mysqldumpslow,
mysql_fix_privilege_tables.1), removed "-n" from %install section.
my_checksum() mysys function
NISAM checksum code moved from mysys to isam/ - it's obsolete
MyISAM checksum code moved to mysys
table's checksum accessible from sql layer
SHOW TABLE STATUS shows checksum (WL#646)
code cleanup
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';
- Bug #985: "Between RESET SLAVE and START SLAVE, SHOW SLAVE STATUS is wrong."
Now RESET SLAVE puts correct info in mi->host etc. A new test rpl_reset_slave
for that.
- Bug #986: "CHANGE MASTER & START SLAVE do not reset error columns in SHOW
SLAVE STATUS". Now these reset the errors.
replicate-*-table rules which exclude 'mysql' tables
(e.g. replicate-wild-ignore-table=mysql.%).
This was already the behaviour for GRANT/REVOKE, I'm extending it to
SET PASSWORD because it seems very logical (the contrary seems illogical).
2 new tests:
- one to test if GRANT and SET PASSWORD are replicated
- one to test if they are not replicated if replicate-wild-ignore-table=mysql.%
The 2nd is also a testcase for BUG#980.
the bug with 3.23.
ChangeSet@1.1416.113.1, 2003-03-22 15:22:59+01:00, guilhem@mysql.com
Fix for #178 Replicating INSERT VALUES(USER()) crashes (SEGV) the slave
Now it does not SEGV, but USER() is still badly replicated
(it is replicated to ""), which is a lower priority bug.