Commit graph

2139 commits

Author SHA1 Message Date
unknown
9b16dd8962 fixed union unlocking problem (BUG#906)
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
2003-08-09 14:39:54 +03:00
unknown
0188e158c1 Merge oak.local:/home/kostja/mysql/mysql-4.1-root
into oak.local:/home/kostja/mysql/mysql-4.1
2003-08-07 22:19:42 +04:00
unknown
6db21de014 Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mashka.mysql.fi:/home/my/mysql-4.0


sql/slave.cc:
  Auto merged
sql/slave.h:
  Auto merged
sql/sql_acl.cc:
  Auto merged
2003-08-07 20:18:51 +03:00
unknown
fa1613be0a Review of changesets since last pull.
(Mostly code cleanups)


include/my_sys.h:
  Removed not used define
myisam/mi_check.c:
  Indentation change
mysql-test/t/rpl_insert_id.test:
  Add test if server supports innodb
mysys/mf_format.c:
  Remove QUOTE handling from fn_format()
  (fn_format() should not have anything to do with quoting things)
sql/log_event.cc:
  Removed some unnecessary casts (by changing functions to use const char *)
  Cleaned up some error messages to make them shorter and (hopefully) more readable.
  Fixed wrong format strings
  Restored 'thd->options' on error.
sql/mini_client.cc:
  Changed order of include files to remove compilation warning
sql/mysqld.cc:
  Add proper quoting of service arguments (don't use fn_format)
sql/slave.cc:
  Simple optimization and cleanup.
  Changed rewrite_db() and print_slave_db_safe() to use const char* to avoid casting of arguments when calling functions.
  Cleanup of some error messages.
sql/slave.h:
  Changed protypes to use const char *
sql/sql_acl.cc:
  Simple optimization
vio/viosslfactories.c:
  Changed order of include files to remove compilation warning
2003-08-07 20:16:37 +03:00
unknown
66ce8a88af Merge oak.local:/home/kostja/mysql/mysql-4.1-root
into oak.local:/home/kostja/mysql/mysql-4.1


BitKeeper/etc/logging_ok:
  auto-union
sql/item_strfunc.cc:
  Auto merged
sql/item_strfunc.h:
  Auto merged
sql/set_var.h:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
2003-08-07 13:29:25 +04:00
unknown
57e31f158b fixed bug in used_tables() report of left expression of IN subquery
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)


mysql-test/r/subselect.result:
  new EXPLAIN results ufter fixing used_tables() of Item_cache
sql/item_cmpfunc.cc:
  fixed used_tables asignment
sql/item_subselect.cc:
  added left expression referenca tag
sql/item_subselect.h:
  fixed layout
sql/mysql_priv.h:
  left expression reference tag
sql/mysqld.cc:
  left expression reference tag
sql/sql_select.cc:
  checked left expression reference tag
  fixed number of rows in outer reference (it should be constant)
2003-08-07 11:16:02 +03:00
unknown
6496a0dd14 merge
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
2003-08-06 18:59:26 +03:00
unknown
b5e8569674 sql_union.cc, sql_select.cc:
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
2003-08-06 18:48:34 +03:00
unknown
e50930d36c Bug #792 combination of date-interval and between with mixed constant and non-constant 2003-08-06 15:37:22 +02:00
unknown
e4477bcacf Merge oak.local:/home/kostja/mysql/mysql-4.1-root
into oak.local:/home/kostja/mysql/mysql-4.1-count-distinct
2003-08-06 17:25:01 +04:00
unknown
a8cb3628b7 fix for bug #958 and tests for it
aligned with Sergey notes.


sql/records.cc:
  fix for bug #958 - big select with 
  count distinct and group by
  aligned with Sergey notes.
2003-08-06 16:58:03 +04:00
unknown
8edc3dedf9 Merge bk-internal:/home/bk/mysql-4.0/
into serg.mylan:/usr/home/serg/Abk/mysql-4.0
2003-08-05 16:30:22 +02:00
unknown
0f314c9da3 make it clear for optimizer that XOR's are not optimizable at the moment (BUG#992) 2003-08-05 16:29:09 +02:00
unknown
4a8ab8ac56 Merge sanja.is.com.ua:/home/bell/mysql/bk/work-top3-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-simple_in-4.1


mysql-test/r/subselect.result:
  Auto merged
mysql-test/t/subselect.test:
  Auto merged
sql/item_subselect.cc:
  Auto merged
sql/item_sum.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_select.cc:
  Auto merged
2003-08-05 09:58:00 +03:00
unknown
6181294dab merge
sql/item.cc:
  Auto merged
sql/item.h:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/item_sum.cc:
  Auto merged
sql/sql_derived.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_union.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
2003-08-05 09:56:21 +03:00
unknown
970f910d75 Fix:
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.
2003-08-05 11:26:31 +05:00
unknown
fc8b138544 Fix:
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
2003-08-05 11:03:05 +05:00
unknown
691b7584fb fix_fields recoursion didn't stop when some level's fix_length_and_dec
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';
2003-08-05 10:08:16 +05:00
unknown
d8df84aa43 2 bugfixes:
- 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.


mysql-test/r/rpl_loaddata.result:
  result update.
mysql-test/t/rpl_loaddata.test:
  Test that RESET SLAVE, START SLAVE and CHANGE MASTER all reset 
  Last_slave_error and Last_slave_errno (columns of SHOW SLAVE STATUS).
  We do it in this test because that's one of tests which have 
  an intentional query error on the slave.
sql/slave.cc:
  As we need TWICE the code to copy command-line options (--master-host etc)
  to mi (we already had it in init_master_info, but we also need it in RESET
  SLAVE to fix bug#985), I make a function of this code.
  And a function to reset Last_slave_error and Last_slave_errno (we need
  it in CHANGE MASTER, RESET SLAVE, and at the start of the SQL thread).
sql/slave.h:
  declarations for new functions.
sql/sql_repl.cc:
  copy --master-host etc to mi in RESET SLAVE, so that SHOW SLAVE STATUS
  shows correct information.
2003-08-04 10:59:44 +02:00
unknown
3b013646e1 Fix so that SET PASSWORD is not replicated by the slave if running with
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.


sql/sql_acl.cc:
  Fix so that SET PASSWORD is not replicated by the slave if running with
  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).
2003-08-02 23:46:26 +02:00
unknown
b97d0ea2c3 Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-unknown_table-4.1
2003-08-01 19:06:03 +03:00
unknown
e56fcb4221 merge fix 2003-08-01 19:04:35 +03:00
unknown
a98105c5a6 Merge kosipov@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/kostja/mysql/mysql-4.1-root


BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2003-08-01 19:44:27 +04:00
unknown
875a26d50a merge
sql/item.cc:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
2003-08-01 18:24:27 +03:00
unknown
7fc417047d added disable_query_log to fulltext2.test
mysql-test/r/fulltext2.result:
  result updated
mysql-test/t/fulltext2.test:
  test is now more silent
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2003-08-01 18:49:30 +04:00
unknown
c44af18bd5 Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-qc_ci-4.1
2003-08-01 17:32:05 +03:00
unknown
a3e261437a merge
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
2003-08-01 16:51:54 +03:00
unknown
9645695108 Merge bk-internal:/home/bk/mysql-4.0/
into serg.mylan:/usr/home/serg/Abk/mysql-4.0
2003-08-01 14:58:57 +02:00
unknown
4acc45d784 manual merge
BitKeeper/etc/ignore:
  auto-union
BitKeeper/etc/logging_ok:
  auto-union
include/mysql.h:
  Auto merged
include/mysql_com.h:
  Auto merged
libmysql/libmysql.c:
  Auto merged
sql/item_create.cc:
  Auto merged
sql/item_create.h:
  Auto merged
sql/item_strfunc.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/protocol.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/slave.cc:
  Auto merged
sql/slave.h:
  Auto merged
sql/sql_acl.h:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
sql-common/client.c:
  Auto merged
sql/sql_parse.cc:
  merge commit
  convert of database to utf8 in case of cahnge_user added
2003-07-31 17:11:52 +04:00
unknown
687ebba461 bug #942. docid == ftb->lastpos in join on looping over nested table 2003-07-31 13:45:35 +02:00
unknown
4ee94d21f3 Database name and national characters fixes. 2003-07-30 17:51:42 +05:00
unknown
9b9a914c5d support of more then 255 tables dependence in query cache (fixed BUG#930)
mysql-test/r/query_cache.result:
  test of many merged tales
mysql-test/t/query_cache.test:
  test of many merged tales
sql/sql_cache.h:
  query with merged tables can depend of more then 255 tables
2003-07-30 14:59:56 +03:00
unknown
53e4153de1 Derivation attribute was not processed correctly
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);
2003-07-30 14:15:25 +05:00
unknown
f94d0178ca Merge sanja.is.com.ua:/home/bell/mysql/bk/work-top3-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-simple_in-4.1
2003-07-29 20:27:36 +03:00
unknown
29b230355d Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-top3-4.1


sql/item_cmpfunc.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
sql/table.h:
  Auto merged
2003-07-29 20:26:14 +03:00
unknown
668cd9729f prevented finding references in item_list for non-SELECT st_select_lex
(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
2003-07-29 16:59:46 +03:00
unknown
ec1a433f08 Fixed that this sequence didn't produce an error as it should have:
CREATE TABLE t1 (s1 CHAR(5) COLLATE latin1_german1_ci,
                 s2 CHAR(5) COLLATE latin1_swedish_ci);
SELECT * FROM t1 WHERE s1 = s2;
2003-07-29 17:39:39 +05:00
unknown
8d7b54b7c2 A new separate error message: Unknown collation 'blablabla' 2003-07-29 17:12:14 +05:00
unknown
0792c1c824 count HAVING clause elements with select list elements, because agregate function can be present in it (BUG#922)
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
2003-07-29 13:00:32 +03:00
unknown
37ddcebad2 tabe & query hashes made case insensitive (BUG#933)
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
2003-07-28 18:28:44 +03:00
unknown
683e3ef018 test results fixed 2003-07-28 16:58:51 +02:00
unknown
dfc8a17724 Merge eagle.mysql.r18.ru:/home/vva/work/mysql.orig/clear/mysql-4.1
into eagle.mysql.r18.ru:/home/vva/work/BUG_663/mysql-4.1


sql/sql_base.cc:
  Auto merged
2003-07-28 10:58:50 -04:00
unknown
a56959a5b6 changed for AUTO_VALUE_ON_ZERO
mysql-test/r/auto_increment.result:
  added test for AUTO_VALUE_ON_ZERO
mysql-test/t/auto_increment.test:
  added test for AUTO_VALUE_ON_ZERO
2003-07-28 10:57:46 -04:00
unknown
ab0641ccfe Merge bk-internal:/home/bk/mysql-4.1/
into serg.mylan:/usr/home/serg/Abk/mysql-4.1


sql/sql_acl.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
2003-07-27 09:59:24 +02:00
unknown
fc9e7e105e Merge gbichot@213.136.52.20:/home/bk/mysql-4.1
into mysql.com:/home/mysql_src/mysql-4.1
2003-07-26 23:15:11 +02:00
unknown
65a12f457d My changes to test rpl_insert_id in 4.0 about replication of foreign_key_checks
have in fact no effect, because in 4.0 the slave always runs with --skip-innodb.
In 4.1, mysqld accepts option --innodb which can override --skip-innodb.
So I add this option to the test.
When the updated test (using InnoDB tables) from 4.0 will be merged
into 4.1, with this good .opt file, we'll have a meaningful test in 4.1.
Until then, the test in 4.1 will pass but be useless.
And in 4.0, it will stay useless forever.
("it" = the part of the test which tests replication of foreign_key_checks)


BitKeeper/deleted/.del-rpl_insert_id-slave.opt~ba10e66ea50b556:
  Delete: mysql-test/rpl_insert_id-slave.opt
2003-07-26 23:14:09 +02:00
unknown
f3a847eceb Make rpl_insert_id.test use InnoDB, and added foreign keys to the table,
so that it really tests replication of SET FOREIGN_KEY_CHECKS (previously
it used MyISAM).


mysql-test/r/rpl_insert_id.result:
  result update
mysql-test/t/rpl_insert_id.test:
  Make test use InnoDB, and added foreign keys to the table, so that it really tests 
  replication of FOREIGN_KEY_CHECKS.
  --disable_warnings because 4.1 prints a warning when the table type
  is not available.
2003-07-26 17:59:05 +02:00
unknown
2763b52d0a outer join, impossible on condition, where, and usable key for range
bug#926
2003-07-25 14:32:03 +02:00
unknown
3a8d1c3cd0 Print accounts in error messages as 'user'@'host' rather than 'user@host'.
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.
2003-07-24 12:43:57 -05:00
unknown
3be8c60c25 temporary modification of rpl_loaddata.test until 4.0 is merged in 4.1.
This is to avoid a test failure, which is fixed in 4.0 in
ChangeSet@1.1455.34.1, 2003-06-10 23:29:49+02:00, guilhem@mysql.com
by making RESET SLAVE reset the error.


mysql-test/r/rpl_loaddata.result:
  temporary modification until 4.0 is merged in 4.1
mysql-test/t/rpl_loaddata.test:
  temporary modification until 4.0 is merged in 4.1
2003-07-23 16:48:45 +02:00