1
0
mirror of https://github.com/MariaDB/server.git synced 2025-11-30 05:23:50 +03:00
Commit Graph

2187 Commits

Author SHA1 Message Date
bell@sanja.is.com.ua
fb2cd68b5d new subselect tests
LIMIT fixed
AVG & STD with subselect fixed
join_free fixed to be depended queries compatible
sort_default removed from SELECT_LEX
2002-06-01 23:35:36 +03:00
unknown
807b50855c Hiding internal pointers of SELECT_LEX structures 2002-05-27 20:52:54 +03:00
bell@sanja.is.com.ua
ab36838e9b Hiding internal pointers of SELECT_LEX structures 2002-05-27 20:52:54 +03:00
unknown
e640e2e2c0 merge
sql/item.cc:
  Auto merged
sql/item.h:
  Auto merged
sql/item_sum.cc:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_select.h:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
sql/table.h:
  Auto merged
sql/item_strfunc.h:
  merge layout fixing
sql/sql_update.cc:
  merge layout fixing
2002-05-26 22:57:08 +03:00
bell@sanja.is.com.ua
59602212d2 merge 2002-05-26 22:57:08 +03:00
unknown
02d8b9ba56 added depended subselect processing
mysql-test/r/subselect.result:
  depended subselect test
mysql-test/t/subselect.test:
  depended subselect test
sql/item.cc:
  resolving field names in depended queries
sql/item_subselect.cc:
  move optimization just before execution, because we can't optimize inner depended subselect if have not optimized outer subselect
sql/item_subselect.h:
  move optimization just before execution
sql/sql_lex.h:
  some inline methods to hide internal SELECT_LEX structures
sql/sql_select.cc:
  fixed error
2002-05-26 22:50:32 +03:00
bell@sanja.is.com.ua
35faf872aa added depended subselect processing 2002-05-26 22:50:32 +03:00
unknown
3f50440f30 Charset related synax changes, now these things work in parser:
CREATE DATABASE name DEFAULT CHARACTER SET charsetname;
CREATE DATABASE name (fieldname CHAR(n) CHARACTER SET charsetname);
Changes affect query parsing ONLY and do not have other effect yet.
 


sql/sql_lex.h:
  Charset related synax changes
sql/sql_yacc.yy:
  Charset related synax changes
2002-05-20 17:10:50 +05:00
bar@gw.udmsearch.izhnet.ru
2b0a5e1f65 Charset related synax changes, now these things work in parser:
CREATE DATABASE name DEFAULT CHARACTER SET charsetname;
CREATE DATABASE name (fieldname CHAR(n) CHARACTER SET charsetname);
Changes affect query parsing ONLY and do not have other effect yet.
2002-05-20 17:10:50 +05:00
unknown
c5bfcc9d7f Features made for Schlund plus several bug fixes.
Read a manual for more detail
2002-05-15 13:50:38 +03:00
Sinisa@sinisa.nasamreza.org
d65671f778 Features made for Schlund plus several bug fixes.
Read a manual for more detail
2002-05-15 13:50:38 +03:00
unknown
b69d8dab20 total table list managment is changed
sql/sql_lex.cc:
  tabllist creation routine moved to SELECT_LEX_UNION class & made recursive
sql/sql_lex.h:
  list creation routine moved to SELECT_LEX_UNION class
sql/sql_parse.cc:
  list creation routine moved to SELECT_LEX_UNION class
  anonymous union used for storing TABLE*/TABLE_LIST*
sql/sql_union.cc:
  anonymous union used for storing TABLE*/TABLE_LIST*
sql/table.h:
  anonymous union used for storing TABLE*/TABLE_LIST*
2002-05-09 15:23:57 +03:00
bell@sanja.is.com.ua
4cb3760b44 total table list managment is changed 2002-05-09 15:23:57 +03:00
unknown
2c62a868a6 new SELECT_LEX structure
mysql-test/r/derived.result:
  derived table bug test
