An error occurred fetching the project authors.
  1. 28 Jan, 2006 1 commit
    • unknown's avatar
      WL#1359 NDB: Add table handler and table information available from SQL commands · f57e0d8e
      unknown authored
      add a FILES table that allows the user to run SQL queries on the files used
      to store their tables.
      
      Currently supports NDB
      
      
      sql/ha_berkeley.cc:
        Add fill_files_table
      sql/ha_blackhole.cc:
        Add fill_files_table
      sql/ha_federated.cc:
        Add fill_files_table
      sql/ha_heap.cc:
        Add fill_files_table
      sql/ha_innodb.cc:
        Add fill_files_table
      sql/ha_myisam.cc:
        Add fill_files_table
      sql/ha_myisammrg.cc:
        Add fill_files_table
      sql/ha_ndbcluster.cc:
        Add fill_files_table and implementation for NDB disk data DATAFILES and UNDOFILES
      sql/ha_partition.cc:
        Add fill_files_table
      sql/handler.h:
        Add fill_files_table to handlerton
      sql/log.cc:
        Add fill_files_table
      sql/mysql_priv.h:
        Add schema_table_store_record as a function that handlertons can call to store rows in INFORMATION_SCHEMA.FILES
      sql/sql_show.cc:
        implement the INFORMATION_SCHEMA.FILES table.
        
        Eventually this may move to PERFORMANCE_SCHEMA.
        
        It currently exists to allow users to query disk usage for NDB disk data tables.
      storage/csv/ha_tina.cc:
        Add fill_files_table
      f57e0d8e
  2. 17 Jan, 2006 1 commit
    • unknown's avatar
      WL #2604: Partition Management · 19bbb7cc
      unknown authored
      Optimised version of ADD/DROP/REORGANIZE partitions for
      non-NDB storage engines.
      New syntax to handle REBUILD/OPTIMIZE/ANALYZE/CHECK/REPAIR partitions
      Quite a few bug fixes
      
      
      include/thr_lock.h:
        New method to downgrade locks from TL_WRITE_ONLY
        Possibility to upgrade lock while aborting locks
      mysql-test/r/ndb_autodiscover.result:
        Fix for lowercase and that all NDB tables are now partitioned
      mysql-test/r/ndb_bitfield.result:
        Fix for lowercase and that all NDB tables are now partitioned
      mysql-test/r/ndb_gis.result:
        Fix for lowercase and that all NDB tables are now partitioned
      mysql-test/r/ndb_partition_key.result:
        New test case
      mysql-test/r/partition.result:
        New test case
      mysql-test/r/partition_error.result:
        New test case
      mysql-test/r/partition_mgm_err.result:
        Fix of test case results
      mysql-test/t/disabled.def:
        partition_03ndb still has bug
      mysql-test/t/ndb_partition_key.test:
        New test cases for new functionality and bugs
      mysql-test/t/partition.test:
        New test cases for new functionality and bugs
      mysql-test/t/partition_error.test:
        New test cases for new functionality and bugs
      mysql-test/t/partition_mgm_err.test:
        New test cases for new functionality and bugs
      mysys/thr_lock.c:
        New method to downgrade TL_WRITE_ONLY locks
        Possibility to specify if locks are to be upgraded at abort locks
      sql/ha_archive.cc:
        New handlerton methods
      sql/ha_berkeley.cc:
        New handlerton methods
      sql/ha_blackhole.cc:
        New handlerton methods
      sql/ha_federated.cc:
        New handlerton methods
      sql/ha_heap.cc:
        New handlerton methods
      sql/ha_innodb.cc:
        New handlerton methods
      sql/ha_myisam.cc:
        New handlerton methods
      sql/ha_myisammrg.cc:
        New handlerton methods
      sql/ha_ndbcluster.cc:
        New handlerton methods
        Moved out packfrm and unpackfrm methods
        Adapted many parts to use table_share instead of table->s
        Ensured that .ndb file uses filename and not tablename
        according to new encoding of names (WL 1324)
        All NDB tables are partitioned and set up partition info
        Fixed such that tablenames use tablenames and not filenames in NDB
        NDB uses auto partitioning for ENGINE=NDB tables
        Warning for very large tables
        Set RANGE data
        Set LIST data
        New method to set-up partition info
        Set Default number of partitions flag
        Set linear hash flag
        Set node group array
        Set number of fragments
        Set max rows
        Set tablespace names
        New method to get number of partitions of table to use at open table
      sql/ha_ndbcluster.h:
        Removed partition_flags and alter_table_flags from handler class
        A couple of new and changed method headers
      sql/ha_ndbcluster_binlog.cc:
        Use new method headers
      sql/ha_partition.cc:
        New handlerton methods
        Lots of new function headers
        Use #P# as separator between table name and partition name and
        #SP# as separator between partition name and subpartition name
        Use filename encoding for files both of table name part and of
        partition name parts
        New method to drop partitions based on partition state
        New method to rename partitions based on partition state
        New methods to optimize, analyze, check and repair partitions
        New methods to optimize, analyze, check and repair table
        Helper method to create new partition, open it and external lock
        it, not needed to lock it internally since no one else knows about
        it yet.
        Cleanup method at error for new partitions
        New methods to perform bulk of work at ADD/REORGANIZE partitions
        (change_partitions, copy_partitions)
      sql/ha_partition.h:
        New methods and variables
        A few dropped ones and a few changed ones
      sql/handler.cc:
        Handlerton interface changes
        New flag to open_table_from_share
      sql/handler.h:
        New alter_table_flags
        New partition flags
        New partition states
        More states for default handling
        Lots of new, dropped and changed interfaces
      sql/lex.h:
        Added REBUILD and changed name of REORGANISE to REORGANIZE
      sql/lock.cc:
        Method to downgrade locks
        Able to specify if locks upgraded on abort locks
      sql/log.cc:
        New handlerton methods
      sql/mysql_priv.h:
        Lots of new interfaces
      sql/share/errmsg.txt:
        Lots of new, dropped and changed error messages
      sql/sql_base.cc:
        Adapted to new method headers
        New method to abort and upgrade lock
        New method to close open tables and downgrade lock
        New method to wait for completed table
      sql/sql_lex.h:
        New flags
      sql/sql_partition.cc:
        Return int instead of bool in get_partition_id
        More defaults handling
        Make use of new mem_alloc_error method
        More work on function headers
        Changes to generate partition syntax to cater for intermediate
        partition states
        Lots of new code with large comments describing new features for
        Partition Management:
        ADD/DROP/REORGANIZE/OPTIMIZE/ANALYZE/CHECK/REPAIR partitions
      sql/sql_show.cc:
        Minors
      sql/sql_table.cc:
        Moved a couple of methods
        New methods to copy create lists and key lists
        for use with mysql_prepare_table
        New method to write frm file
        New handling of handlers with auto partitioning
        Fix CREATE TABLE LIKE
        Moved code for ADD/DROP/REORGANIZE partitions
        Use handlerton method for alter_table_flags
      sql/sql_yacc.yy:
        More memory alloc error checks
        New syntax for REBUILD, ANALYZE, CHECK, OPTIMIZE, REPAIR partitions
      sql/table.cc:
        Fix length of extra part to be 4 bytes
        Partition state introduced in frm file
      sql/table.h:
        Partition state introduced
      sql/unireg.cc:
        Partition state introduced
        Default partition
      storage/csv/ha_tina.cc:
        New handlerton methods
      storage/example/ha_example.cc:
        New handlerton methods
      storage/ndb/include/kernel/ndb_limits.h:
        RANGE DATA
      storage/ndb/include/kernel/signaldata/AlterTable.hpp:
        New interfaces in ALTER TABLE towards NDB kernel
      storage/ndb/include/kernel/signaldata/DiAddTab.hpp:
        New section
      storage/ndb/include/kernel/signaldata/DictTabInfo.hpp:
        Lots of new parts of table description
      storage/ndb/include/kernel/signaldata/LqhFrag.hpp:
        tablespace id specified in LQHFRAGREQ
      storage/ndb/include/ndbapi/NdbDictionary.hpp:
        Lots of new methods in NDB dictionary
      storage/ndb/src/common/debugger/signaldata/DictTabInfo.cpp:
        Lots of new variables in table description
      storage/ndb/src/kernel/blocks/dbdict/Dbdict.cpp:
        Lots of new variables in table description
      storage/ndb/src/kernel/blocks/dbdict/Dbdict.hpp:
        Lots of new variables in table description
      storage/ndb/src/kernel/blocks/dblqh/DblqhMain.cpp:
        New error insertion
      storage/ndb/src/kernel/blocks/dbtup/DbtupMeta.cpp:
        a few extra jam's
      storage/ndb/src/ndbapi/NdbBlob.cpp:
        Changes to definition of blob tables
      storage/ndb/src/ndbapi/NdbDictionary.cpp:
        Lots of new stuff in NDB dictionary
      storage/ndb/src/ndbapi/NdbDictionaryImpl.cpp:
        Lots of new stuff in NDB dictionary
      storage/ndb/src/ndbapi/NdbDictionaryImpl.hpp:
        Lots of new stuff in NDB dictionary
      storage/ndb/test/ndbapi/test_event.cpp:
        removed use of methods no longer in existence
      storage/ndb/tools/restore/Restore.cpp:
        Renamed variable
      19bbb7cc
  3. 15 Jan, 2006 1 commit
    • unknown's avatar
      Changes from innodb-4.1-ss14 snapshot · 5497a05a
      unknown authored
       Fixed BUG#14056: Column prefix index on UTF-8 primary key
       causes "Can't find record.."
       Also fixed bug 15991.
      
      
      innobase/include/os0file.h:
        Changes from innodb-4.1-ss14 snapshot
         os_file_hadle_error(): Map the error codes EXDEV, ENOTDIR, and EISDIR
         to the new code OS_FILE_PATH_ERROR. Treat this code as OS_FILE_PATH_ERROR.
         This fixes the crash on RENAME TABLE when the .ibd file is a symbolic
         link to a different file system. (Bug 15991)
      innobase/os/os0file.c:
        Changes from innodb-4.1-ss14 snapshot
         os_file_hadle_error(): Map the error codes EXDEV, ENOTDIR, and EISDIR
         to the new code OS_FILE_PATH_ERROR. Treat this code as OS_FILE_PATH_ERROR.
         This fixes the crash on RENAME TABLE when the .ibd file is a symbolic
         link to a different file system. (Bug 15991)
      mysql-test/r/innodb.result:
        Changes from innodb-4.1-ss14 snapshot
         Fixed BUG#14056: Column prefix index on UTF-8 primary key
         causes "Can't find record.."
      mysql-test/t/innodb.test:
        Changes from innodb-4.1-ss14 snapshot
         Fixed BUG#14056: Column prefix index on UTF-8 primary key
         causes "Can't find record.."
      sql/ha_innodb.cc:
        Changes from innodb-4.1-ss14 snapshot
         Fixed BUG#14056: Column prefix index on UTF-8 primary key
         causes "Can't find record.."
      5497a05a
  4. 07 Jan, 2006 1 commit
    • unknown's avatar
      WL#2935 - SHOW STATUS support in plugins · 031ee043
      unknown authored
      The patch adds DYNAMIC_ARRAY all_status_vars, which is now the
      sole source of status information for SHOW STATUS.  Status
      variables can be added to and removed from the array dynamically.
      SHOW STATUS command uses this array instead of static array
      from mysqld.cc
      Compatibility with the old, global list of status variables is
      preserved in init_server_components(), where this global list is
      simply appended to all_status_vars.
      
      
      include/plugin.h:
        WL#2935 - SHOW STATUS support in plugins
      plugin/fulltext/plugin_example.c:
        WL#2935 - SHOW STATUS support in plugins
        example
      sql/ha_innodb.cc:
        s/struct show_var_st/SHOW_VAR/
      sql/ha_innodb.h:
        s/struct show_var_st/SHOW_VAR/
      sql/mysql_priv.h:
        WL#2935 - SHOW STATUS support in plugins
        add_status_vars(), remove_status_vars()
      sql/mysqld.cc:
        bug: plugin_free must be called even with --skip-grants
        add_status_vars()/free_status_vars(), remove unused SHOW_xxx_CONST
        s/struct show_var_st/SHOW_VAR/
      sql/set_var.cc:
        s/struct show_var_st/SHOW_VAR/
      sql/sql_parse.cc:
        s/struct show_var_st/SHOW_VAR/
      sql/sql_plugin.cc:
        WL#2935 - SHOW STATUS support in plugins
      sql/sql_plugin.h:
        WL#2935 - SHOW STATUS support in plugins
      sql/sql_show.cc:
        WL#2935 - SHOW STATUS support in plugins
        DYNAMIC_ARRAY all_status_vars, add_status_vars(), remove_status_vars()
        s/struct show_var_st/SHOW_VAR/
      sql/structs.h:
        WL#2935 - SHOW STATUS support in plugins
        SHOW STATUS definitions moved to include/plugin.h and sql_plugin.h
        s/struct show_var_st/SHOW_VAR/
      031ee043
  5. 31 Dec, 2005 1 commit
    • unknown's avatar
      WL#1324 table name to file name encoding · 9c7412ca
      unknown authored
      - Encoding itself, implemented as a charset
        "filename". Originally planned to use '.'
        as an escape character, but now changed to '@'
        for two reasons: "ls" does not return
        file names starting with '.' considering them
        as a kind of hidden files; some platforms
        do not allow several dots in a file name.
      - replacing many calls of my_snprintf() and
        strnxmov() to the new build_table_filename().
      - Adding MY_APPEND_EXT mysys flag, to append
        an extention rather that replace it.
      - Replacing all numeric constants in fn_format
        flag arguments to their mysys definitions, e.g.
        MY_UNPACK_FILENAME,
      - Predictability in several function/methods:
        when a table name can appear with or withot .frm
        extension. Some functions/methods were changed
        so accept names strictly with .frm, other - strictly
        without .frm extensions. Several DBUG_ASSERTs were
        added to check whether an extension is passed.
      Many files:
        table name to file name encoding
      mysql_priv.h:
        Prototypes for new table name encoding tools.
      ctype-utf8.c:
        Implementing "filename" charset for
        table name to file name encoding.
      row0mysql.c:
        Fixing table name prefix.
      mf_format.c:
        Adding MY_APPEND_EXT processing.
      Many files:
        Fixing tests.
      my_sys.h:
        Adding new flag to append rather than replace an extension.
      m_ctype.h:
        Adding "filename" charset definition.
      
      
      include/m_ctype.h:
        Adding "filename" charset definition.
      include/my_sys.h:
        Adding new flag to append rather than replace an extension.
      mysql-test/t/alter_table.test:
        Fixing tests.
      mysql-test/t/create.test:
        Fixing tests.
      mysql-test/t/show_check.test:
        Fixing tests.
      mysql-test/r/alter_table.result:
        Fixing tests.
      mysql-test/r/create.result:
        Fixing tests.
      mysql-test/r/mysqldump.result:
        Fixing tests.
      mysys/mf_format.c:
        Adding MY_APPEND_EXT processing.
      sql/discover.cc:
        table name to file name encoding
      sql/ha_berkeley.cc:
        table name to file name encoding
      sql/ha_innodb.cc:
        table name to file name encoding
      sql/ha_myisam.cc:
        table name to file name encoding
      sql/ha_myisammrg.cc:
        table name to file name encoding
      sql/ha_ndbcluster.cc:
        table name to file name encoding
      sql/ha_partition.cc:
        table name to file name encoding
      sql/handler.cc:
        table name to file name encoding.
      sql/init.cc:
        table name to file name encoding
      sql/mysqld.cc:
        table name to file name encoding
      sql/parse_file.cc:
        table name to file name encoding
      sql/sql_acl.cc:
        table name to file name encoding
      sql/sql_base.cc:
        table name to file name encoding
      sql/sql_db.cc:
        table name to file name encoding
      sql/sql_delete.cc:
        table name to file name encoding
      sql/sql_rename.cc:
        table name to file name encoding
      sql/sql_show.cc:
        table name to file name encoding
      sql/sql_table.cc:
        table name to file name encoding
      sql/sql_trigger.cc:
        table name to file name encoding
      sql/sql_view.cc:
        table name to file name encoding
      sql/strfunc.cc:
        table name to file name encoding
      sql/table.cc:
        table name to file name encoding
      sql/unireg.cc:
        table name to file name encoding
      storage/innobase/row/row0mysql.c:
        Fixing table name prefix.
        ,
      storage/myisam/mi_create.c:
        table name to file name encoding
      storage/myisam/mi_delete_table.c:
        table name to file name encoding
      storage/myisam/mi_open.c:
        table name to file name encoding
      storage/myisam/mi_rename.c:
        table name to file name encoding
      strings/ctype-utf8.c:
        Implementing "filename" charset for
        table name to file name encoding.
      sql/mysql_priv.h:
        Prototypes for new table name encoding tools.
      storage/myisammrg/myrg_create.c:
        table name to file name encoding
      storage/myisammrg/myrg_open.c:
        table name to file name encoding
      9c7412ca
  6. 22 Dec, 2005 1 commit
    • unknown's avatar
      WL#1012: All changes as one single changeset. · 09346e6e
      unknown authored
      This includes both code and test cases.
      
      
      BitKeeper/deleted/.del-ctype_ucs_binlog.result~280d136b1a0bcf17:
        Delete: mysql-test/r/ctype_ucs_binlog.result
      BitKeeper/deleted/.del-rpl_delete_all.result~7c050d592614b3f:
        Delete: mysql-test/r/rpl_delete_all.result
      BitKeeper/deleted/.del-rpl000013-slave.opt~18266ad8a2403e8d:
        Delete: mysql-test/t/rpl000013-slave.opt
      BitKeeper/deleted/.del-rpl_delete_all.test~700a1490277780e0:
        Delete: mysql-test/t/rpl_delete_all.test
      mysql-test/extra/binlog_tests/binlog.test:
        Import patch wl1012.patch
      mysql-test/extra/binlog_tests/blackhole.test:
        Import patch wl1012.patch
      mysql-test/extra/binlog_tests/ctype_cp932.test:
        Import patch wl1012.patch
      mysql-test/extra/binlog_tests/ctype_cp932_binlog.test:
        Import patch wl1012.patch
      mysql-test/extra/binlog_tests/ctype_ucs_binlog.test:
        Import patch wl1012.patch
      mysql-test/extra/binlog_tests/drop_temp_table.test:
        Import patch wl1012.patch
      mysql-test/extra/binlog_tests/insert_select-binlog.test:
        Import patch wl1012.patch
      mysql-test/extra/binlog_tests/mix_innodb_myisam_binlog.test:
        Import patch wl1012.patch
      mysql-test/extra/rpl_tests/rpl_ddl.test:
        Import patch wl1012.patch
      mysql-test/extra/rpl_tests/rpl_deadlock.test:
        Import patch wl1012.patch
      mysql-test/extra/rpl_tests/rpl_err_ignoredtable.test:
        Import patch wl1012.patch
      mysql-test/extra/rpl_tests/rpl_flsh_tbls.test:
        Import patch wl1012.patch
      mysql-test/extra/rpl_tests/rpl_loaddata_m.test:
        Import patch wl1012.patch
      mysql-test/extra/rpl_tests/rpl_log.test:
        Import patch wl1012.patch
      mysql-test/extra/rpl_tests/rpl_max_relay_size.test:
        Import patch wl1012.patch
      mysql-test/extra/rpl_tests/rpl_multi_query.test:
        Import patch wl1012.patch
      mysql-test/extra/rpl_tests/rpl_reset_slave.test:
        Import patch wl1012.patch
      mysql-test/extra/rpl_tests/rpl_stm_000001.test:
        Import patch wl1012.patch
      mysql-test/extra/rpl_tests/rpl_stm_EE_err.test:
        Import patch wl1012.patch
      mysql-test/extra/rpl_tests/rpl_stm_charset.test:
        Import patch wl1012.patch
      mysql-test/extra/rpl_tests/rpl_user_variables.test:
        Import patch wl1012.patch
      mysql-test/r/binlog_stm_binlog.result:
        Import patch wl1012.patch
      mysql-test/r/binlog_stm_blackhole.result:
        Import patch wl1012.patch
      mysql-test/r/binlog_stm_ctype_cp932.result:
        Import patch wl1012.patch
      mysql-test/r/binlog_stm_ctype_ucs.result:
        Import patch wl1012.patch
      mysql-test/r/binlog_stm_drop_tmp_tbl.result:
        Import patch wl1012.patch
      mysql-test/r/binlog_stm_insert_select.result:
        Import patch wl1012.patch
      mysql-test/r/binlog_stm_mix_innodb_myisam.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_000012.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_000015.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_deadlock_innodb.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_flushlog_loop.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_loaddata_s.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_stm_000001.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_stm_EE_err.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_stm_charset.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_stm_ddl.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_stm_err_ignoredtable.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_stm_flsh_tbls.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_stm_loaddata_m.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_stm_log.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_stm_max_relay_size.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_stm_multi_query.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_stm_mystery22.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_stm_reset_slave.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_stm_rewrt_db.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_stm_sp.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_stm_timezone.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_stm_until.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_stm_user_variables.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_stm_view.result:
        Import patch wl1012.patch
      mysql-test/t/binlog_row_binlog-master.opt:
        Import patch wl1012.patch
      mysql-test/t/rpl_000012.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_000015-slave.sh:
        Import patch wl1012.patch
      mysql-test/t/rpl_000015.slave-mi:
        Import patch wl1012.patch
      mysql-test/t/rpl_000015.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_deadlock_innodb-slave.opt:
        Import patch wl1012.patch
      mysql-test/t/rpl_flushlog_loop-master.opt:
        Import patch wl1012.patch
      mysql-test/t/rpl_flushlog_loop-master.sh:
        Import patch wl1012.patch
      mysql-test/t/rpl_flushlog_loop-slave.opt:
        Import patch wl1012.patch
      mysql-test/t/rpl_flushlog_loop-slave.sh:
        Import patch wl1012.patch
      mysql-test/t/rpl_flushlog_loop.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_loaddata_s-slave.opt:
        Import patch wl1012.patch
      mysql-test/t/rpl_loaddata_s.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_stm_000001-slave.opt:
        Import patch wl1012.patch
      mysql-test/t/rpl_stm_err_ignoredtable-slave.opt:
        Import patch wl1012.patch
      mysql-test/t/rpl_stm_loaddata_m-master.opt:
        Import patch wl1012.patch
      mysql-test/t/rpl_stm_log-master.opt:
        Import patch wl1012.patch
      mysql-test/t/rpl_stm_log-slave.opt:
        Import patch wl1012.patch
      mysql-test/t/rpl_stm_mystery22.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_stm_rewrt_db-slave.opt:
        Import patch wl1012.patch
      mysql-test/t/rpl_stm_rewrt_db.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_stm_sp-master.opt:
        Import patch wl1012.patch
      mysql-test/t/rpl_stm_sp-slave.opt:
        Import patch wl1012.patch
      mysql-test/t/rpl_stm_sp.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_stm_timezone-master.opt:
        Import patch wl1012.patch
      mysql-test/t/rpl_stm_timezone-slave.opt:
        Import patch wl1012.patch
      BUILD/SETUP.sh:
        Import patch wl1012.patch
      Makefile.am:
        Import patch wl1012.patch
      mysql-test/t/rpl_stm_timezone.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_stm_until.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_stm_view.test:
        Import patch wl1012.patch
      client/Makefile.am:
        Import patch wl1012.patch
      client/client_priv.h:
        Import patch wl1012.patch
      client/mysqlbinlog.cc:
        Import patch wl1012.patch
      configure.in:
        Import patch wl1012.patch
      include/Makefile.am:
        Import patch wl1012.patch
      include/base64.h:
        Import patch wl1012.patch
      include/config-win.h:
        Import patch wl1012.patch
      include/my_base.h:
        Import patch wl1012.patch
      include/my_global.h:
        Import patch wl1012.patch
      mysql-test/Makefile.am:
        Import patch wl1012.patch
      mysql-test/mysql-test-run.pl:
        Import patch wl1012.patch
      mysql-test/mysql-test-run.sh:
        Import patch wl1012.patch
      mysql-test/r/date_formats.result:
        Import patch wl1012.patch
      mysql-test/r/flush_block_commit.result:
        Import patch wl1012.patch
      mysql-test/r/innodb.result:
        Import patch wl1012.patch
      mysql-test/r/rpl000017.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_change_master.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_commit_after_flush.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_create_database.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_do_grant.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_loaddata.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_log_pos.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_multi_delete.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_multi_update.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_openssl.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_replicate_do.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_rotate_logs.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_server_id1.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_server_id2.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_temporary.result:
        Import patch wl1012.patch
      mysql-test/r/user_var-binlog.result:
        Import patch wl1012.patch
      mysql-test/t/create_select_tmp.test:
        Import patch wl1012.patch
      mysql-test/t/date_formats.test:
        Import patch wl1012.patch
      mysql-test/t/disabled.def:
        Import patch wl1012.patch
      mysql-test/t/innodb.test:
        Import patch wl1012.patch
      mysql-test/t/mysqlbinlog.test:
        Import patch wl1012.patch
      mysql-test/t/mysqlbinlog2.test:
        Import patch wl1012.patch
      mysql-test/t/rpl000002.test:
        Import patch wl1012.patch
      mysql-test/t/rpl000006.test:
        Import patch wl1012.patch
      mysql-test/t/rpl000013.test:
        Import patch wl1012.patch
      mysql-test/t/rpl000017.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_auto_increment.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_change_master.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_commit_after_flush.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_create_database.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_do_grant.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_drop.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_empty_master_crash.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_failed_optimize.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_heap.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_insert_id.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_insert_ignore.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_loaddata.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_log_pos.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_multi_delete.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_multi_update.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_multi_update2.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_multi_update3.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_openssl.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_redirect.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_relayrotate.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_replicate_do.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_rotate_logs.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_server_id1.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_sp_effects.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_temporary.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_trigger.test:
        Import patch wl1012.patch
      mysql-test/t/sp.test:
        Import patch wl1012.patch
      mysql-test/t/user_var-binlog.test:
        Import patch wl1012.patch
      mysys/Makefile.am:
        Import patch wl1012.patch
      mysys/base64.c:
        Import patch wl1012.patch
      sql/Makefile.am:
        Import patch wl1012.patch
      sql/ha_innodb.cc:
        Import patch wl1012.patch
      sql/ha_innodb.h:
        Import patch wl1012.patch
      sql/ha_partition.cc:
        Import patch wl1012.patch
      sql/handler.cc:
        Import patch wl1012.patch
      sql/handler.h:
        Import patch wl1012.patch
      sql/item_sum.cc:
        Import patch wl1012.patch
      sql/log.cc:
        Import patch wl1012.patch
      sql/log_event.cc:
        Import patch wl1012.patch
      sql/log_event.h:
        Import patch wl1012.patch
      sql/mysql_priv.h:
        Import patch wl1012.patch
      sql/mysqld.cc:
        Import patch wl1012.patch
      sql/rpl_filter.h:
        Import patch wl1012.patch
      sql/set_var.cc:
        Import patch wl1012.patch
      sql/share/errmsg.txt:
        Import patch wl1012.patch
      sql/slave.cc:
        Import patch wl1012.patch
      sql/slave.h:
        Import patch wl1012.patch
      sql/sp.cc:
        Import patch wl1012.patch
      sql/sp_head.cc:
        Import patch wl1012.patch
      sql/sql_acl.cc:
        Import patch wl1012.patch
      sql/sql_base.cc:
        Import patch wl1012.patch
      sql/sql_class.cc:
        Import patch wl1012.patch
      sql/sql_class.h:
        Import patch wl1012.patch
      sql/sql_delete.cc:
        Import patch wl1012.patch
      sql/sql_insert.cc:
        Import patch wl1012.patch
      sql/sql_lex.h:
        Import patch wl1012.patch
      sql/sql_list.h:
        Import patch wl1012.patch
      sql/sql_load.cc:
        Import patch wl1012.patch
      sql/sql_parse.cc:
        Import patch wl1012.patch
      sql/sql_plugin.cc:
        Import patch wl1012.patch
      sql/sql_rename.cc:
        Import patch wl1012.patch
      sql/sql_repl.h:
        Import patch wl1012.patch
      sql/sql_select.cc:
        Import patch wl1012.patch
      sql/sql_show.cc:
        Import patch wl1012.patch
      sql/sql_table.cc:
        Import patch wl1012.patch
      sql/sql_udf.cc:
        Import patch wl1012.patch
      sql/sql_union.cc:
        Import patch wl1012.patch
      sql/sql_update.cc:
        Import patch wl1012.patch
      sql/sql_yacc.yy:
        Import patch wl1012.patch
      sql/table.cc:
        Import patch wl1012.patch
      sql/table.h:
        Import patch wl1012.patch
      storage/innobase/include/lock0lock.h:
        Import patch wl1012.patch
      storage/innobase/include/row0mysql.h:
        Import patch wl1012.patch
      storage/innobase/include/row0vers.h:
        Import patch wl1012.patch
      storage/innobase/lock/lock0lock.c:
        Import patch wl1012.patch
      storage/innobase/row/row0mysql.c:
        Import patch wl1012.patch
      storage/innobase/row/row0sel.c:
        Import patch wl1012.patch
      storage/innobase/row/row0vers.c:
        Import patch wl1012.patch
      09346e6e
  7. 21 Dec, 2005 1 commit
    • unknown's avatar
      Finalize storage engine plugins · 613dd50a
      unknown authored
      Give BerkeleyDB savepoints
      Remove "enum db_type" from most of the code
      
      
      storage/example/ha_example.h:
        Rename: sql/examples/ha_example.h -> storage/example/ha_example.h
      storage/csv/ha_tina.h:
        Rename: sql/examples/ha_tina.h -> storage/csv/ha_tina.h
      config/ac-macros/storage.m4:
        if hton name is "no", then we don't install it as a builtin
      configure.in:
        pluggable changes
      include/plugin.h:
        version field
      mysql-test/r/bdb.result:
        savepoint results copied from innodb test
      mysql-test/r/information_schema.result:
        PLUGINS information schema
      mysql-test/r/information_schema_db.result:
        PLUGINS information schema
      mysql-test/t/bdb.test:
        savepoint test copied from innodb test
      sql/Makefile.am:
        tina and example are not here anymore
      sql/authors.h:
        minor tweek
      sql/ha_archive.cc:
        remove unwanted handlerton entries
      sql/ha_berkeley.cc:
        remove unwanted handlerton entries
        support for savepoints
        changes to show logs
      sql/ha_blackhole.cc:
        remove unwanted handlerton entries
      sql/ha_federated.cc:
        remove unwanted handlerton entries
      sql/ha_heap.cc:
        remove unwanted handlerton entries
      sql/ha_innodb.cc:
        remove unwanted handlerton entries
        changes for show status
      sql/ha_myisam.cc:
        remove unwanted handlerton entries
      sql/ha_myisammrg.cc:
        remove unwanted handlerton entries
      sql/ha_ndbcluster.cc:
        remove unwanted handlerton entries
        changes to stat_print
      sql/ha_partition.cc:
        remove unwanted handlerton entries
        bye bye enum db_type
      sql/ha_partition.h:
        bye bye enum db_type
      sql/handler.cc:
        remove unwanted handlerton entries
        bye bye enum db_type
      sql/handler.h:
        remove unwanted handlerton entries
        bye bye enum db_type
        changes to stat_print_fn
      sql/item_sum.cc:
        bye bye enum db_type
      sql/log.cc:
        remove unwanted handlerton entries
      sql/mysql_priv.h:
        bye bye enum db_type
      sql/mysqld.cc:
        bye bye enum db_type
        reorder plugin initialization
      sql/set_var.cc:
        bye bye enum db_type
      sql/set_var.h:
        bye bye enum db_type
      sql/sql_base.cc:
        bye bye enum db_type
      sql/sql_cache.cc:
        bye bye enum db_type
      sql/sql_class.h:
        bye bye enum db_type
      sql/sql_delete.cc:
        bye bye enum db_type
      sql/sql_insert.cc:
        bye bye enum db_type
      sql/sql_lex.h:
        show plugin
      sql/sql_parse.cc:
        bye bye enum db_type
      sql/sql_partition.cc:
        bye bye enum db_type
      sql/sql_plugin.cc:
        loadable storage engines
      sql/sql_plugin.h:
        loadable storage engines
      sql/sql_rename.cc:
        bye bye enum db_type
      sql/sql_select.cc:
        bye bye enum db_type
      sql/sql_show.cc:
        SHOW PLUGIN
        PLUGINS information schema
        changes to show engines
      sql/sql_table.cc:
        bye bye enum db_type
      sql/sql_view.cc:
        bye bye enum db_type
      sql/sql_view.h:
        bye bye enum db_type
      sql/sql_yacc.yy:
        bye bye enum db_type
      sql/table.cc:
        bye bye enum db_type
      sql/table.h:
        bye bye enum db_type
      sql/unireg.cc:
        bye bye enum db_type
      storage/csv/ha_tina.cc:
        make tina into a loadable plugin
      storage/example/ha_example.cc:
        make into a plugin
      storage/csv/Makefile.am:
        New BitKeeper file ``storage/csv/Makefile.am''
      storage/example/Makefile.am:
        New BitKeeper file ``storage/example/Makefile.am''
      613dd50a
  8. 13 Dec, 2005 2 commits
    • unknown's avatar
      Fix BUG#12071: "Windows hang:'Opening tables' or 'Waiting for · 778d212b
      unknown authored
       table' lockup".
       Changes from the innodb-5.0-ss92 snapshot.
       Do not call os_file_create_tmpfile() at runtime. Instead, create
       all tempfiles at startup and guard access to them with mutexes.
      
      
      innobase/btr/btr0sea.c:
        Changes from the innodb-5.0ss92 snapshot.
      innobase/include/buf0buf.h:
        Changes from the innodb-5.0ss92 snapshot.
      innobase/include/os0file.h:
        Changes from the innodb-5.0ss92 snapshot.
      innobase/include/srv0srv.h:
        Changes from the innodb-5.0ss92 snapshot.
      innobase/row/row0ins.c:
        Changes from the innodb-5.0ss92 snapshot.
      innobase/srv/srv0srv.c:
        Changes from the innodb-5.0ss92 snapshot.
      innobase/srv/srv0start.c:
        Changes from the innodb-5.0ss92 snapshot.
      mysql-test/r/innodb.result:
        Changes from the innodb-5.0ss92 snapshot.
      mysql-test/t/innodb.test:
        Changes from the innodb-5.0ss92 snapshot.
      sql/ha_innodb.cc:
        Changes from the innodb-5.0ss92 snapshot.
      778d212b
    • unknown's avatar
      Changes from the innodb-5.1-ss28 snapshot. · ad4d8773
      unknown authored
       Removed include/Makefile.am and the reference to it.
       Deleted db/db0err.h and db directory.
       Check index column sizes in a better way (bug 13315).
       Fixed comments for memory allocation functions and added
       some extra checks. Adapted callers.
      
      
      BitKeeper/deleted/.del-Makefile.am~ab5c84d46412dc2e:
        Delete: storage/innobase/include/Makefile.am
      BitKeeper/deleted/.del-db0err.h~bfeec2efe86ac48b:
        Delete: storage/innobase/db/db0err.h
      mysql-test/r/innodb.result:
        Changes from the innodb-5.1-ss28 snapshot.
      mysql-test/t/innodb.test:
        Changes from the innodb-5.1-ss28 snapshot.
      sql/ha_innodb.cc:
        Changes from the innodb-5.1-ss28 snapshot.
      sql/ha_innodb.h:
        Changes from the innodb-5.1-ss28 snapshot.
      storage/innobase/Makefile.am:
        Changes from the innodb-5.1-ss28 snapshot.
      storage/innobase/configure.in:
        Changes from the innodb-5.1-ss28 snapshot.
      storage/innobase/ha/ha0ha.c:
        Changes from the innodb-5.1-ss28 snapshot.
      storage/innobase/include/ha0ha.h:
        Changes from the innodb-5.1-ss28 snapshot.
      storage/innobase/include/ha0ha.ic:
        Changes from the innodb-5.1-ss28 snapshot.
      storage/innobase/include/mem0mem.h:
        Changes from the innodb-5.1-ss28 snapshot.
      storage/innobase/include/mem0mem.ic:
        Changes from the innodb-5.1-ss28 snapshot.
      storage/innobase/lock/lock0lock.c:
        Changes from the innodb-5.1-ss28 snapshot.
      storage/innobase/mem/mem0mem.c:
        Changes from the innodb-5.1-ss28 snapshot.
      ad4d8773
  9. 12 Dec, 2005 1 commit
    • unknown's avatar
      Fix BUG#12071: "Windows hang: 'Opening tables' or 'Waiting for · 8e3f95b5
      unknown authored
       table' lockup".
       Changes from the innodb-4.1-ss11 snapshot.
       Do not call os_file-create_tmpfile() at runtime. Instead, create
       a tempfile at startup and guard access to it with a mutex.
       Also, fix bugs:
       10511: "Wrong padding of UCS2 CHAR columns in ON UPDATE CASCADE";
       13778: "If FOREIGN_KEY_CHECKS=0, one can create inconsistent FOREIGN
       KEYs". When FOREIGN_KEY_CHECKS=0 we still need to check that
       datatypes between foreign key references are compatible.
       Also, added test cases (also for bug 9802).
      
      
      innobase/dict/dict0dict.c:
        Changes from the innodb-4.1-ss11 snapshot
      innobase/dict/dict0load.c:
        Changes from the innodb-4.1-ss11 snapshot
      innobase/include/dict0dict.h:
        Changes from the innodb-4.1-ss11 snapshot
      innobase/include/dict0load.h:
        Changes from the innodb-4.1-ss11 snapshot
      innobase/include/os0file.h:
        Changes from the innodb-4.1-ss11 snapshot
      innobase/include/rem0cmp.h:
        Changes from the innodb-4.1-ss11 snapshot
      innobase/include/srv0srv.h:
        Changes from the innodb-4.1-ss11 snapshot
      innobase/rem/rem0cmp.c:
        Changes from the innodb-4.1-ss11 snapshot
      innobase/row/row0ins.c:
        Changes from the innodb-4.1-ss11 snapshot
      innobase/row/row0mysql.c:
        Changes from the innodb-4.1-ss11 snapshot
      innobase/srv/srv0srv.c:
        Changes from the innodb-4.1-ss11 snapshot
      innobase/srv/srv0start.c:
        Changes from the innodb-4.1-ss11 snapshot
      libmysqld/ha_blackhole.cc:
        Changes from the innodb-4.1-ss11 snapshot
      mysql-test/r/innodb.result:
        Changes from the innodb-4.1-ss11 snapshot
      mysql-test/t/innodb.test:
        Changes from the innodb-4.1-ss11 snapshot
      sql/ha_innodb.cc:
        Changes from the innodb-4.1-ss11 snapshot
      8e3f95b5
  10. 08 Dec, 2005 1 commit
    • unknown's avatar
      The innodb-5.0-ss52 snapshot changes were erroneously auto-merged · f8d6d137
      unknown authored
       to 5.1. Undoing the merge.
      
      
      mysql-test/r/innodb.result:
        Undoing erroneous auto-merge 5.0 -> 5.1
      mysql-test/t/innodb.test:
        Undoing erroneous auto-merge 5.0 -> 5.1
      sql/ha_innodb.cc:
        Undoing erroneous auto-merge 5.0 -> 5.1
      sql/ha_innodb.h:
        Undoing erroneous auto-merge 5.0 -> 5.1
      storage/innobase/btr/btr0sea.c:
        Undoing erroneous auto-merge 5.0 -> 5.1
      storage/innobase/dict/dict0dict.c:
        Undoing erroneous auto-merge 5.0 -> 5.1
      storage/innobase/dict/dict0load.c:
        Undoing erroneous auto-merge 5.0 -> 5.1
      storage/innobase/include/buf0buf.h:
        Undoing erroneous auto-merge 5.0 -> 5.1
      storage/innobase/include/dict0dict.h:
        Undoing erroneous auto-merge 5.0 -> 5.1
      storage/innobase/include/dict0load.h:
        Undoing erroneous auto-merge 5.0 -> 5.1
      storage/innobase/include/rem0cmp.h:
        Undoing erroneous auto-merge 5.0 -> 5.1
      storage/innobase/rem/rem0cmp.c:
        Undoing erroneous auto-merge 5.0 -> 5.1
      storage/innobase/row/row0mysql.c:
        Undoing erroneous auto-merge 5.0 -> 5.1
      f8d6d137
  11. 06 Dec, 2005 1 commit
    • unknown's avatar
      Fix BUG#14747: "Race condition can cause btr_search_drop_page_hash_index() · b83c2976
      unknown authored
       to crash".
       Changes from snapshot innodb-5.0-ss52.
       Note that buf_block_t::index should be protected by btr_search_latch
       or an s-latch or x-latch on the index page.
       btr_search_drop_page_hash_index(): Read block->index while holding
       btr_search_latch and use the cached value in the loop. Remove some
       redundant assertions.
       Also fix 13778. When FOREIGN_KEY_CHECKS=0 we still need to check that
       datatypes between foreign key references are compatible.
       Also added test cases to 9802.
      
      
      innobase/btr/btr0sea.c:
        Changes from innodb-5.0-ss52
      innobase/dict/dict0dict.c:
        Changes from innodb-5.0-ss52
      innobase/dict/dict0load.c:
        Changes from innodb-5.0-ss52
      innobase/include/buf0buf.h:
        Changes from innodb-5.0-ss52
      innobase/include/dict0dict.h:
        Changes from innodb-5.0-ss52
      innobase/include/dict0load.h:
        Changes from innodb-5.0-ss52
      innobase/include/rem0cmp.h:
        Changes from innodb-5.0-ss52
      innobase/rem/rem0cmp.c:
        Changes from innodb-5.0-ss52
      innobase/row/row0mysql.c:
        Changes from innodb-5.0-ss52
      mysql-test/r/innodb.result:
        Changes from innodb-5.0-ss52
      mysql-test/t/innodb.test:
        Changes from innodb-5.0-ss52
      sql/ha_innodb.cc:
        Changes from innodb-5.0-ss52
      sql/ha_innodb.h:
        Changes from innodb-5.0-ss52
      b83c2976
  12. 24 Nov, 2005 1 commit
  13. 23 Nov, 2005 1 commit
    • unknown's avatar
      Table definition cache, part 2 · f631b361
      unknown authored
      The table opening process now works the following way:
      - Create common TABLE_SHARE object
      - Read the .frm file and unpack it into the TABLE_SHARE object
      - Create a TABLE object based on the information in the TABLE_SHARE
        object and open a handler to the table object
      
      Other noteworthy changes:
      - In TABLE_SHARE the most common strings are now LEX_STRING's
      - Better error message when table is not found
      - Variable table_cache is now renamed 'table_open_cache'
      - New variable 'table_definition_cache' that is the number of table defintions that will be cached
      - strxnmov() calls are now fixed to avoid overflows
      - strxnmov() will now always add one end \0 to result
      - engine objects are now created with a TABLE_SHARE object instead of a TABLE object.
      - After creating a field object one must call field->init(table) before using it
      
      - For a busy system this change will give you:
       - Less memory usage for table object
       - Faster opening of tables (if it's has been in use or is in table definition cache)
       - Allow you to cache many table definitions objects
       - Faster drop of table
      
      
      mysql-test/mysql-test-run.sh:
        Fixed some problems with --gdb option
        Test both with socket and tcp/ip port that all old servers are killed
      mysql-test/r/flush_table.result:
        More tests with lock table with 2 threads + flush table
      mysql-test/r/information_schema.result:
        Removed old (now wrong) result
      mysql-test/r/innodb.result:
        Better error messages (thanks to TDC patch)
      mysql-test/r/merge.result:
        Extra flush table test
      mysql-test/r/ndb_bitfield.result:
        Better error messages (thanks to TDC patch)
      mysql-test/r/ndb_partition_error.result:
        Better error messages (thanks to TDC patch)
      mysql-test/r/query_cache.result:
        Remove tables left from old tests
      mysql-test/r/temp_table.result:
        Test truncate with temporary tables
      mysql-test/r/variables.result:
        Table_cache -> Table_open_cache
      mysql-test/t/flush_table.test:
        More tests with lock table with 2 threads + flush table
      mysql-test/t/merge.test:
        Extra flush table test
      mysql-test/t/multi_update.test:
        Added 'sleep' to make test predictable
      mysql-test/t/query_cache.test:
        Remove tables left from old tests
      mysql-test/t/temp_table.test:
        Test truncate with temporary tables
      mysql-test/t/variables.test:
        Table_cache -> Table_open_cache
      mysql-test/valgrind.supp:
        Remove warning that may happens becasue threads dies in different order
      mysys/hash.c:
        Fixed wrong DBUG_PRINT
      mysys/mf_dirname.c:
        More DBUG
      mysys/mf_pack.c:
        Better comment
      mysys/mf_tempdir.c:
        More DBUG
        Ensure that we call cleanup_dirname() on all temporary directory paths.
        
        If we don't do this, we will get a failure when comparing temporary table
        names as in some cases the temporary table name is run through convert_dirname())
      mysys/my_alloc.c:
        Indentation fix
      sql/examples/ha_example.cc:
        We new use TABLE_SHARE instead of TABLE when creating engine handlers
      sql/examples/ha_example.h:
        We new use TABLE_SHARE instead of TABLE when creating engine handlers
      sql/examples/ha_tina.cc:
        We new use TABLE_SHARE instead of TABLE when creating engine handlers
      sql/examples/ha_tina.h:
        We new use TABLE_SHARE instead of TABLE when creating engine handlers
      sql/field.cc:
        Update for table definition cache:
        - Field creation now takes TABLE_SHARE instead of TABLE as argument
          (This is becasue field definitions are now cached in TABLE_SHARE)
          When a field is created, one now must call field->init(TABLE) before using it
        - Use s->db instead of s->table_cache_key
        - Added Field::clone() to create a field in TABLE from a field in TABLE_SHARE
        - make_field() takes TABLE_SHARE as argument instead of TABLE
        - move_field() -> move_field_offset()
      sql/field.h:
        Update for table definition cache:
        - Field creation now takes TABLE_SHARE instead of TABLE as argument
          (This is becasue field definitions are now cached in TABLE_SHARE)
          When a field is created, one now must call field->init(TABLE) before using it
        - Added Field::clone() to create a field in TABLE from a field in TABLE_SHARE
        - make_field() takes TABLE_SHARE as argument instead of TABLE
        - move_field() -> move_field_offset()
      sql/ha_archive.cc:
        We new use TABLE_SHARE instead of TABLE when creating engine handlers
      sql/ha_archive.h:
        We new use TABLE_SHARE instead of TABLE when creating engine handlers
      sql/ha_berkeley.cc:
        We new use TABLE_SHARE instead of TABLE when creating engine handlers
        Changed name of argument create() to not hide internal 'table' variable.
        table->s  -> table_share
      sql/ha_berkeley.h:
        We new use TABLE_SHARE instead of TABLE when creating engine handlers
      sql/ha_blackhole.cc:
        We new use TABLE_SHARE instead of TABLE when creating engine handlers
      sql/ha_blackhole.h:
        We new use TABLE_SHARE instead of TABLE when creating engine handlers
      sql/ha_federated.cc:
        We new use TABLE_SHARE instead of TABLE when creating engine handlers
        Fixed comments
        Remove index variable and replace with pointers (simple optimization)
        move_field() -> move_field_offset()
        Removed some strlen() calls
      sql/ha_federated.h:
        We new use TABLE_SHARE instead of TABLE when creating engine handlers
      sql/ha_heap.cc:
        We new use TABLE_SHARE instead of TABLE when creating engine handlers
        Simplify delete_table() and create() as the given file names are now without extension
      sql/ha_heap.h:
        We new use TABLE_SHARE instead of TABLE when creating engine handlers
      sql/ha_innodb.cc:
        We new use TABLE_SHARE instead of TABLE when creating engine handlers
      sql/ha_innodb.h:
        We new use TABLE_SHARE instead of TABLE when creating engine handlers
      sql/ha_myisam.cc:
        We new use TABLE_SHARE instead of TABLE when creating engine handlers
        Remove not needed fn_format()
        Fixed for new table->s structure
      sql/ha_myisam.h:
        We new use TABLE_SHARE instead of TABLE when creating engine handlers
      sql/ha_myisammrg.cc:
        We new use TABLE_SHARE instead of TABLE when creating engine handlers
        Don't set 'is_view' for MERGE tables
        Use new interface to find_temporary_table()
      sql/ha_myisammrg.h:
        We new use TABLE_SHARE instead of TABLE when creating engine handlers
        Added flag HA_NO_COPY_ON_ALTER
      sql/ha_ndbcluster.cc:
        We new use TABLE_SHARE instead of TABLE when creating engine handlers
        Fixed wrong calls to strxnmov()
        Give error HA_ERR_TABLE_DEF_CHANGED if table definition has changed
        drop_table -> intern_drop_table()
        table->s -> table_share
        Move part_info to TABLE
        Fixed comments & DBUG print's
        New arguments to print_error()
      sql/ha_ndbcluster.h:
        We new use TABLE_SHARE instead of TABLE when creating engine handlers
      sql/ha_partition.cc:
        We new use TABLE_SHARE instead of TABLE when creating engine handlers
        We can't set up or use part_info when creating handler as there is not yet any table object
        New ha_intialise() to work with TDC (Done by Mikael)
      sql/ha_partition.h:
        We new use TABLE_SHARE instead of TABLE when creating engine handlers
        Got set_part_info() from Mikael
      sql/handler.cc:
        We new use TABLE_SHARE instead of TABLE when creating engine handlers
        ha_delete_table() now also takes database as an argument
        handler::ha_open() now takes TABLE as argument
        ha_open() now calls ha_allocate_read_write_set()
        Simplify ha_allocate_read_write_set()
        Remove ha_deallocate_read_write_set()
        Use table_share (Cached by table definition cache)
      sql/handler.h:
        New table flag: HA_NO_COPY_ON_ALTER (used by merge tables)
        Remove ha_deallocate_read_write_set()
        get_new_handler() now takes TABLE_SHARE as argument
        ha_delete_table() now gets database as argument
      sql/item.cc:
        table_name and db are now LEX_STRING objects
        When creating fields, we have now have to call field->init(table)
        move_field -> move_field_offset()
      sql/item.h:
        tmp_table_field_from_field_type() now takes an extra paramenter 'fixed_length' to allow one to force usage of CHAR
         instead of BLOB
      sql/item_cmpfunc.cc:
        Fixed call to tmp_table_field_from_field_type()
      sql/item_create.cc:
        Assert if new not handled cast type
      sql/item_func.cc:
        When creating fields, we have now have to call field->init(table)
        dummy_table used by 'sp' now needs a TABLE_SHARE object
      sql/item_subselect.cc:
        Trivial code cleanups
      sql/item_sum.cc:
        When creating fields, we have now have to call field->init(table)
      sql/item_timefunc.cc:
        Item_func_str_to_date::tmp_table_field() now replaced by call to
         tmp_table_field_from_field_type() (see item_timefunc.h)
      sql/item_timefunc.h:
        Simply tmp_table_field()
      sql/item_uniq.cc:
        When creating fields, we have now have to call field->init(table)
      sql/key.cc:
        Added 'KEY' argument to 'find_ref_key' to simplify code
      sql/lock.cc:
        More debugging
        Use create_table_def_key() to create key for table cache
        Allocate TABLE_SHARE properly when creating name lock
        Fix that locked_table_name doesn't test same table twice
      sql/mysql_priv.h:
        New functions for table definition cache
        New interfaces to a lot of functions.
        New faster interface to find_temporary_table() and close_temporary_table()
      sql/mysqld.cc:
        Added support for table definition cache of size 'table_def_size'
        Fixed som calls to strnmov()
        Changed name of 'table_cache' to 'table_open_cache'
      sql/opt_range.cc:
        Use new interfaces
        Fixed warnings from valgrind
      sql/parse_file.cc:
        Safer calls to strxnmov()
        Fixed typo
      sql/set_var.cc:
        Added variable 'table_definition_cache'
        Variable table_cache renamed to 'table_open_cache'
      sql/slave.cc:
        Use new interface
      sql/sp.cc:
        Proper use of TABLE_SHARE
      sql/sp_head.cc:
        Remove compiler warnings
        We have now to call field->init(table)
      sql/sp_head.h:
        Pointers to parsed strings are now const
      sql/sql_acl.cc:
        table_name is now a LEX_STRING
      sql/sql_base.cc:
        Main implementation of table definition cache
        (The #ifdef's are there for the future when table definition cache will replace open table cache)
        Now table definitions are cached indepndent of open tables, which will speed up things when a table is in use at once from several places
        Views are not yet cached; For the moment we only cache if a table is a view or not.
        
        Faster implementation of find_temorary_table()
        Replace 'wait_for_refresh()' with the more general function 'wait_for_condition()'
        Drop table is slightly faster as we can use the table definition cache to know the type of the table
      sql/sql_cache.cc:
        table_cache_key and table_name are now LEX_STRING
        'sDBUG print fixes
      sql/sql_class.cc:
        table_cache_key is now a LEX_STRING
        safer strxnmov()
      sql/sql_class.h:
        Added number of open table shares (table definitions)
      sql/sql_db.cc:
        safer strxnmov()
      sql/sql_delete.cc:
        Use new interface to find_temporary_table()
      sql/sql_derived.cc:
        table_name is now a LEX_STRING
      sql/sql_handler.cc:
        TABLE_SHARE->db and TABLE_SHARE->table_name are now LEX_STRING's
      sql/sql_insert.cc:
        TABLE_SHARE->db and TABLE_SHARE->table_name are now LEX_STRING's
      sql/sql_lex.cc:
        Make parsed string a const (to quickly find out if anything is trying to change the query string)
      sql/sql_lex.h:
        Make parsed string a const (to quickly find out if anything is trying to change the query string)
      sql/sql_load.cc:
        Safer strxnmov()
      sql/sql_parse.cc:
        Better error if wrong DB name
      sql/sql_partition.cc:
        part_info moved to TABLE from TABLE_SHARE
        Indentation changes
      sql/sql_select.cc:
        Indentation fixes
        Call field->init(TABLE) for new created fields
        Update create_tmp_table() to use TABLE_SHARE properly
      sql/sql_select.h:
        Call field->init(TABLE) for new created fields
      sql/sql_show.cc:
        table_name is now a LEX_STRING
        part_info moved to TABLE
      sql/sql_table.cc:
        Use table definition cache to speed up delete of tables
        Fixed calls to functions with new interfaces
        Don't use 'share_not_to_be_used'
        Instead of doing openfrm() when doing repair, we now have to call
        get_table_share() followed by open_table_from_share().
        Replace some fn_format() with faster unpack_filename().
        Safer strxnmov()
        part_info is now in TABLE
        Added Mikaels patch for partition and ALTER TABLE
        Instead of using 'TABLE_SHARE->is_view' use 'table_flags() & HA_NO_COPY_ON_ALTER
      sql/sql_test.cc:
        table_name and table_cache_key are now LEX_STRING's
      sql/sql_trigger.cc:
        TABLE_SHARE->db and TABLE_SHARE->table_name are now LEX_STRING's
        safer strxnmov()
        Removed compiler warnings
      sql/sql_update.cc:
        Call field->init(TABLE) after field is created
      sql/sql_view.cc:
        safer strxnmov()
        Create common TABLE_SHARE object for views to allow us to cache if table is a view
      sql/structs.h:
        Added SHOW_TABLE_DEFINITIONS
      sql/table.cc:
        Creation and destruct of TABLE_SHARE objects that are common for many TABLE objects
        
        The table opening process now works the following way:
        - Create common TABLE_SHARE object
        - Read the .frm file and unpack it into the TABLE_SHARE object
        - Create a TABLE object based on the information in the TABLE_SHARE
          object and open a handler to the table object
        
        open_table_def() is written in such a way that it should be trival to add parsing of the .frm files in new formats
      sql/table.h:
        TABLE objects for the same database table now share a common TABLE_SHARE object
        In TABLE_SHARE the most common strings are now LEX_STRING's
      sql/unireg.cc:
        Changed arguments to rea_create_table() to have same order as other functions
        Call field->init(table) for new created fields
      sql/unireg.h:
        Added OPEN_VIEW
      strings/strxnmov.c:
        Change strxnmov() to always add end \0
        This makes usage of strxnmov() safer as most of MySQL code assumes that strxnmov() will create a null terminated string
      f631b361
  14. 19 Nov, 2005 1 commit
    • unknown's avatar
      Fix for bug #13825 "Triggers: crash if release savepoint" and for general · 11d4d7e6
      unknown authored
      handling of savepoints in stored routines.
      
      Fixed ha_rollback_to_savepoint()/ha_savepoint()/ha_release_savepoint()
      functions to properly handle savepoints inside of stored functions and
      triggers.
      Also now when we invoke stored function or trigger we create new savepoint
      level. We destroy it at the end of function/trigger execution and return back
      to old savepoint level.
      
      
      mysql-test/r/sp_trans.result:
        Added test for bug #13825 "Triggers: crash if release savepoint" and for
        general handling of savepoints in stored routines.
      mysql-test/t/sp_trans.test:
        Added test for bug #13825 "Triggers: crash if release savepoint" and for
        general handling of savepoints in stored routines.
      sql/ha_innodb.cc:
        innobase_savepoint():
          Replaced check which always failed due to similar check in caller
          with assertion.
      sql/handler.cc:
        ha_rollback_to_savepoint()/ha_savepoint()/ha_release_savepoint():
          Changed functions to properly support handling of savepoints
          inside of stored functions and triggers.
      sql/sql_class.cc:
        THD::reset_sub_statement_state()/restore_sub_statement_state():
          When we invoke stored function or trigger we should create new savepoint
          level. We should destroy it at the end of function/trigger execution and
          return back to old savepoint level. To support this behavior we should
          save and reset list of current savepoints on entering function and restore
          old list when we leave it.
      sql/sql_class.h:
        Sub_statement_state:
          When we invoke stored function or trigger we should create new savepoint
          level. We should destroy it at the end of function/trigger execution and
          return back to old savepoint level. To support this behavior added "savepoint"
          member which is used to save/restore list of current savepoints on
          entering/leaving function.
      sql/sql_parse.cc:
        mysql_execute_command():
          Changed processing of SQLCOM_SAVEPOINT so now it is not ignored when
          we are in autocommit mode and savepoint is set inside of stored
          function or trigger.
      11d4d7e6
  15. 17 Nov, 2005 1 commit
    • unknown's avatar
      set_var.cc, mysqld.cc, ha_innodb.h: · 30df60fa
      unknown authored
        BUG#12701: SHOW VARIABLES does not show correct size of buffer pool.
      ha_innodb.cc:
        BUG#12701: SHOW VARIABLES does not show correct size of buffer pool
      
      
      sql/ha_innodb.cc:
        BUG#12701: SHOW VARIABLES does not show correct size of buffer pool
      sql/ha_innodb.h:
        BUG#12701: SHOW VARIABLES does not show correct size of buffer pool.
      sql/mysqld.cc:
        BUG#12701: SHOW VARIABLES does not show correct size of buffer pool.
      sql/set_var.cc:
        BUG#12701: SHOW VARIABLES does not show correct size of buffer pool.
      30df60fa
  16. 14 Nov, 2005 1 commit
    • unknown's avatar
      Fixed number of compiler errors on win32. · 67df0e19
      unknown authored
      VC++Files/mysqlbinlog/mysqlbinlog.vcproj:
        Fixed compiler error for Win32 build. #include "decimal.c" wrere no able to find decimal.c file.
      sql/ha_innodb.cc:
        Fixed compiler error for Win32 build.
      sql/spatial.cc:
        Fixed compiler error for Win32 build. float8get should be enclosed
        in {} since it is macro on win32 and might cause unmatching blocks.
      67df0e19
  17. 07 Nov, 2005 2 commits
    • unknown's avatar
    • unknown's avatar
      Make storage engines "pluggable", handlerton work · 6b3a9cae
      unknown authored
      Makefile.am:
        Changes to autoconf subst
      config/ac-macros/ha_berkeley.m4:
        simplify
      config/ac-macros/ha_ndbcluster.m4:
        simplify
      config/ac-macros/ha_partition.m4:
        simplify
      configure.in:
        strip configure of storage engine specific cruft and simplify
      extra/Makefile.am:
        changes to autoconf/automake subst
      libmysqld/Makefile.am:
        only compile storage engines if required.
        make find object file a little smarter
      libmysqld/examples/Makefile.am:
        changes to autoconf subst
      mysql-test/Makefile.am:
        remove storage engine specific cruft
      mysql-test/r/ps_1general.result:
        cannot gaurantee order of results from 'show storage engines'
      mysql-test/r/show_check.result:
        fix test - frm file fails to be deleted if it is invalid
      mysql-test/r/sql_mode.result:
        isam does not exist, test may need to be redone/fixed in 5.0
      mysql-test/r/warnings.result:
        isam no longer exists
      mysql-test/t/ps_1general.test:
        cannot gaurantee order of results from 'show storage engines'
      mysql-test/t/show_check.test:
        fix test - frm file fails to be deleted if it is invalid
      mysql-test/t/sql_mode.test:
        isam does not exist, test may need to be redone/fixed in 5.0
      mysql-test/t/system_mysql_db_fix.test:
        change isam to myisam
      mysql-test/t/view.test:
        change isam to myisam
      mysql-test/t/warnings.test:
        isam no longer exists
      sql/Makefile.am:
        Make storage engines "pluggable" stage 1
        only compile storage engines if included
      sql/examples/ha_example.cc:
        handlerton work
      sql/examples/ha_example.h:
        handlerton work
      sql/examples/ha_tina.cc:
        handlerton work
      sql/examples/ha_tina.h:
        handlerton work
      sql/ha_archive.cc:
        handlerton work
      sql/ha_archive.h:
        handlerton work
      sql/ha_berkeley.cc:
        handlerton work
      sql/ha_berkeley.h:
        handlerton work
      sql/ha_blackhole.cc:
        handlerton work
      sql/ha_federated.cc:
        handlerton work
      sql/ha_federated.h:
        handlerton work
      sql/ha_heap.cc:
        handlerton work
      sql/ha_innodb.cc:
        handlerton work
      sql/ha_innodb.h:
        handlerton work
      sql/ha_myisam.cc:
        handlerton work
      sql/ha_myisammrg.cc:
        handlerton work
      sql/ha_ndbcluster.cc:
        handlerton work
      sql/ha_ndbcluster.h:
        handlerton work
      sql/ha_partition.cc:
        handlerton work
      sql/handler.cc:
        start removing storage engine specific cruft
      sql/handler.h:
        start removing storage engine specific cruft
        db_type for binlog handlerton
        handlerton flag for not-user-selectable storage engines
      sql/lex.h:
        start removing storage engine specific cruft
      sql/log.cc:
        handlerton work
        give binlog handlerton a 'real' db_type
      sql/mysql_priv.h:
        start removing storage engine specific cruft
      sql/mysqld.cc:
        start removing storage engine specific cruft
      sql/set_var.cc:
        start removing storage engine specific cruft
      sql/sp_head.cc:
        start removing storage engine specific cruft
      sql/sql_class.cc:
        start removing storage engine specific cruft
      sql/sql_class.h:
        start removing storage engine specific cruft
      sql/sql_lex.h:
        start removing storage engine specific cruft
      sql/sql_manager.cc:
        start removing storage engine specific cruft
      sql/sql_manager.h:
        start removing storage engine specific cruft
      sql/sql_parse.cc:
        start removing storage engine specific cruft
      sql/sql_partition.cc:
        start removing storage engine specific cruft
      sql/sql_prepare.cc:
        start removing storage engine specific cruft
      sql/sql_show.cc:
        start removing storage engine specific cruft
      sql/sql_table.cc:
        changed define from HAVE_PARTITION_DB to WITH_PARTITION_STORAGE_ENGINE
        start removing storage engine specific cruft
      sql/sql_update.cc:
        changed define from HAVE_PARTITION_DB to WITH_PARTITION_STORAGE_ENGINE
      sql/sql_yacc.yy:
        start removing storage engine specific cruft
        test if we should throw error
      sql/table.cc:
        changed define from HAVE_PARTITION_DB to WITH_PARTITION_STORAGE_ENGINE
      sql/table.h:
        changed define from HAVE_PARTITION_DB to WITH_PARTITION_STORAGE_ENGINE
      sql/unireg.cc:
        changed define from HAVE_PARTITION_DB to WITH_PARTITION_STORAGE_ENGINE
      storage/ndb/include/kernel/kernel_types.h:
        added my_config.h
      storage/ndb/include/ndb_global.h.in:
        added my_config.h
      storage/ndb/include/ndb_types.h.in:
        added my_config.h
      config/ac-macros/storage.m4:
        New BitKeeper file ``config/ac-macros/storage.m4''
      sql/handlerton.cc.in:
        New BitKeeper file ``sql/handlerton.cc.in''
      6b3a9cae
  18. 25 Oct, 2005 1 commit
    • unknown's avatar
      This patch add support for storing Geometry types to Archive, Innodb, NDB, and BDB. · 84ece2e0
      unknown authored
      sql/ha_archive.h:
        Adding support for Geometry type to archive.
      sql/ha_berkeley.cc:
        Adding geometry support to berkely
      sql/ha_innodb.cc:
        Adding geometry support to Innodb.
      sql/ha_ndbcluster.cc:
        Adding Geometry support to NDB.
      mysql-test/include/gis_generic.inc:
        New BitKeeper file ``mysql-test/include/gis_generic.inc''
      mysql-test/r/archive_gis.result:
        New BitKeeper file ``mysql-test/r/archive_gis.result''
      mysql-test/r/bdb_gis.result:
        New BitKeeper file ``mysql-test/r/bdb_gis.result''
      mysql-test/r/ndb_gis.result:
        New BitKeeper file ``mysql-test/r/ndb_gis.result''
      mysql-test/t/archive_gis.test:
        New BitKeeper file ``mysql-test/t/archive_gis.test''
      mysql-test/t/bdb_gis.test:
        New BitKeeper file ``mysql-test/t/bdb_gis.test''
      mysql-test/t/innodb_gis.test:
        New BitKeeper file ``mysql-test/t/innodb_gis.test''
      mysql-test/t/ndb_gis.test:
        New BitKeeper file ``mysql-test/t/ndb_gis.test''
      84ece2e0
  19. 24 Oct, 2005 1 commit
    • unknown's avatar
      BUG#11704: Make InnoDB not to convert TL_WRITE_ONLY locks to TL_WRITE_ALLOW_WRITE in · d91f4dea
      unknown authored
      OPTIMIZE TABLE.
      
      
      sql/ha_innodb.cc:
        Fix for BUG#11704: "Found locks from different thread" warnings:
        The source of warnings was this scenario in OPTIMIZE:
          thr1: lock table with TL_WRITE_ONLY (InnoDB converts lock to TL_WRITE_ALLOW_WRITE)
          thr2: (UPDATE command) obtains a TL_WRITE_ALLOW_WRITE lock
          thr1: call mysql_lock_abort(). This function sets type of thr'1 lock to TL_WRITE_ONLY
          thr2: try to release thr2's lock. See two locks: TL_WRITE_ONLY, TL_WRITE_ALLOW_WRITE 
                and produce a warning.
        
        The fix: Make InnoDB not to convert TL_WRITE_ONLY locks to TL_WRITE_ALLOW_WRITE in
        OPTIMIZE TABLE.
      d91f4dea
  20. 19 Oct, 2005 1 commit
  21. 12 Oct, 2005 1 commit
  22. 04 Oct, 2005 1 commit
    • unknown's avatar
      Final patch for 5.0 for simplifying storage engine code. We now have just one... · ed35cecd
      unknown authored
      Final patch for 5.0 for simplifying storage engine code. We now have just one set of ifdefs. I may also remove the code for creating new handlers.
      May changes were to simplify storage engine setup and support for legacy call to show storage engines.
      
      
      mysql-test/r/ps_1general.result:
        Fixed test results for new listing order
      sql/examples/ha_tina.cc:
        Removed dead code
      sql/examples/ha_tina.h:
        Removed dead code
      sql/ha_archive.cc:
        Capitalized sotrage engine name and moved disabled code.
      sql/ha_berkeley.cc:
        Moved deisabled code
      sql/ha_federated.cc:
        Removed disabled code
      sql/ha_innodb.cc:
        Removed disabled message
      sql/ha_ndbcluster.cc:
        Removed disabled message
      sql/handler.cc:
        Added in legacy support for sotrage engine listing (ala Serg's request). Removed handlertons variables and we now have simplified ha_init code.
      sql/handler.h:
        No longer need handlertons array.
      ed35cecd
  23. 03 Oct, 2005 2 commits
    • unknown's avatar
      InnoDB: Display an error message in /* */ comments · 9595cc33
      unknown authored
      in SHOW CREATE TABLE if a temporary file cannot be created.
      (Bug #13002)
      
      
      sql/ha_innodb.cc:
        ha_innobase::get_foreign_key_create_info(): Display an error
        message to the user if a temporary file cannot be created.
      9595cc33
    • unknown's avatar
      Next big patch for loadable storage engines! · 5655d31d
      unknown authored
      Handlerton array is now created instead of using sys_table_types_st. All storage engines can now have inits and giant ifdef's are now gone for startup. No compeltely clean yet, handlertons will next be merged with sys_table_types. Federated and archive now have real cleanup if their inits fail. 
      
      
      sql/examples/ha_archive.cc:
        Modifications for new ha_init code. The init method now checks for errors and will not start up if the errors occur.
      sql/examples/ha_archive.h:
        Change for new init method.
      sql/examples/ha_example.cc:
        New handlerton pieces.
      sql/examples/ha_tina.cc:
        New handlerton pieces.
      sql/ha_berkeley.cc:
        New handlerton pieces, plus changes for ha_init changes. I'm not happy with our current "skip" setup.
      sql/ha_berkeley.h:
        Change in init return.
      sql/ha_blackhole.cc:
        Changes for new handlerton pieces.
      sql/ha_federated.cc:
        Changes for new handlerton and true cleanup code.
      sql/ha_heap.cc:
        Changes for new handlerton returns.
      sql/ha_innodb.cc:
        Changes for handlerton code.
      sql/ha_innodb.h:
        Change in init.
      sql/ha_myisam.cc:
        Changes for additional handlerton bits.
      sql/ha_myisammrg.cc:
        Changes for  new handlerton bits.
      sql/ha_ndbcluster.cc:
        Changes for new handlerton bits.
      sql/ha_ndbcluster.h:
        Changes for handlerton bits.
      sql/handler.cc:
        Changes for ditching show_table_type_st types, and collapsing it into a handlerton array. The ha_init now just loops through all handlers to init (much cleaner...). handlertons and sys_table_types should be merged next.
      sql/handler.h:
        Additions for sys_table_types
      sql/log.cc:
        Clean up of binlog for changes in handlerton
      sql/mysql_priv.h:
        Removed unneeded define for binlog_init
      sql/sql_show.cc:
        Changes for change in handlerton to sys_table_types
      5655d31d
  24. 01 Oct, 2005 1 commit
  25. 30 Sep, 2005 3 commits
    • unknown's avatar
      Bug#11238 · 8f842e8f
      unknown authored
      "SELECT ... FOR UPDATE executed as consistent read inside LOCK TABLES"
      Do not discard lock_type information as handler::start_stmt() may require knowledge.
      (fixed by Antony)
      
      
      8f842e8f
    • unknown's avatar
      InnoDB: After review fix · afed50ae
      unknown authored
      sql/ha_innodb.cc:
        Avoid bitwise arithmetics, as it might be difficult to read.  The
        added readability costs one register and two instructions on x86.
      afed50ae
    • unknown's avatar
      InnoDB: On UPDATE, trim UCS2 columns correctly. (Bug #12178) · a14a34be
      unknown authored
      sql/ha_innodb.cc:
        innobase_convert_and_store_changed_col(), calc_row_difference():
         Replace parameter "is_unsigned" with "prtype".
        innobase_convert_and_store_changed_col():
         When trimming spaces, note that UCS2 spaces are 0x0020, not 0x20.
      a14a34be
  26. 29 Sep, 2005 2 commits
    • unknown's avatar
      Minor corrections to InnoDB function comments · 612b9ceb
      unknown authored
      innobase/include/mem0mem.h:
        Correct the comment of mem_heap_create_func().
      innobase/include/mem0mem.ic:
        Correct the comment of mem_heap_create_func().
      sql/ha_innodb.cc:
        Correct comments regarding return value
      612b9ceb
    • unknown's avatar
      Fixed a bug checksum table locks the InnoDB table and does not use a · 2c0e2a14
      unknown authored
      consistent read (Bug #12669). This fixes InnoDB part of the bug.
      
      
      mysql-test/r/innodb.result:
        Added results for a checksum test.
      mysql-test/t/innodb.test:
        Addeed a test case for a checksum bug #12669.
      sql/ha_innodb.cc:
        Use consistent read for checksum table.
      2c0e2a14
  27. 28 Sep, 2005 2 commits
    • unknown's avatar
      InnoDB: Remove compiler warnings. · a11fc734
      unknown authored
      innobase/os/os0proc.c:
        Add UT_NOT_USED for parameters in dummy implementations of AWE functions.
      sql/ha_innodb.cc:
        Tweak casts to eliminate compiler warnings.
      a11fc734
    • unknown's avatar
      Fixed a bug checksum table locks the InnoDB table and does not use a · 2de206b4
      unknown authored
      consistent read (Bug #12669).
      
      
      mysql-test/r/innodb.result:
        Added test results for a checksum test.
      mysql-test/t/innodb.test:
        Added test case for a checksum bug #12669.
      sql/ha_innodb.cc:
        Use consistent read for checksum table and convert MySQL lock type
        to the TL_READ because at the moment MySQL uses TL_READ_NO_INSERT.
      2de206b4
  28. 23 Sep, 2005 3 commits
    • unknown's avatar
      Fix bug #3443, better foreign key error messsages. · e4b0b0d0
      unknown authored
      innobase/dict/dict0dict.c:
        Add 'add_newline' parameter to dict_print_info_on_foreign_key_in_create_format.
      innobase/include/dict0dict.h:
        Add 'add_newline' parameter to dict_print_info_on_foreign_key_in_create_format.
      innobase/include/os0file.h:
        Add os_file_read_string.
      innobase/include/trx0trx.h:
        Add trx_set_detailed_error and trx_set_detailed_error_from_file functions
        and a detailed_error field to trx_struct.
      innobase/include/ut0mem.h:
        Add ut_strlcpy.
      innobase/os/os0file.c:
        Add os_file_read_string.
      innobase/row/row0ins.c:
        Add row_ins_set_detailed function and call it when needed.
        
        Adapt to changes in dict_print_info_on_foreign_key_in_create_format.
      innobase/trx/trx0trx.c:
        Add trx_set_detailed_error and trx_set_detailed_error_from_file.
        
        Clear trx->detailed_error in trx_create.
      innobase/ut/ut0mem.c:
        Add ut_strlcpy.
      mysql-test/r/innodb.result:
        Add new tests, adapt existing ones whose output was changed.
      mysql-test/t/innodb.test:
        Add new tests, adapt existing ones whose output was changed.
      sql/ha_innodb.cc:
        Add get_error_message.
        
        Clear trx->detailed_error in start_stmt and external_lock.
      sql/ha_innodb.h:
        Add get_error_message.
      sql/handler.cc:
        Add special case code in print_error for HA_ERR_ROW_IS_REFERENCED and
        HA_ERR_NO_REFERENCED_ROW.
        
        Change SETMSG to point to new error messages.
      sql/share/errmsg.txt:
        Add ER_ROW_IS_REFERENCED_2 and ER_NO_REFERENCED_ROW_2.
      e4b0b0d0
    • unknown's avatar
      InnoDB: Minor fixes. · 8acd0fa4
      unknown authored
      innobase/include/trx0trx.h:
        Fix invalid comment.
      sql/ha_innodb.cc:
        Change some memory allocations to fail-on-error.
        
        Cast argument of my_free to gptr, not char*.
      8acd0fa4
    • unknown's avatar
      InnoDB: Fix bug #13315, index columns having a maximum length of 767. · 6fbbb1d5
      unknown authored
      innobase/data/data0data.c:
        Adapt to DICT_MAX_COL_PREFIX_LEN rename.
      innobase/dict/dict0dict.c:
        Adapt to DICT_MAX_COL_PREFIX_LEN rename.
      innobase/include/dict0mem.h:
        Rename DICT_MAX_COL_PREFIX_LEN to DICT_MAX_INDEX_COL_LEN.
      innobase/include/row0mysql.h:
        Add field_lengths parameter to row_create_index_for_mysql.
      innobase/rem/rem0rec.c:
        Adapt to DICT_MAX_COL_PREFIX_LEN rename.
      innobase/row/row0mysql.c:
        Add field_lengths parameter to row_create_index_for_mysql and use it to
        check for too long index columns.
      mysql-test/r/innodb.result:
        New tests.
      mysql-test/t/innodb.test:
        New tests.
      sql/ha_innodb.cc:
        Create temporary field_lengths buffer and pass it to
        row_create_index_for_mysql.
      6fbbb1d5
  29. 20 Sep, 2005 1 commit
    • unknown's avatar
      WL#2787 (Add view definer/owner to the view definition (.frm) to check... · 3fe752f5
      unknown authored
      WL#2787 (Add view definer/owner to the view definition (.frm) to check privileges on used tables and stored routines when using a VIEW.)
      Part 2 postreview fixes.
      
      
      sql/ha_innodb.cc:
        Renamed structure st_security_context to class Security_context
      sql/item_func.cc:
        Renamed structure st_security_context to class Security_context
      sql/item_strfunc.cc:
        fixed USER() function
      sql/log.cc:
        variable used to optimize access to security context
      sql/mysql_priv.h:
        Renamed structure st_security_context to class Security_context
      sql/mysqld.cc:
        main security context used direcly
      sql/sp_head.cc:
        Renamed structure st_security_context to class Security_context
        removed unneed variable
      sql/sp_head.h:
        Comment inmroved
        Renamed structure st_security_context to class Security_context
      sql/sql_acl.cc:
        Renamed structure st_security_context to class Security_context
        fixed function comment and return value
        variable used to optimize access to security context
        Renamed method of Security_ontext
      sql/sql_acl.h:
        fixed return value type
      sql/sql_class.cc:
        Renamed structure st_security_context to class Security_context
      sql/sql_class.h:
        Renamed structure st_security_context to class Security_context
        Method renamed
      sql/sql_db.cc:
        Renamed structure st_security_context to class Security_context
        fixed layout
      sql/sql_parse.cc:
        registration of wanted access for underlying tables
      sql/sql_show.cc:
        Renamed structure st_security_context to class Security_context
        fixed layout
      sql/sql_yacc.yy:
        Renamed structure st_security_context to class Security_context
      3fe752f5
  30. 19 Sep, 2005 1 commit
    • unknown's avatar
      Cleanup for handlerton structure to allow for loadable engine work. This is... · fa8fcecb
      unknown authored
      Cleanup for handlerton structure to allow for loadable engine work. This is the first in a series of patches. 
      
      
      sql/examples/ha_archive.cc:
        Now declared externally.
      sql/examples/ha_example.cc:
        Now declared externally
      sql/examples/ha_tina.cc:
        Now declared externally
      sql/ha_berkeley.cc:
        Now declared externally
      sql/ha_blackhole.cc:
        Now declared externally
      sql/ha_federated.cc:
        Now declared externally.
      sql/ha_heap.cc:
        Now declared externally.
      sql/ha_innodb.cc:
        Now declared externally.
      sql/ha_myisam.cc:
        Now declared externally
      sql/ha_myisammrg.cc:
        Now declared externally.
      sql/ha_ndbcluster.cc:
        Now declared externally.
      sql/handler.cc:
        Changes for eventual loadable engines. This will allow us to gain faster access to the handlerton (eventually this will just be a handlteron array).
      sql/handler.h:
        New alias structure and change to show_table_st to place handlerton in the structure.
      fa8fcecb
  31. 15 Sep, 2005 1 commit
    • unknown's avatar
      WL#2787 (part 2, ver 3 (merged)) changed securety context switching · 84f029a4
      unknown authored
      libmysqld/lib_sql.cc:
        changed securety context switching
      mysql-test/r/rpl_sp.result:
        now it show real information from changed security context of SP (checked)
      sql/ha_innodb.cc:
        changed securety context switching
      sql/item.cc:
        changed securety context switching
      sql/item_func.cc:
        changed securety context switching
      sql/item_strfunc.cc:
        changed securety context switching
      sql/log.cc:
        changed securety context switching
      sql/mysql_priv.h:
        changed securety context switching
      sql/mysqld.cc:
        changed securety context switching
      sql/repl_failsafe.cc:
        changed securety context switching
      sql/set_var.cc:
        changed securety context switching
      sql/slave.cc:
        changed securety context switching
      sql/sp.cc:
        changed securety context switching
      sql/sp_head.cc:
        changed securety context switching
        in case of inability to switch context  we return error now
      sql/sp_head.h:
        changed securety context switching
      sql/sql_acl.cc:
        changed securety context switching
      sql/sql_acl.h:
        changed securety context switching
      sql/sql_base.cc:
        changed securety context switching
      sql/sql_class.cc:
        changed securety context switching
      sql/sql_class.h:
        changed securety context switching
      sql/sql_db.cc:
        changed securety context switching
      sql/sql_insert.cc:
        changed securety context switching
      sql/sql_parse.cc:
        changed securety context switching
      sql/sql_show.cc:
        changed securety context switching
      sql/sql_trigger.cc:
        changed securety context switching
      sql/sql_view.cc:
        changed securety context switching
      sql/sql_yacc.yy:
        changed securety context switching
      84f029a4