• unknown's avatar
    CLIENT_MULTI_QUERIES -> CLIENT_MULTI_STATEMENTS · e72124c4
    unknown authored
    New multi-key-cache handling. This was needed becasue the old one didn't work reliable with MERGE tables.
    ALTER TABLE table_name ... CHARACTER SET  ... now changes all char/varchar/text columns to the given character set
    (One must use ALTER TABLE ... DEFAULT CHARACTER SET ... to change the default character set)
    Fixed that have_compress is detected properly (fixes problems with func_compress.test on platforms without zlib)
    New syntax for CACHE INDEX ('keys' is optional if no index name is given and one mentions the key cache name only ones)
    Removed compiler warnings
    Added mysql_set_server_option() to allow clients like PHP to easaily set/reset the multi-statement flag.
    
    
    BUILD/compile-pentium-valgrind-max:
      Add test of isam
    client/mysql.cc:
      CLIENT_MULTI_QUERIES -> CLIENT_MULTI_STATEMENTS
    include/my_base.h:
      Remove HA_EXTRA_SET_KEY_CACHE
    include/my_no_pthread.h:
      Add defines to ignore rw-locks when running without threads
    include/my_sys.h:
      Added function for multi-key-caches
    include/myisam.h:
      Added function to handle multi-key-caches
    include/mysql.h:
      Added mysql_set_server_option
    include/mysql_com.h:
      CLIENT_MULTI_QUERIES -> CLIENT_MULTI_STATEMENTS
      Added enum_mysql_set_option
    include/mysqld_error.h:
      Added error message for unknown key cache
    innobase/srv/srv0start.c:
      Removed warning that is confused for MySQL users
    libmysql/libmysql.c:
      Added mysql_set_server_option()
    libmysql/libmysql.def:
      Added mysql_set_server_option()
    myisam/ft_nlq_search.c:
      Removed compiler warning
    myisam/ft_static.c:
      Removed compiler warning and fixed wrong return value
    myisam/mi_check.c:
      Clean up multi-key-cache usage
    myisam/mi_checksum.c:
      Removed not used variable
    myisam/mi_close.c:
      keycache -> key_cache
    myisam/mi_delete_all.c:
      keycache -> key_cache
    myisam/mi_extra.c:
      keycache -> key_cache
      Removed HA_EXTRA_SET_KEY_CACHE
    myisam/mi_keycache.c:
      Changed logic so that it's MyISAM that is responsible for assign tables to different key caches instead of the upper level
    myisam/mi_locking.c:
      Don't change key cache on unlock (must be done before)
    myisam/mi_open.c:
      Fetch key cache to use from multi_key_cache_search()
    myisam/mi_page.c:
      keycache -> key_cache
    myisam/mi_panic.c:
      keycache -> key_cache
    myisam/mi_preload.c:
      keycache -> key_cache
    myisam/mi_test1.c:
      Use KEY_CACHE_BLOCK_SIZE
    myisam/mi_test2.c:
      Always test resize_key_cache()
    myisam/mi_test3.c:
      Use KEY_CACHE_BLOCK_SIZE instead of 512
    myisam/myisamchk.c:
      update for multiple key caches
    myisam/myisamdef.h:
      Remove reg_keycache
      Add unique_name_length for storing length of unique_file_name
    myisam/myisamlog.c:
      Change how end_key_cache() is called
    mysql-test/mysql-test-run.sh:
      Fixed web link
      Added name of failed test to abort row.
    mysql-test/r/alter_table.result:
      Testing of ALTER TABLE ... [DEFAULT] CHARACTER SET
    mysql-test/r/case.result:
      Update result for DEFAULT CHARSET...
    mysql-test/r/cast.result:
      Update result for DEFAULT CHARSET...
    mysql-test/r/create.result:
      Update result for DEFAULT CHARSET...
    mysql-test/r/ctype_collate.result:
      Update result for DEFAULT CHARSET...
    mysql-test/r/ctype_latin1_de.result:
      Update result for DEFAULT CHARSET...
    mysql-test/r/ctype_many.result:
      Update result for DEFAULT CHARSET...
    mysql-test/r/ctype_mb.result:
      Update result for DEFAULT CHARSET...
    mysql-test/r/ctype_recoding.result:
      Update result for DEFAULT CHARSET...
    mysql-test/r/ctype_ucs.result:
      Update result for DEFAULT CHARSET...
    mysql-test/r/derived.result:
      Use STRAIGHT_JOIN to make join order predictable
    mysql-test/r/fulltext.result:
      Update result for DEFAULT CHARSET...
    mysql-test/r/func_str.result:
      Update result for DEFAULT CHARSET...
    mysql-test/r/func_system.result:
      Update result for DEFAULT CHARSET...
    mysql-test/r/gis-rtree.result:
      Update result for DEFAULT CHARSET...
    mysql-test/r/innodb.result:
      Update result for DEFAULT CHARSET...
    mysql-test/r/key_cache.result:
      Update test for new key cache syntax.
      Added more tests
    mysql-test/r/merge.result:
      Update result for DEFAULT CHARSET...
    mysql-test/r/preload.result:
      New syntax
    mysql-test/r/show_check.result:
      Update result for DEFAULT CHARSET...
    mysql-test/r/sql_mode.result:
      Update result for DEFAULT CHARSET...
    mysql-test/r/subselect.result:
      Update result for DEFAULT CHARSET...
    mysql-test/r/type_blob.result:
      Update result for DEFAULT CHARSET...
    mysql-test/r/type_enum.result:
      Update result for DEFAULT CHARSET...
    mysql-test/r/type_nchar.result:
      Update result for DEFAULT CHARSET...
    mysql-test/r/type_set.result:
      Update result for DEFAULT CHARSET...
    mysql-test/r/union.result:
      Use STRAIGHT_JOIN to make join order predictable
    mysql-test/t/alter_table.test:
      Testing of ALTER TABLE ... [DEFAULT] CHARACTER SET
    mysql-test/t/ctype_many.test:
      Update result for DEFAULT CHARSET...
    mysql-test/t/derived.test:
      Use STRAIGHT_JOIN to make join order predictable
    mysql-test/t/isam.test:
      Use disable warnings for test loop
    mysql-test/t/join.test:
      Update test now when we only support 61 tables in join
    mysql-test/t/key_cache.test:
      Update test for new key cache syntax.
      Added more tests
    mysql-test/t/preload.test:
      Update for new syntax
    mysql-test/t/union.test:
      Use STRAIGHT_JOIN to make join order predictable
    mysys/Makefile.am:
      Added mf_keycaches.c
    mysys/hash.c:
      TRUE -> 1
    mysys/mf_keycache.c:
      Removed compiler warnings
      Striped end space
      Fixed indentation and improved function comments
      TRUE -> 1
      Changed parameters to end_key_cache() to make it easer to use
      Fixed bug when using key blocks size > 1024 bytes (First part of index file could be overwritten with wrong data)
      Split function flush_key_blocks into two functions to not get mutex used twice when called from flush_all_key_blocks()
    mysys/my_bitmap.c:
      More debugging
      Safe bitmap_free()
      Fixed indentation
    mysys/my_getopt.c:
      Ensure that we initialize option->value, option->max_value and value from GET_ASK_ADDR
    mysys/my_thr_init.c:
      Remove not used mutex THR_LOCK_keycache
    mysys/typelib.c:
      Fixed function comments
    sql-common/client.c:
      CLIENT_MULTI_QUERIES -> CLIENT_MULTI_STATEMENTS
      Fixed the multi_result flag is set also on SELECT;s
    sql/ha_myisam.cc:
      Fixed multiple key_cache handling
      (Now done on MyISAM level)
    sql/ha_myisammrg.cc:
      Fixed multiple key_cache handling
      (Now done on MyISAM level)
    sql/handler.cc:
      New multi key cache handling
    sql/handler.h:
      New multi key cache handling
      Added support for default character set
    sql/item.h:
      Added function cleanup() (Needed for prepared statements / cursors)
    sql/item_cmpfunc.h:
      Added cleanup function
    sql/item_func.cc:
      Indentation cleanup
    sql/mysql_priv.h:
      New multi-key-cache functions
      Removed LOCK_assign
    sql/mysqld.cc:
      New multi-key-cache handling
      Fixed that variable have_compress is set correctly
    sql/protocol.cc:
      SELECT didn't work reliable in multi-statements
    sql/set_var.cc:
      Support for new key cache variables
    sql/set_var.h:
      Support for new key cache variables
    sql/share/czech/errmsg.txt:
      New error messages
    sql/share/danish/errmsg.txt:
      New error messages
    sql/share/dutch/errmsg.txt:
      New error messages
    sql/share/english/errmsg.txt:
      New error messages
    sql/share/estonian/errmsg.txt:
      New error messages
    sql/share/french/errmsg.txt:
      New error messages
    sql/share/german/errmsg.txt:
      New error messages
    sql/share/greek/errmsg.txt:
      New error messages
    sql/share/hungarian/errmsg.txt:
      New error messages
    sql/share/italian/errmsg.txt:
      New error messages
    sql/share/japanese/errmsg.txt:
      New error messages
    sql/share/korean/errmsg.txt:
      New error messages
    sql/share/norwegian-ny/errmsg.txt:
      New error messages
    sql/share/norwegian/errmsg.txt:
      New error messages
    sql/share/polish/errmsg.txt:
      New error messages
    sql/share/portuguese/errmsg.txt:
      New error messages
    sql/share/romanian/errmsg.txt:
      New error messages
    sql/share/russian/errmsg.txt:
      New error messages
    sql/share/serbian/errmsg.txt:
      New error messages
    sql/share/slovak/errmsg.txt:
      New error messages
    sql/share/spanish/errmsg.txt:
      New error messages
    sql/share/swedish/errmsg.txt:
      New error messages
    sql/share/ukrainian/errmsg.txt:
      New error messages
    sql/sql_base.cc:
      Removed all key_cache handling (this is now done on MyISAM level)
      Change table_charset -> default_table_charset
    sql/sql_db.cc:
      table_charset -> default_table_charset
    sql/sql_delete.cc:
      table_charset -> default_table_charset
    sql/sql_lex.cc:
      CLIENT_MULTI_QUERIES -> CLIENT_MULTI_STATEMENTS
    sql/sql_lex.h:
      New option to store a name and length
    sql/sql_parse.cc:
      Support for mysql_set_server_option()
      Reset "default" keycache status variables in 'FLUSH STATUS' (Need to be improved later)
    sql/sql_show.cc:
      Add DEFAULT before CHARSET (for table character sets)
      Fetch key cache variables from 'sql_key_cache'
    sql/sql_table.cc:
      table_charset -> default_table_charset
      New multi-key-cache handling
    sql/sql_test.cc:
      Write information from all key caches
    sql/sql_yacc.yy:
      Changed syntax for CACHE INDEX ...
      Force user to use DEFAULT before database/table level character sets
    sql/structs.h:
      Added SHOW_KEY_CACHE_LONG (to get values from sql_key_cache)
    sql/table.cc:
      table_charset -> default_table_charset
    sql/table.h:
      New key cache handling (this is now done in mysys/mf_keycaches.c)
    sql/unireg.h:
      A
    e72124c4
ha_myisam.cc 40.8 KB