mysql-test/t/derived.test:
  derived table bug test
sql/mysql_priv.h:
  new mysql_new_select call & layout fixing
sql/sql_class.h:
  passing unit as parameter of Table_ident constructor
sql/sql_lex.cc:
  new SELECT_LEX structure methods
sql/sql_lex.h:
  new SELECT_LEX structure definition
sql/table.h:
  fixed layout
2002-05-07 00:04:16 +03:00
bell@sanja.is.com.ua
494184ff5f new SELECT_LEX structure 2002-05-07 00:04:16 +03:00
unknown
fdc446d0c6 merge
BitKeeper/etc/ignore:
  auto-union
BitKeeper/etc/logging_ok:
  auto-union
BUILD/FINISH.sh:
  Auto merged
BUILD/SETUP.sh:
  Auto merged
BUILD/compile-pentium-debug:
  Auto merged
acconfig.h:
  Auto merged
client/mysql.cc:
  Auto merged
client/mysqldump.c:
  Auto merged
client/mysqltest.c:
  Auto merged
heap/hp_rfirst.c:
  Auto merged
heap/hp_rnext.c:
  Auto merged
include/my_sys.h:
  Auto merged
include/myisam.h:
  Auto merged
libmysql/Makefile.shared:
  Auto merged
myisam/mi_write.c:
  Auto merged
mysql-test/mysql-test-run.sh:
  Auto merged
mysql-test/r/heap.result:
  Auto merged
mysql-test/r/select_found.result:
  Auto merged
mysql-test/r/union.result:
  Auto merged
mysql-test/t/heap.test:
  Auto merged
mysql-test/t/select_found.test:
  Auto merged
mysql-test/t/union.test:
  Auto merged
mysys/mf_iocache2.c:
  Auto merged
mysys/my_vsnprintf.c:
  Auto merged
sql/convert.cc:
  Auto merged
sql/field.cc:
  Auto merged
sql/field.h:
  Auto merged
sql/filesort.cc:
  Auto merged
sql/ha_myisam.cc:
  Auto merged
sql/item.cc:
  Auto merged
sql/item.h:
  Auto merged
sql/item_cmpfunc.cc:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/item_func.h:
  Auto merged
sql/item_strfunc.cc:
  Auto merged
sql/item_timefunc.cc:
  Auto merged
sql/lex.h:
  Auto merged
sql/log.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/opt_range.cc:
  Auto merged
sql/opt_range.h:
  Auto merged
sql/opt_sum.cc:
  Auto merged
sql/slave.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_cache.cc:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_db.cc:
  Auto merged
sql/sql_handler.cc:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_show.cc:
  Auto merged
sql/sql_table.cc:
  Auto merged
sql/sql_union.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
sql/structs.h:
  Auto merged
sql/table.cc:
  Auto merged
sql/table.h:
  Auto merged
strings/Makefile.am:
  Auto merged
2002-04-13 15:34:39 +03:00
monty@hundin.mysql.fi
b5a145d872 merge 2002-04-13 15:34:39 +03:00
unknown
2ec108107d Derived tables !
mysql-test/r/union.result:
  small bug fixes in unions
BitKeeper/etc/ignore:
  Added Docs/manual.texi.orig Docs/manual.texi.rej to the ignore list
mysql-test/t/union.test:
  test for a bug fix in union's
sql/sql_union.cc:
  bug fix for unions
2002-03-26 15:06:05 +02:00
Sinisa@sinisa.nasamreza.org
22d4f87e69 Derived tables ! 2002-03-26 15:06:05 +02:00
unknown
9c435716a9 replication updates and bugfixes. Still not perfect - there is some strange
memory corruption I can only repeat on one system.


mysql-test/r/multi_update.result:
  extended test trying to find why the old one was failing
mysql-test/r/rpl000015.result:
  result update
mysql-test/t/multi_update.test:
  updated test to do more intermediate result checks
