1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-29 05:21:33 +03:00

Some trivial optimzations

Check if AND/OR expression can be NULL; Fixed bug in GROUP BY and-or-expression where expression could be NULL
Bug fix for SHOW OPEN TABLES when user didn't have privilege to access all open tables.
Better fix for ALTER TABLE on BDB tables.


Docs/manual.texi:
  Changelog
client/mysql.cc:
  Simple optimization
libmysql/libmysql.c:
  Removed initialization of varibles that are already set to zero
myisam/myisamchk.c:
  Fixed comment for extend-check
mysql-test/r/bdb-alter-table-1.result:
  Updated results
mysql-test/r/bdb-alter-table-2.result:
  Updated results
mysql-test/r/distinct.result:
  Updated results after bug fix
mysql-test/r/handler.result:
  Updated results
mysql-test/r/innodb_handler.result:
  Updated results
mysql-test/r/select.result:
  Updated results
mysql-test/r/varbinary.result:
  Updated results
mysql-test/t/bdb-alter-table-1.test:
  Added comments
mysql-test/t/bdb-alter-table-2.test:
  Added comments
mysql-test/t/select.test:
  Remove OPTION in SET OPTION
  Added tests for ORDER BY key LIMIT
sql/item_cmpfunc.cc:
  Check if AND/OR expression can be NULL
sql/mysqld.cc:
  mysqld --help now shows value of datadir
sql/share/english/errmsg.txt:
  Better error message for syntax error
sql/sql_base.cc:
  Bug fix for SHOW OPEN TABLES
sql/sql_class.cc:
  Moved virtual function to .cc file to avoid that we have to include assert.h everywhere.
sql/sql_class.h:
  Moved virtual function to .cc file to avoid that we have to include assert.h everywhere.
sql/sql_parse.cc:
  Removed old dead code from 3.23
sql/sql_select.cc:
  Improved optimization of ORDER BY key LIMIT
sql/sql_table.cc:
  More comments,
  Better fix for ALTER TABLE on BDB tables.
This commit is contained in:
unknown
2002-09-03 15:44:25 +03:00
parent e360f20f73
commit 0f2ab68c6f
24 changed files with 131 additions and 53 deletions

View File

@ -1718,7 +1718,7 @@ insert into tmp select * from t3;
insert into t3 select * from tmp;
alter table t3 add t2nr int not null auto_increment primary key first;
drop table tmp;
SET OPTION SQL_BIG_TABLES=1;
SET SQL_BIG_TABLES=1;
select distinct concat(fld3," ",fld3) as namn from t2,t3 where t2.fld1=t3.t2nr order by namn limit 10;
namn
Abraham Abraham
@ -1731,7 +1731,7 @@ ammonium ammonium
analyzable analyzable
animals animals
animized animized
SET OPTION SQL_BIG_TABLES=0;
SET SQL_BIG_TABLES=0;
select distinct concat(fld3," ",fld3) from t2,t3 where t2.fld1=t3.t2nr order by fld3 limit 10;
concat(fld3," ",fld3)
Abraham Abraham
@ -1768,7 +1768,7 @@ attendants 1
bedlam 1
bedpost 1
boasted 1
SET OPTION SQL_BIG_TABLES=1;
SET SQL_BIG_TABLES=1;
select distinct fld3,count(*) from t2 group by companynr,fld3 limit 10;
fld3 count(*)
affixed 1
@ -1781,7 +1781,7 @@ attendants 1
bedlam 1
bedpost 1
boasted 1
SET OPTION SQL_BIG_TABLES=0;
SET SQL_BIG_TABLES=0;
select distinct fld3,repeat("a",length(fld3)),count(*) from t2 group by companynr,fld3 limit 100,10;
fld3 repeat("a",length(fld3)) count(*)
circus aaaaaa 1
@ -1809,6 +1809,18 @@ explain select t3.t2nr,fld3 from t2,t3 where t2.companynr = 34 and t2.fld1=t3.t2
table type possible_keys key key_len ref rows Extra
t2 ALL fld1 NULL NULL NULL 1199 where used; Using temporary; Using filesort
t3 eq_ref PRIMARY PRIMARY 4 t2.fld1 1 where used; Using index
explain select * from t3 as t1,t3 where t1.period=t3.period order by t3.period;
table type possible_keys key key_len ref rows Extra
t1 ALL period NULL NULL NULL 41810 Using temporary; Using filesort
t3 ref period period 4 t1.period 4181
explain select * from t3 as t1,t3 where t1.period=t3.period order by t3.period limit 10;
table type possible_keys key key_len ref rows Extra
t3 index period period 4 NULL 41810
t1 ref period period 4 t3.period 4181
explain select * from t3 as t1,t3 where t1.period=t3.period order by t1.period limit 10;
table type possible_keys key key_len ref rows Extra
t1 index period period 4 NULL 41810
t3 ref period period 4 t1.period 4181
select period from t1;
period
9410