Commit graph

66 commits

Author SHA1 Message Date
unknown
4653621909 New multi-table-update code
New (simpler) internal timestamp handling.
More debuging to heap tables.
Small cleanups to multi-table-delete
false -> 0 and true -> 1  (We should use TRUE and FALSE)


heap/_check.c:
  Added checking of rows
heap/hp_delete.c:
  Extra debugging
heap/hp_scan.c:
  Extra debugging
heap/hp_update.c:
  Extra debugging
heap/hp_write.c:
  Extra debugging
include/my_base.h:
  Added option to disable row cache when using updates
isam/extra.c:
  Added option to disable row cache when using updates
myisam/mi_check.c:
  Comment cleanup
myisam/mi_extra.c:
  Added option to disable row cache when using updates
myisam/sort.c:
  Indentaion cleanups
myisammrg/myrg_extra.c:
  Added option to disable row cache when using updates
mysql-test/r/multi_update.result:
  Updated results
mysql-test/t/multi_update.test:
  Cleanup up to only use table names t1, t2,...
mysys/mf_iocache.c:
  Safety fix
sql/item_cmpfunc.cc:
  change true-> 1 and false -> 0
sql/mysql_priv.h:
  Cleaned up SQL_LIST handling
sql/sql_base.cc:
  Fixed grant checking if SELECT tablename.*
sql/sql_class.h:
  Cleaned up multi-table-update
sql/sql_delete.cc:
  Fixed OPTION_SAFE_UPDATE checking in multi-table-delete.
  Fixed query-cache invalidation in multi-table-delete
sql/sql_insert.cc:
  cleaned up timestamp handling
sql/sql_olap.cc:
  false -> 0
sql/sql_parse.cc:
  Optimized some list handling.
  Moved multi-table-update to sql_update.cc
sql/sql_select.cc:
  More comments
  Fixed create_tmp_table for multi-table-update
sql/sql_select.h:
  New prototypes
sql/sql_union.cc:
  false -> 0
  Cleaned up timestamp handling
sql/sql_update.cc:
  New multi-update-table code
sql/sql_yacc.yy:
  false -> 0, true -> 1
  Optimized some list handling
sql/table.h:
  Added union for temporary values.
  Made shared int to be able to store counters.
sql/uniques.cc:
  Indentation cleanup
2002-11-29 16:40:18 +02:00
unknown
bd1c2d65c4 Small improvement to alloc_root
Add support for LIMIT # OFFSET #
Changed lock handling:  Now all locks should be stored in TABLE_LIST instead of passed to functions.
Don't call query_cache_invalidate() twice in some cases
mysql_change_user() now clears states to be equal to close + connect.
Fixed a bug with multi-table-update and multi-table-delete when used with LOCK TABLES
Fixed a bug with replicate-do and UPDATE