mysql-test/t/rpl000014.test:
  cosmetic change
mysql-test/t/rpl000015-slave-master-info.opt:
  reduce connect retry trying to simulate a bug
mysql-test/t/rpl000015.test:
  cosmetic change
sql/lex.h:
  added RELAY_LOG_FILE and RELAY_LOG_POS to CHANGE MASTER TO
sql/log.cc:
  fixed replication bug
sql/log_event.cc:
  properly ignore replication errors according to error mask
sql/mysqld.cc:
  handle SIGFPE in the coredump handler
sql/slave.cc:
  do not kick slave if it has already exited and freed the structures
sql/sql_lex.cc:
  fixed initialization bug in CHANGE MASTER TO
sql/sql_lex.h:
  CHANGE MASTER TO .. RELAY_LOG_FILE=,RELAY_LOG_POS=
sql/sql_repl.cc:
  CHANGE MASTER TO .. RELAY_LOG_FILE=,RELAY_LOG_POS=
sql/sql_yacc.yy:
  CHANGE MASTER TO .. RELAY_LOG_FILE=,RELAY_LOG_POS=
2002-03-15 18:44:44 -07:00
sasha@mysql.sashanet.com
2e6b48afd3 replication updates and bugfixes. Still not perfect - there is some strange
memory corruption I can only repeat on one system.
2002-03-15 18:44:44 -07:00
unknown
b8a9ea66ba slave start <options> to be able to do
slave start io_thread 
 slave start sql_thread
same for stop


sql/lex.h:
  slave start <options>
sql/sql_lex.cc:
  slave start <options>
sql/sql_lex.h:
  slave start <options>
sql/sql_repl.cc:
  slave start <options>
sql/sql_yacc.yy:
  slave start <options>
2002-03-09 21:48:06 -07:00
sasha@mysql.sashanet.com
d993a1c0c4 slave start <options> to be able to do
slave start io_thread 
 slave start sql_thread
same for stop
2002-03-09 21:48:06 -07:00
unknown
5fa6df3081 merge with 3.23.49
BitKeeper/etc/logging_ok:
  auto-union
acconfig.h:
  Auto merged
Docs/manual.texi:
  Auto merged
client/client_priv.h:
  Auto merged
include/mysql.h:
  Auto merged
innobase/dict/dict0dict.c:
  Auto merged
innobase/row/row0mysql.c:
  Auto merged
mysql-test/t/comments.test:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/sql_load.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/unireg.cc:
  Auto merged
sql/unireg.h:
  Auto merged
2002-02-14 18:58:24 +02:00
monty@hundin.mysql.fi
e070e9a01f merge with 3.23.49 2002-02-14 18:58:24 +02:00
unknown
4866455558 Don't give warnings for empty statements with comments 2002-02-14 15:04:14 +02:00
monty@hundin.mysql.fi
b21f2d084f Don't give warnings for empty statements with comments 2002-02-14 15:04:14 +02:00
unknown
1e0f2b7a42 Ugly merge! But I am not done yet - there are a number of things I need to fix
before I can push


BitKeeper/etc/ignore:
  auto-union
Makefile.am:
  Auto merged
include/my_sys.h:
  Auto merged
libmysqld/lib_sql.cc:
  Auto merged
mysql-test/t/rpl_log.test:
  Auto merged
mysys/mf_iocache.c:
  Auto merged
mysys/mf_iocache2.c:
  Auto merged
mysys/thr_mutex.c:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/lex.h:
  Auto merged
sql/mini_client.cc:
  Auto merged
sql/mini_client.h:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/repl_failsafe.cc:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_show.cc:
  Auto merged
sql/stacktrace.c:
  Auto merged
sql/structs.h:
  Auto merged
mysql-test/r/rpl000014.result:
  merge
mysql-test/r/rpl000015.result:
  merge
mysql-test/r/rpl000016.result:
  merge
mysql-test/r/rpl_log.result:
  merge