BitKeeper/etc/ignore:
  added autom4te.cache/* bdb/dist/autom4te.cache/* innobase/autom4te.cache/*
include/my_alloc.h:
  Small improvement to alloc_root
libmysql/libmysql.c:
  Removed compiler warning
myisam/mi_page.c:
  Better DBUG message
mysql-test/r/multi_update.result:
  Added test with lock tables
mysql-test/r/rpl_replicate_do.result:
  Update results
mysql-test/r/rpl_rotate_logs.result:
  Make test independent of if t1 exists
mysql-test/t/multi_update.test:
  Added test with lock tables
mysql-test/t/rpl_rotate_logs.test:
  Make test independent of if t1 exists
mysys/my_alloc.c:
  Small imprevement to alloc_root
  (Don't free blocks less than ALLOC_MAX_BLOCK_ROOT (4K)
sql/ha_innodb.cc:
  More debug messages
sql/ha_myisam.cc:
  Safety change
sql/lex.h:
  Add support for LIMIT # OFFSET #
sql/lock.cc:
  Added assertion
sql/mysql_priv.h:
  Change of lock handling
sql/mysqld.cc:
  Added function clear_error_messages()
sql/sql_base.cc:
  Change lock handling by open_ltable() and open_and_lock_tables()
sql/sql_class.cc:
  Split THD::THD to two functions
  Move some code from cleanup() to ~THD:THD
  Add THD::change_user()
sql/sql_class.h:
  Prototype changes in class THD
sql/sql_delete.cc:
  Remove locking argument from mysql_delete()
  Locking type is now stored in TABLE_LIST
  Small code change to not call query_cache_invalidate() twice for transactional tables.
sql/sql_insert.cc:
  Remove locking argument from mysql_insert()
  Locking type is now stored in TABLE_LIST
  Small code change to not call query_cache_invalidate() twice for transactional tables.
  Don't use bulk insert if bulk_insert_buff_size is 0
sql/sql_parse.cc:
  Changes to make mysql_change_user() work as close+connect
  Changed command statistics to use statstics_increment to get more speed
  Update code to handle that locks is now stored in TABLE_LIST
sql/sql_update.cc:
  Remove locking argument from mysql_update()
  Locking type is now stored in TABLE_LIST
  Small code change to not call query_cache_invalidate() twice for transactional tables.
sql/sql_yacc.yy:
  Locking type is now stored in TABLE_LIST
  Added support for LIMIT # OFFSET # syntax
  Removed some wrong (never true) checks for SQLCOM_MULTI_UPDATE
mysql-test/t/rpl_replicate_do-slave.opt:
  Changed tables to use t1,t2,...
mysql-test/t/rpl_replicate_do.test:
  Changed tables to use t1,t2,...
2002-11-16 20:19:10 +02:00
unknown
228bfb05e3 Two bug fixes
Docs/manual.texi:
  added text for fixes
mysql-test/r/multi_update.result:
  new test case for multi-table deletes
mysql-test/t/multi_update.test:
  new test case for multi-table deletes
sql/sql_delete.cc:
  fix for multi-table deletes
sql/sql_update.cc:
  fix for multi-table updates
2002-10-12 21:36:39 +03:00
unknown
4a537e9aef fixed two bugs in multi-table update 2002-08-06 21:24:12 +03:00
unknown
3e16752ebf A bug with tables with different ref_length's whose order is
changed in table initialization
2002-07-31 19:53:06 +03:00
unknown
bf95234b05 A fix for multi-table delete with tables optimised away.
Still not able to make a proper test case as this crashes on files 
where key and data pointers are 4 bytes each. Possibly a proper 
test case would require myisampack.


sql/sql_lex.cc:
  Just in case ...
2002-06-11 22:45:51 +03:00
unknown
945c46e6d2 Bug fix for multi-table delete with test case and manual entry 2002-06-04 20:34:13 +03: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
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
unknown
29f148bd36 client/mysqlmanagerc.c
added support for quiet
    increased line buffer size
client/mysqltest.c
    fixed memory leak
    added query logging to result file
    added error message logging to result file
    added enable_query_log/disable_query_log
mysql-test/mysql-test-run.sh
    converted tests to use mysqlmanager

Updated test results


BitKeeper/etc/ignore:
  added *.reject
client/mysqlmanagerc.c:
  added support for quiet
  increased line buffer size
client/mysqltest.c:
  fixed memory leak
  added query logging to result file
  added error message logging to result file
  added enable_query_log/disable_query_log
mysql-test/mysql-test-run.sh:
  converted tests to use mysqlmanager
mysql-test/r/alias.result:
  log queries
mysql-test/r/alter_table.result:
  log queries
mysql-test/r/analyse.result:
  log queries
mysql-test/r/auto_increment.result:
  log queries
mysql-test/r/backup.result:
  log queries
mysql-test/r/bdb-crash.result:
  log queries
mysql-test/r/bench_count_distinct.result:
  log queries
mysql-test/r/bigint.result:
  log queries
mysql-test/r/binary.result:
  log queries
mysql-test/r/bulk_replace.result:
  log queries
mysql-test/r/case.result:
  log queries
mysql-test/r/check.result:
  log queries
mysql-test/r/comments.result:
  log queries
mysql-test/r/compare.result:
  log queries
mysql-test/r/count_distinct.result:
  log queries
mysql-test/r/count_distinct2.result:
  log queries
mysql-test/r/create.result:
  log queries
mysql-test/r/ctype_latin1_de.result:
  log queries
mysql-test/r/delayed.result:
  log queries
mysql-test/r/dirty-close.result:
  log queries
mysql-test/r/distinct.result:
  log queries
mysql-test/r/drop.result:
  log queries
mysql-test/r/empty_table.result:
  log queries
mysql-test/r/explain.result:
  log queries
mysql-test/r/flush.result:
  log queries
mysql-test/r/fulltext.result:
  log queries
mysql-test/r/fulltext_cache.result:
  log queries
mysql-test/r/fulltext_distinct.result:
  log queries
mysql-test/r/fulltext_left_join.result:
  log queries
mysql-test/r/fulltext_multi.result:
  log queries
mysql-test/r/fulltext_order_by.result:
  log queries
mysql-test/r/fulltext_update.result:
  log queries
mysql-test/r/fulltext_var.result:
  log queries
mysql-test/r/func_crypt.result:
  log queries
mysql-test/r/func_date_add.result:
  log queries
mysql-test/r/func_equal.result:
  log queries
mysql-test/r/func_group.result:
  log queries
mysql-test/r/func_in.result:
  log queries
mysql-test/r/func_like.result:
  log queries
mysql-test/r/func_math.result:
  log queries
mysql-test/r/func_misc.result:
  log queries
mysql-test/r/func_op.result:
  log queries
mysql-test/r/func_regexp.result:
  log queries
mysql-test/r/func_set.result:
  log queries
mysql-test/r/func_str.result:
  log queries
mysql-test/r/func_system.result:
  log queries
mysql-test/r/func_test.result:
  log queries
mysql-test/r/func_time.result:
  log queries
mysql-test/r/func_timestamp.result:
  log queries
mysql-test/r/group_by.result:
  log queries
mysql-test/r/handler.result:
  log queries
mysql-test/r/having.result:
  log queries
mysql-test/r/heap.result:
  log queries
mysql-test/r/identity.result:
  log queries
mysql-test/r/ins000001.result:
  log queries
mysql-test/r/insert.result:
  log queries
mysql-test/r/insert_select.result:
  log queries
mysql-test/r/isam.result:
  log queries
mysql-test/r/join.result:
  log queries
mysql-test/r/join_crash.result:
  log queries
mysql-test/r/join_outer.result:
  log queries
mysql-test/r/key.result:
  log queries
mysql-test/r/key_diff.result:
  log queries
mysql-test/r/key_primary.result:
  log queries
mysql-test/r/keywords.result:
  log queries
mysql-test/r/kill.result:
  log queries
mysql-test/r/limit.result:
  log queries
mysql-test/r/lock.result:
  log queries
mysql-test/r/merge.result:
  log queries
mysql-test/r/multi_update.result:
  log queries
mysql-test/r/myisam.result:
  log queries
mysql-test/r/null.result:
  log queries
mysql-test/r/null_key.result:
  log queries
mysql-test/r/odbc.result:
  log queries
mysql-test/r/openssl_1.result:
  log queries
mysql-test/r/openssl_2.result:
  log queries
mysql-test/r/order_by.result:
  log queries
mysql-test/r/order_fill_sortbuf.result:
  log queries
mysql-test/r/raid.result:
  log queries
mysql-test/r/range.result:
  log queries
mysql-test/r/rename.result:
  log queries
mysql-test/r/replace.result:
  log queries
mysql-test/r/rollback.result:
  log queries
mysql-test/r/rpl000001.result:
  log queries
mysql-test/r/rpl000002.result:
  log queries
mysql-test/r/rpl000003.result:
  log queries
mysql-test/r/rpl000004.result:
  log queries
mysql-test/r/rpl000005.result:
  log queries
mysql-test/r/rpl000006.result:
  log queries
mysql-test/r/rpl000007.result:
  log queries
mysql-test/r/rpl000008.result:
  log queries
mysql-test/r/rpl000009.result:
  log queries
mysql-test/r/rpl000010.result:
  log queries
mysql-test/r/rpl000011.result:
  log queries
mysql-test/r/rpl000012.result:
  log queries
mysql-test/r/rpl000013.result:
  log queries
mysql-test/r/rpl000014.result:
  log queries
mysql-test/r/rpl000015.result:
  log queries
mysql-test/r/rpl000016.result:
  log queries
mysql-test/r/rpl000017.result:
  log queries
mysql-test/r/rpl000018.result:
  log queries
mysql-test/r/rpl_get_lock.result:
  log queries
mysql-test/r/rpl_log.result:
  log queries
mysql-test/r/rpl_magic.result:
  log queries
mysql-test/r/rpl_mystery22.result:
  log queries
mysql-test/r/rpl_sporadic_master.result:
  log queries
mysql-test/r/sel000001.result:
  log queries
mysql-test/r/sel000002.result:
  log queries
mysql-test/r/sel000003.result:
  log queries
mysql-test/r/sel000031.result:
  log queries
mysql-test/r/sel000032.result:
  log queries
mysql-test/r/sel000033.result:
  log queries
mysql-test/r/sel000100.result:
  log queries
mysql-test/r/select.result:
  log queries
mysql-test/r/select_found.result:
  log queries
mysql-test/r/select_safe.result:
  log queries
mysql-test/r/show_check.result:
  log queries
mysql-test/r/slave-running.result:
  log queries
mysql-test/r/slave-stopped.result:
  log queries
mysql-test/r/status.result:
  log queries
mysql-test/r/symlink.result:
  log queries
mysql-test/r/tablelock.result:
  log queries
mysql-test/r/temp_table.result:
  log queries
mysql-test/r/truncate.result:
  log queries
mysql-test/r/type_blob.result:
  log queries
mysql-test/r/type_date.result:
  log queries
mysql-test/r/type_datetime.result:
  log queries
mysql-test/r/type_decimal.result:
  log queries
mysql-test/r/type_enum.result:
  log queries
mysql-test/r/type_float.result:
  log queries
mysql-test/r/type_ranges.result:
  log queries
mysql-test/r/type_time.result:
  log queries
mysql-test/r/type_timestamp.result:
  log queries
mysql-test/r/type_uint.result:
  log queries
mysql-test/r/type_year.result:
  log queries
mysql-test/r/union.result:
  log queries
mysql-test/r/update.result:
  log queries
mysql-test/r/user_var.result:
  log queries
mysql-test/r/varbinary.result:
  log queries
mysql-test/r/variables.result:
  log queries
mysql-test/t/bench_count_distinct.test:
  log queries
mysql-test/t/check.test:
  log queries
mysql-test/t/count_distinct2.test:
  log queries
mysql-test/t/flush.test:
  log queries
mysql-test/t/isam.test:
  log queries
mysql-test/t/multi_update.test:
  log queries
mysql-test/t/myisam.test:
  log queries
mysql-test/t/order_fill_sortbuf.test:
  log queries
mysql-test/t/rpl000016.test:
  log queries
tools/managertest1.nc:
  test for def_exec overwrite
tools/mysqlmanager.c:
  support def_exec overwrite and queries on running server
2001-09-27 23:05:54 -06:00
unknown
b291238171 Making multi-table delete BETA !!
mysql-test/t/multi_update.test:
  Making a test change the order of the tables, so that initalize_tables 
  would be tested properly
mysys/my_compress.c:
  Just changed my e-mail address .... ;o)
sql/filesort.cc:
  Making sure that merge_buffers can not be killed
sql/sql_class.h:
  Added initialize_tables
sql/sql_delete.cc:
  Making final changes for multi table delete, beta version !!
sql/sql_select.cc:
  same as above
BitKeeper/etc/ignore:
  Added locked to the ignore list
2001-07-01 13:20:53 +03:00
unknown
a96e1b6954 Fixed bug in multi-table-delete code
client/mysqltest.c:
  Added --big-test argument
libmysqld/lib_sql.cc:
  Reset error messages before new query.
libmysqld/lib_vio.c:
  Fixed reading of results.
mysql-test/mysql-test-run.sh:
  Added option --big
mysql-test/r/multi_update.result:
  More multi-delete tests
mysql-test/t/bdb-crash.test:
  Added missing test if BDB is supported
mysql-test/t/multi_update.test:
  More multi-delete tests
2001-06-24 22:11:00 +03:00
unknown
cded0f915d bk resolve changes
sql/sql_class.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_delete.cc:
  Same as above
2001-06-16 14:06:54 +03:00
unknown
f38e23207e Changes for multi-table delete and UNION's
mysql-test/t/multi_update.test:
  Made a test feasible. It will last very long time, so I will change 
  it again as soon as Monty pull's it
sql/sql_class.h:
  Some small changes
sql/sql_delete.cc:
  Fixed one bug in my stripping code
sql/sql_parse.cc:
  Additional stuff for UNION's
2001-06-16 13:58:01 +03:00
unknown
e96fcbcfe9 Fixed multi-table-delete
Optimize fixed length MyISAM rows to use pread/pwrite.


BUILD/compile-pentium-debug-max:
  Also build embedded server
libmysqld/lib_vio.c:
  Add vio_poll_read()
myisam/mi_statrec.c:
  Use pread()/pwrite() instead of seek+read/write
mysql-test/r/multi_update.result:
  Fix multi-table-delete test
mysql-test/t/multi_update.test:
  Fix multi-table-delete test
sql/filesort.cc:
  Fix multi-table-delete
sql/mysql_priv.h:
  Fix multi-table-delete
sql/sql_class.h:
  Fix multi-table-delete
sql/sql_delete.cc:
  Fix multi-table-delete
sql/sql_parse.cc:
  Fix multi-table-delete
sql/sql_select.cc:
  Fix multi-table-delete
sql/sql_table.cc:
  cleanup
sql/sql_unions.cc:
  cleanup
sql/sql_yacc.yy:
  cleanup/ optimize
sql/structs.h:
  Fix multi-table-delete
sql/uniques.cc:
  Fix multi-table-delete
2001-06-15 05:03:15 +03:00
unknown
64dc74a13d fixed bugs in mysqltest to get nested while loops to work
added multi-delete test case that does not work - something for Sinisa to fix


client/mysqltest.c:
  fixed bugs to make nested whiles to work
2001-06-11 17:28:26 -06:00