sql/log.cc:
  merge
sql/log_event.cc:
  merge
sql/log_event.h:
  merge
sql/mysqld.cc:
  merge
sql/slave.cc:
  merge
sql/slave.h:
  merge
sql/sql_class.h:
  merge
sql/sql_parse.cc:
  merge
sql/sql_repl.cc:
  merge
sql/sql_yacc.yy:
  merge
2002-01-19 22:46:25 -07:00
sasha@mysql.sashanet.com
684f13ef4c Ugly merge! But I am not done yet - there are a number of things I need to fix
before I can push
2002-01-19 22:46:25 -07:00
unknown
5df61c3cdc Here comes a nasty patch, although I am not ready to push it yet. I will
first pull, merge,test, and get it to work.

The main change is the new replication code - now we have two slave threads
SQL thread and I/O thread. I have also re-written a lot of the code to 
prepare for multi-master implementation. 

I also documented IO_CACHE quite extensively and to some extend, THD class.


Makefile.am:
  moved tags target script into a separate file
include/my_sys.h:
  fixes in IO_CACHE for SEQ_READ_APPEND + some documentation
libmysqld/lib_sql.cc:
  updated replication locks, but now I see I did it wrong and it won't compile. Will fix
  before the push.
mysql-test/r/rpl000014.result:
  test result update
mysql-test/r/rpl000015.result:
  test result update
mysql-test/r/rpl000016.result:
  test result update
mysql-test/r/rpl_log.result:
  test result update
mysql-test/t/rpl000016-slave.sh:
  remove relay logs
mysql-test/t/rpl000017-slave.sh:
  remove relay logs
mysql-test/t/rpl_log.test:
  updated test
mysys/mf_iocache.c:
  IO_CACHE updates to make replication work
mysys/mf_iocache2.c:
  IO_CACHE update to make replication work
mysys/thr_mutex.c:
  cosmetic change
sql/item_func.cc:
  new replication code
sql/lex.h:
  new replication
sql/log.cc:
  new replication
sql/log_event.cc:
  new replication
sql/log_event.h:
  new replication
sql/mini_client.cc:
  new replication
sql/mini_client.h:
  new replication
sql/mysql_priv.h:
  new replication
sql/mysqld.cc:
  new replication
sql/repl_failsafe.cc:
  new replication
sql/slave.cc:
  new replication
sql/slave.h:
  new replication
sql/sql_class.cc:
  new replication
sql/sql_class.h:
  new replication
sql/sql_lex.h:
  new replication
sql/sql_parse.cc:
  new replication
sql/sql_repl.cc:
  new replication
sql/sql_repl.h:
  new replication
sql/sql_show.cc:
  new replication
sql/sql_yacc.yy:
  new replication
sql/stacktrace.c:
  more robust stack tracing
sql/structs.h:
  new replication code
BitKeeper/etc/ignore:
  Added mysql-test/r/rpl000002.eval mysql-test/r/rpl000014.eval mysql-test/r/rpl000015.eval mysql-test/r/rpl000016.eval mysql-test/r/slave-running.eval mysql-test/r/slave-stopped.eval to the ignore list
2002-01-19 19:16:52 -07:00
sasha@mysql.sashanet.com
56129ce634 Here comes a nasty patch, although I am not ready to push it yet. I will
first pull, merge,test, and get it to work.

The main change is the new replication code - now we have two slave threads
SQL thread and I/O thread. I have also re-written a lot of the code to 
prepare for multi-master implementation. 

I also documented IO_CACHE quite extensively and to some extend, THD class.
2002-01-19 19:16:52 -07:00
unknown
9a00b8568c Accomodating Monty's changes from MULTI_DELETE to DELETE_MULTI 2001-12-26 17:55:24 +02:00
Sinisa@sinisa.nasamreza.org
17d94da96d Accomodating Monty's changes from MULTI_DELETE to DELETE_MULTI 2001-12-26 17:55:24 +02:00
unknown
ececdf0908 Changes for the BitKeeper resolve.
One more notice:

limiting number of queries per hour for different users has been done
on 4.0.1 , but I can port it to 3.23.* 

This will require only certain changes, like number of columns in user
table.

I will also make a test case for it, after it is approved by Monty, 
as result file will depend on the error message text.


BitKeeper/etc/ignore:
  auto-union
libmysqld/lib_sql.cc:
  Auto merged
scripts/mysql_install_db.sh:
  Auto merged
sql/item_timefunc.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_acl.h:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_update.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/lex.h:
  Changes for BitKeeper resolve...
sql/sql_class.h:
  Changes for BitKeeper resolve...
sql/sql_lex.h:
  Changes for BitKeeper resolve...
sql/sql_parse.cc:
  Changes for BitKeeper resolve...
sql/sql_yacc.yy:
  Changes for BitKeeper resolve...
2001-12-26 17:42:06 +02:00
Sinisa@sinisa.nasamreza.org
4ed4546004 Changes for the BitKeeper resolve.
One more notice:

limiting number of queries per hour for different users has been done
on 4.0.1 , but I can port it to 3.23.* 

This will require only certain changes, like number of columns in user
table.

I will also make a test case for it, after it is approved by Monty, 
as result file will depend on the error message text.
2001-12-26 17:42:06 +02:00
unknown
71ce58a3b1 This is a large push. Included are :
* multi-table updates
* new paid feature for limiting number of queries per hour for users
* optional syntax for multi-table deletes
* optimization for SQL_CALC_FOUND_ROWS
* a small addition for CREATE .. SELECT that will be of future use

I know that all this will require many additions to documentation, 
which I have not done, but I am at Arjen's disposal to help him document
all this.



libmysqld/lib_sql.cc:
  This is a small change required due to new paid feature of limiting 
  number of queries per hour for each user.
mysql-test/r/multi_update.result:
  Change of the result to accomodate multi-table updates
mysql-test/t/multi_update.test:
  Change in multi-table tests to accomodate multi-table updates
BitKeeper/etc/ignore:
  Added 50 sql/new.cc to the ignore list
scripts/mysql_install_db.sh:
  This is a small change required due to new paid feature of limiting 
  number of queries per hour for each user.
sql/item_timefunc.h:
  This is a small feature that will be of use later in the proper 
  creation of the tables out of CREATE ... SELECT...
  
  Further changes will come after this resolve/push/test passes ..
sql/lex.h:
  This is a small change required due to new paid feature of limiting 
  number of queries per hour for each user.
sql/mysql_priv.h:
  This is a small change required due to new paid feature of limiting 
  number of queries per hour for each user.
sql/mysqld.cc:
  This is a small change required due to new paid feature of limiting 
  number of queries per hour for each user.
sql/sql_acl.cc:
  This is a small change required due to new paid feature of limiting 
  number of queries per hour for each user.
sql/sql_acl.h:
  This is a small change required due to new paid feature of limiting 
  number of queries per hour for each user.
sql/sql_class.h:
  These are changes required for multi-table updates.
sql/sql_lex.h:
  Changes required for both multi-table updates and limiting number of 
  queries per hour (paid feature).
sql/sql_parse.cc:
  Ha ! So many changes. 
  
  * multi-table updates
  * limiting number of queries per hour for users
sql/sql_select.cc:
  Optimisation for SQL_CALC_FOUND_ROWS, when a query involves a single
  table, without WHERE or GROUP clause
sql/sql_update.cc:
  multi-table updates
sql/sql_yacc.yy:
  Many things :
  * multi-table updates
  * limiting number of queries per hour for users
  * new optional syntax for multi-table deletes. This one is different 
    from the one demanded by user. USING clause MUST include ALL tables, 
    not just the ones that are used and not deleted from.
2001-12-26 16:49:10 +02:00
Sinisa@sinisa.nasamreza.org
038db406c1 This is a large push. Included are :
* multi-table updates
* new paid feature for limiting number of queries per hour for users
* optional syntax for multi-table deletes
* optimization for SQL_CALC_FOUND_ROWS
* a small addition for CREATE .. SELECT that will be of future use

I know that all this will require many additions to documentation, 
which I have not done, but I am at Arjen's disposal to help him document
all this.
2001-12-26 16:49:10 +02:00
unknown
e4921f2159 Fix after merge
BitKeeper/etc/ignore:
  Added libmysqld/sql_do.cc to the ignore list
include/m_string.h:
  Fix for purify
libmysql/Makefile.shared:
  Fix for purify
libmysqld/Makefile.am:
  Fix for purify
sql/sql_handler.cc:
  Cleanup
2001-12-17 23:24:51 +02:00
monty@hundin.mysql.fi
cb754eb5aa Fix after merge 2001-12-17 23:24:51 +02:00
unknown
11cbe4271c merge with 3.23.47 (DO statement)
innobase/dict/dict0dict.c:
  Auto merged
innobase/row/row0mysql.c:
  Auto merged
sql/gen_lex_hash.cc:
  Auto merged
sql/ha_innobase.cc:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/lex.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
Docs/manual.texi:
  merge
sql/Makefile.am:
  merge
sql/mysql_priv.h:
  merge
sql/sql_lex.h:
  merge
sql/sql_yacc.yy:
  merge
2001-12-17 20:47:20 +02:00
monty@hundin.mysql.fi
c298f03570 merge with 3.23.47 (DO statement) 2001-12-17 20:47:20 +02:00
unknown
1808d80fb3 Added DO command
Docs/manual.texi:
  ChangeLog
sql/gen_lex_hash.cc:
  Safety fix
2001-12-17 19:59:20 +02:00
monty@hundin.mysql.fi
f049543416 Added DO command 2001-12-17 19:59:20 +02:00
unknown
d3d30c0145 Fix that SHOW STATUS works with SSL.
Add 4.0 commands to SHOW STATUS.


Docs/manual.texi:
  Cleanup
mysql-test/r/innodb.result:
  Fixe results
sql/mysqld.cc:
  Add commands unique for 4.0
sql/sql_lex.h:
  Cleanup
sql/sql_parse.cc:
  Cleanup
sql/sql_show.cc:
  Fix that SHOW STATUS works with SSL.
sql/sql_yacc.yy:
  Cleanup
2001-12-13 22:03:09 +02:00
monty@hundin.mysql.fi
0c0a170fa7 Fix that SHOW STATUS works with SSL.
Add 4.0 commands to SHOW STATUS.
2001-12-13 22:03:09 +02:00
unknown
6e31c2ca7d merge
innobase/btr/btr0cur.c:
  Auto merged
innobase/dict/dict0dict.c:
  Auto merged
innobase/sync/sync0arr.c:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/table.cc:
  Auto merged
sql/unireg.cc:
  Auto merged
Docs/manual.texi:
  Merge
2001-12-13 20:54:20 +02:00
monty@hundin.mysql.fi
6aeb40bd3f merge 2001-12-13 20:54:20 +02:00
unknown
e12119dcc4 Added status variables for all MySQL commands.
Docs/manual.texi:
  Changelog
2001-12-13 20:06:44 +02:00
monty@hundin.mysql.fi
bdc5a62104 Added status variables for all MySQL commands. 2001-12-13 20:06:44 +02:00
unknown
2d1e16eb04 Fixed bug in GROUP BY ... DESC
Docs/manual.texi:
  Changelog
libmysql/libmysql.c:
  Fixed bug with mysql_use_result() when mysql_query() is called before mysql_free_result().
mysql-test/r/group_by.result:
  New tests
mysql-test/t/group_by.test:
  New tests
sql/stacktrace.c:
  Fix for SCO
2001-12-10 17:51:07 +02:00