An error occurred fetching the project authors.
  1. 17 Feb, 2006 2 commits
    • unknown's avatar
      Bug #17210 Create temp table call to ha_ndbcluster::create_handler_files caused core · a5fa2d30
      unknown authored
        - do not try to create ndb temp tables even if default storage is ndb
      
      
      mysql-test/r/ndb_temporary.result:
        New BitKeeper file ``mysql-test/r/ndb_temporary.result''
      mysql-test/t/ndb_temporary.test:
        New BitKeeper file ``mysql-test/t/ndb_temporary.test''
      a5fa2d30
    • unknown's avatar
      WL#2645 (CHECK TABLE FOR UPGRADE) · bf840404
      unknown authored
      necessary implementation in the server
      mysql_upgrade script added
      
      
      client/mysqlcheck.c:
        --check-upgrade option added
      include/my_base.h:
        errcode added
      include/myisam.h:
        option added
      scripts/Makefile.am:
        mysql_upgrade script added
      sql/handler.cc:
        checks for old types/bugs added
      sql/handler.h:
        declarations regarding checks for upgrade
      sql/lex.h:
        sym added
      sql/share/errmsg.txt:
        error message added
      sql/slave.cc:
        now ha_repair is for public use
      sql/sql_table.cc:
        upgrade in ha_repair implemented
      sql/sql_yacc.yy:
        CHECK ... FOR UPGRADE added to syntax
      bf840404
  2. 16 Feb, 2006 1 commit
    • unknown's avatar
      BUG#15408: Partitions: subpartition names are not unique · d047fe77
      unknown authored
      Also, moved some of the code out of handler.h and into partition specific files for better 
      separation.
      Also, moved some of the C funcs into partition_info as formal C++ methods
      
      
      mysql-test/r/partition_mgm_err.result:
        result block for test of bug # 15408
      mysql-test/t/partition_mgm_err.test:
        test for duplicate subpartition names
      sql/Makefile.am:
        adding sql_partition.h, partition_info.cpp, partition_info.h, and partition_element.h to the makefile
      sql/ha_partition.cc:
        using the new members of partition_info
      sql/ha_partition.h:
        using the new members of partition_info
      sql/handler.h:
        moved this code into sql_partition.h
      sql/mysql_priv.h:
        including sql_partition.h also now
      sql/opt_range.cc:
        using the new members of partition_info
      sql/sql_partition.cc:
        moved some of the functions out and into the partition_info class
        using the new members of partition_info
      sql/sql_show.cc:
        using the new members of partition_info
      win/cmakefiles/sql:
        added partition_info.cpp to the sql cmake file
      sql/partition_element.h:
        New BitKeeper file ``sql/partition_element.h''
      sql/partition_info.h:
        New BitKeeper file ``sql/partition_info.h''
      sql/sql_partition.h:
        New BitKeeper file ``sql/sql_partition.h''
      d047fe77
  3. 13 Feb, 2006 1 commit
    • unknown's avatar
      Bug #17340 SHOW CREATE TABLE from second session crashes the server · f5131b2f
      unknown authored
      - no check was made that ndb thd object was allocated
      
      
      sql/ha_ndbcluster.h:
        Bug #17340  	SHOW CREATE TABLE from second session crashes the server
      sql/handler.h:
        Bug #17340  	SHOW CREATE TABLE from second session crashes the server
      sql/sql_show.cc:
        Bug #17340  	SHOW CREATE TABLE from second session crashes the server
      f5131b2f
  4. 12 Feb, 2006 1 commit
    • unknown's avatar
      This patch is to further remove the RAID code. We removed support for people... · 88aa9b13
      unknown authored
      This patch is to further remove the RAID code. We removed support for people creating tables with RAID. This patch remove most of the source for this. 
      
      
      sql/ha_myisam.cc:
        Remove RAID code
      sql/ha_partition.cc:
        Remove RAID code.
      sql/handler.h:
        Remove RAID code
      sql/lex.h:
        Remove RAID code.
      sql/mysqld.cc:
        Remove RAID code.
      sql/set_var.cc:
        Remove RAID code.
      sql/sql_show.cc:
        Remove RAID code
      sql/sql_yacc.yy:
        Remove more of the RAID code
      sql/table.cc:
        Remove RAID code.
      88aa9b13
  5. 10 Feb, 2006 1 commit
  6. 08 Feb, 2006 1 commit
  7. 06 Feb, 2006 1 commit
  8. 01 Feb, 2006 1 commit
  9. 31 Jan, 2006 1 commit
  10. 30 Jan, 2006 1 commit
    • unknown's avatar
      Windows compile fixes in preparation for 5.1.6 beta. · ab88a598
      unknown authored
      VC++Files/client/mysqldump.vcproj:
        Add missing source file.
      VC++Files/mysql.sln:
        Fix configuration mismatch.
      VC++Files/sql/mysqld.vcproj:
        Enable row-based replication.
        Add missing source files.
      scripts/make_win_src_distribution.sh:
        Add copying of missing directory.
      sql/event.h:
        Fix type conflict only visible on Windows.
      sql/event_executor.cc:
        Fix non-portable thread stuff.
      sql/event_timed.cc:
        Fix type conflict only visible on Windows.
      sql/ha_archive.cc:
        Add cast needed for Windows.
      sql/handler.h:
        Fix Windows byte * <-> char * mismatch.
      sql/opt_range.cc:
        Fix Windows byte * <-> char * mismatch.
      sql/set_var.cc:
        BUG#16811
        Fix Windows compilation by making the cast-away of volatile implicit
        (Windows linker does not like volatile <-> non-volatile mismatch, in
        contrast to Unix)
      sql/sql_partition.cc:
        Fix Windows byte * <-> char * mismatch.
      ab88a598
  11. 29 Jan, 2006 1 commit
    • unknown's avatar
      WL# 2986 · ff5d0124
      unknown authored
      Final patch
      -----------
      
      This WL is about using this bitmap in all parts of the partition handler.
      Thus for:
      rnd_init/rnd_next
      index_init/index_next and all other variants of index scans
      read_range_... the various range scans implemented in the partition handler.
      
      Also use those bitmaps in the various other calls that currently loop over all
      partitions.
      
      
      
      
      mysql-test/r/partition_pruning.result:
        WL# 2986
        
        New results reflecting bitmap being used to determine if a partition is to be
        included
      mysql-test/t/partition_pruning.test:
        WL# 2986
        
        New tests to show bitmap being used in ha_partition
      sql/ha_partition.cc:
        WL# 2986
        
        Used work from 2682 and removed the partition select code.
            
        Added do {} while loop to any iteration over partitions to now utilise 
        m_part_info->used_partitions bitmap to determine if a partition should be
        used.
      sql/ha_partition.h:
        WL# 2986
        
        Removed unused member
      sql/handler.h:
        WL# 2986
        
        Removed unused member
      sql/opt_range.cc:
        WL# 2986
        
        Added bitmap_clear_all to clear bitmap prior to pruning
        DBUG code for testing
      sql/sql_partition.cc:
        WL# 2986
        
        Changed < to <=, which fixes the problem with edge cases going awry.
      ff5d0124
  12. 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
  13. 26 Jan, 2006 1 commit
  14. 25 Jan, 2006 1 commit
  15. 19 Jan, 2006 2 commits
    • unknown's avatar
      Fix the tree: plugin-related changes, necessary for · bd7120f9
      unknown authored
      CSV storage engine to be statically compiled.
      Derived from antony's patch.
      
      
      config/ac-macros/storage.m4:
        don't add objects to the object list if
        we don't have them
      configure.in:
        compile CSV statically
      sql/ha_myisam.cc:
        fix prototype to get rid of THD
      sql/ha_myisam.h:
        fix prototype to get rid of THD
      sql/handler.cc:
        new function for plugins
      sql/handler.h:
        fix prototype to get rid of THD
        declare functions used by plugins
      sql/item.h:
        Don't include all the types and files when not building mysqld
      sql/lock.cc:
        don's assume that handler knows about THD
      sql/mysql_priv.h:
        Don't include all the types and files when not building mysqld
        declare new plugin functions
      sql/sql_class.cc:
        New plugin functions
      sql/sql_class.h:
        Don't include all the types and files when not building mysqld
      sql/sql_lex.h:
        Don't include all the types and files when not building mysqld
      storage/csv/Makefile.am:
        compile CSV into a static lib to be
        linked into mysqld
      storage/csv/ha_tina.cc:
        fix ha_tina to be able to build it static
      storage/csv/ha_tina.h:
        fix prototype to get rid of THD
      bd7120f9
    • unknown's avatar
      WL1019: complete patch. Reapplied patch to the clean · 41536fce
      unknown authored
      tree to get rid of multiple typos in CS comments and
      unify the patch.
      
      
      configure.in:
        CSV is compiled in by default now
      include/my_base.h:
        add new ha_extra flag for the log tables
      mysql-test/include/im_check_os.inc:
        we should only run im tests if csv is on for now: im relies
        on mysqld options available only in csv build.
      mysql-test/include/system_db_struct.inc:
        check log tables structure
      mysql-test/lib/init_db.sql:
        create log tables when running tests.
      mysql-test/mysql-test-run.pl:
        Add old logs flag to IM tests. As IM could only deal with
        old logs (this feature is not needed with log tables)
      mysql-test/r/connect.result:
        update result
      mysql-test/r/csv.result:
        update result
      mysql-test/r/im_utils.result:
        update result
      mysql-test/r/information_schema.result:
        update result
      mysql-test/r/mysqlcheck.result:
        update result
      mysql-test/r/show_check.result:
        update result
      mysql-test/r/system_mysql_db.result:
        update result
      mysql-test/t/connect.test:
        disable test if CSV engine is not in: result depends on the
        presence of CSV-based log tables
      mysql-test/t/csv.test:
        add tests for concurrent insert (the functionality is added
        to CSV in this patch)
      mysql-test/t/information_schema.test:
        disable test if CSV engine is not in: result depends on the
        presence of CSV-based log tables
      mysql-test/t/mysqlcheck.test:
        disable test if CSV engine is not in: result depends on the
        presence of CSV-based log tables
      mysql-test/t/show_check.test:
        disable test if CSV engine is not in: result depends on the
        presence of CSV-based log tables
      mysql-test/t/system_mysql_db.test:
        disable test if CSV engine is not in: result depends on the
        presence of CSV-based log tables
      mysql-test/t/system_mysql_db_fix.test:
        disable test if CSV engine is not in: result depends on the
        presence of CSV-based log tables
      scripts/mysql_create_system_tables.sh:
        new system tables: slow_log and general_log
      scripts/mysql_fix_privilege_tables.sql:
        add new log tables: use an SP to create them for
        non-csv build to work fine.
      sql/ha_myisam.cc:
        move locking-related checks to the hanlder
      sql/ha_myisam.h:
        new function declared
      sql/handler.h:
        new virtual function is added: we should check for handler-related
        locking issues in the handler
      sql/lock.cc:
        from now on we check for handler-related locking issues
        in the handler itself rather then in lock.cc
      sql/log.cc:
        Add log tables support, refactoring: there are log event
        handlers with common interface. They are used by the LOGGER
        class, which is responsible for their initialization, cleanup
        and managment. Logging to the tables provided by one of the
        log event handler types.
      sql/log.h:
        declare new log classes
      sql/log_event.cc:
        convert old logging routines calls to use new API
      sql/mysql_priv.h:
        define common log routines and objects
      sql/mysqld.cc:
        Add support for the log tables. Their initalization, cleanup
        and specific options.
      sql/share/errmsg.txt:
        add new error messages for the log tables
      sql/slave.cc:
        convert old logging routines calls to use new API
      sql/sql_base.cc:
        TABLE objects used by the logger should be skipped
        during refreshes (as log tables are always opened
        and locked). fix table_is_used to skip them.  This
        is needed for FLUSH LOGS to work
      sql/sql_db.cc:
        convert old logging routines calls to use new API
      sql/sql_delete.cc:
        fix TRUNCATE to work with log tables
      sql/sql_parse.cc:
        command_name is now an array of LEX_STRINGs
      sql/sql_prepare.cc:
        convert old logging routines calls to use new API
      sql/sql_show.cc:
        convert old logging routines calls to use new API
      sql/sql_table.cc:
        don't reoped the log tables for admin purposes
      sql/table.cc:
        mark log tables as such during the open
      sql/table.h:
        add log-related info
      storage/csv/ha_tina.cc:
        add support for concurrent insert (see bk commit - 5.1 tree
        (petr:1.1910) for standalone patch), add log tables-specific
        csv table handling.
      storage/csv/ha_tina.h:
        enable concurrent insert for CSV, add log table flag
      mysql-test/r/log_tables.result:
        New BitKeeper file ``mysql-test/r/log_tables.result''
      mysql-test/t/log_tables.test:
        New BitKeeper file ``mysql-test/t/log_tables.test''
      41536fce
  16. 17 Jan, 2006 2 commits
    • unknown's avatar
      WL #2747: Fix such that backup and restore works for user defined · 6f83ed91
      unknown authored
      partitioned tables in NDB
      
      
      include/my_sys.h:
        Move packfrm and unpackfrm to mysys
      mysql-test/r/ndb_restore.result:
        New test cases
      mysql-test/t/ndb_restore.test:
        New test cases
      mysys/my_compress.c:
        Moved packfrm and unpackfrm to mysys
      sql/ha_ndbcluster.cc:
        Set value of partition function in hidden field for user defined
        partitioning in NDB to handle restore and later on-line reorganize
        of partitions
        To save space value of those functions are limited to 32 bits
      sql/ha_partition.cc:
        Use new get_partition_id interface
      sql/handler.h:
        Use new get_partition_id interface
      sql/mysql_priv.h:
        Moved to mysys
      sql/mysqld.cc:
        Minor
      sql/opt_range.cc:
        New get_partition_id interface
      sql/sql_partition.cc:
        New get_partition_id interface
        Fix error checks of specification of engines in ALTER TABLE
        Moved packfrm and unpackfrm to mysys
      sql/sql_table.cc:
        Fixed debug printouts
      storage/ndb/include/kernel/ndb_limits.h:
        New constant
      storage/ndb/include/kernel/signaldata/DictTabInfo.hpp:
        New table description item
      storage/ndb/include/ndb_version.h.in:
        New version specific constant
      storage/ndb/include/ndbapi/NdbDictionary.hpp:
        New item in table descriptions
      storage/ndb/src/common/debugger/signaldata/DictTabInfo.cpp:
        New item in table descriptions
      storage/ndb/src/kernel/blocks/backup/Backup.cpp:
        Write fragment id in backup's log entry
      storage/ndb/src/kernel/blocks/backup/BackupFormat.hpp:
        Write fragment id in backup's log entry
      storage/ndb/src/kernel/blocks/dbdict/Dbdict.cpp:
        New item in table description
      storage/ndb/src/kernel/blocks/dbdict/Dbdict.hpp:
        New item in table description
      storage/ndb/src/kernel/blocks/dbdih/DbdihMain.cpp:
        Moved constant
      storage/ndb/src/ndbapi/NdbDictionary.cpp:
        New item in table description
      storage/ndb/src/ndbapi/NdbDictionaryImpl.cpp:
        New item in table description
      storage/ndb/src/ndbapi/NdbDictionaryImpl.hpp:
        New item in table description
      storage/ndb/tools/Makefile.am:
        Compress library needed for ndb_restore
      storage/ndb/tools/restore/Restore.cpp:
        Handle fragment id and also handle backups from older versions
      storage/ndb/tools/restore/Restore.hpp:
        Use fragment id
      storage/ndb/tools/restore/consumer.hpp:
        Use fragment id
      storage/ndb/tools/restore/consumer_printer.cpp:
        Use fragment id
      storage/ndb/tools/restore/consumer_printer.hpp:
        Use fragment id
      storage/ndb/tools/restore/consumer_restore.cpp:
        Code to map node groups if new cluster has different set of
        node groups from original cluster
        Very simple search and replace parser of partition syntax in frm file
        Fix settings of partition id properly using fragment id and hidden
        field in tables
      storage/ndb/tools/restore/consumer_restore.hpp:
        Changed function headers and new one for mapping node groups
      storage/ndb/tools/restore/consumer_restorem.cpp:
        Use fragment id
      storage/ndb/tools/restore/restore_main.cpp:
        New parameter to set node group map, parser for this parameter
      6f83ed91
    • 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
  17. 12 Jan, 2006 2 commits
    • unknown's avatar
      wl2325 wl2324 · 4c798b42
      unknown authored
      mysql-test/include/have_ndb_extra.inc:
        New BitKeeper file ``mysql-test/include/have_ndb_extra.inc''
      mysql-test/include/not_ndb.inc:
        New BitKeeper file ``mysql-test/include/not_ndb.inc''
      mysql-test/r/have_ndb_extra.require:
        New BitKeeper file ``mysql-test/r/have_ndb_extra.require''
      mysql-test/r/ndb_alter_table_row.result:
        New BitKeeper file ``mysql-test/r/ndb_alter_table_row.result''
      mysql-test/r/ndb_alter_table_stm.result:
        New BitKeeper file ``mysql-test/r/ndb_alter_table_stm.result''
      mysql-test/r/ndb_binlog_basic.result:
        New BitKeeper file ``mysql-test/r/ndb_binlog_basic.result''
      mysql-test/r/ndb_binlog_multi.result:
        New BitKeeper file ``mysql-test/r/ndb_binlog_multi.result''
      mysql-test/r/ndb_multi_row.result:
        New BitKeeper file ``mysql-test/r/ndb_multi_row.result''
      mysql-test/r/not_ndb.require:
        New BitKeeper file ``mysql-test/r/not_ndb.require''
      mysql-test/r/rpl_ndb_bank.result:
        New BitKeeper file ``mysql-test/r/rpl_ndb_bank.result''
      mysql-test/r/rpl_ndb_basic.result:
        New BitKeeper file ``mysql-test/r/rpl_ndb_basic.result''
      mysql-test/r/rpl_ndb_disk.result:
        New BitKeeper file ``mysql-test/r/rpl_ndb_disk.result''
      mysql-test/r/rpl_ndb_idempotent.result:
        New BitKeeper file ``mysql-test/r/rpl_ndb_idempotent.result''
      mysql-test/r/rpl_ndb_load.result:
        New BitKeeper file ``mysql-test/r/rpl_ndb_load.result''
      mysql-test/r/rpl_ndb_multi.result:
        New BitKeeper file ``mysql-test/r/rpl_ndb_multi.result''
      mysql-test/r/rpl_ndb_sync.result:
        New BitKeeper file ``mysql-test/r/rpl_ndb_sync.result''
      mysql-test/r/rpl_row_basic_7ndb.result:
        New BitKeeper file ``mysql-test/r/rpl_row_basic_7ndb.result''
      mysql-test/t/ndb_alter_table_row.test:
        New BitKeeper file ``mysql-test/t/ndb_alter_table_row.test''
      mysql-test/t/ndb_alter_table_stm.test:
        New BitKeeper file ``mysql-test/t/ndb_alter_table_stm.test''
      mysql-test/t/ndb_binlog_basic.test:
        New BitKeeper file ``mysql-test/t/ndb_binlog_basic.test''
      mysql-test/t/ndb_binlog_multi.test:
        New BitKeeper file ``mysql-test/t/ndb_binlog_multi.test''
      mysql-test/t/ndb_multi_row.test:
        New BitKeeper file ``mysql-test/t/ndb_multi_row.test''
      mysql-test/t/rpl_ndb_bank.test:
        New BitKeeper file ``mysql-test/t/rpl_ndb_bank.test''
      mysql-test/t/rpl_ndb_basic.test:
        New BitKeeper file ``mysql-test/t/rpl_ndb_basic.test''
      mysql-test/t/rpl_ndb_disk.test:
        New BitKeeper file ``mysql-test/t/rpl_ndb_disk.test''
      mysql-test/t/rpl_ndb_idempotent.test:
        New BitKeeper file ``mysql-test/t/rpl_ndb_idempotent.test''
      mysql-test/t/rpl_ndb_load.test:
        New BitKeeper file ``mysql-test/t/rpl_ndb_load.test''
      mysql-test/t/rpl_ndb_multi.test:
        New BitKeeper file ``mysql-test/t/rpl_ndb_multi.test''
      mysql-test/t/rpl_ndb_sync.test:
        New BitKeeper file ``mysql-test/t/rpl_ndb_sync.test''
      mysql-test/t/rpl_row_basic_7ndb.test:
        New BitKeeper file ``mysql-test/t/rpl_row_basic_7ndb.test''
      sql/ha_ndbcluster_binlog.cc:
        New BitKeeper file ``sql/ha_ndbcluster_binlog.cc''
      sql/ha_ndbcluster_binlog.h:
        New BitKeeper file ``sql/ha_ndbcluster_binlog.h''
      sql/ha_ndbcluster_tables.h:
        New BitKeeper file ``sql/ha_ndbcluster_tables.h''
      sql/rpl_injector.cc:
        New BitKeeper file ``sql/rpl_injector.cc''
      sql/rpl_injector.h:
        New BitKeeper file ``sql/rpl_injector.h''
      storage/ndb/include/kernel/signaldata/DihFragCount.hpp:
        New BitKeeper file ``storage/ndb/include/kernel/signaldata/DihFragCount.hpp''
      4c798b42
    • unknown's avatar
      WL#1563 - Modify MySQL to support fast CREATE/DROP INDEX · 085c97c1
      unknown authored
      NDB cluster is not fully supported. This will be added with
      WL 1892 (NDB Handler: Add support for CREATE/DROP INDEX).
      Some preparatory code for this is already present though.
      A change for the "duplicate key" error message is planned
      for another changeset.
      
      
      include/my_base.h:
        WL#1563 - Modify MySQL to support fast CREATE/DROP INDEX
        Defined a mask of flags which must be the same for two indexes
        if they should compare as compatible.
        Added an error number for a new drop index error message.
      mysql-test/r/key.result:
        WL#1563 - Modify MySQL to support fast CREATE/DROP INDEX
        The test result.
      mysql-test/t/key.test:
        WL#1563 - Modify MySQL to support fast CREATE/DROP INDEX
        The test case.
      sql/handler.cc:
        WL#1563 - Modify MySQL to support fast CREATE/DROP INDEX
        Prepared for a later change in an error message:
        Replace index number by index name for "duplicate key" error.
        Added handling for the new drop index error message.
      sql/handler.h:
        WL#1563 - Modify MySQL to support fast CREATE/DROP INDEX
        Added new flags and methods.
        Removed old flags and methods (from the last attempt).
      sql/share/errmsg.txt:
        WL#1563 - Modify MySQL to support fast CREATE/DROP INDEX
        Added a new error message for drop index.
      sql/sql_table.cc:
        WL#1563 - Modify MySQL to support fast CREATE/DROP INDEX
        Moved definitions to the top of the file.
        In mysql_prepare_table() allow an index to have the name
        "PRIMARY" if it has the key type "Key::PRIMARY".
        Added a parenthesis for readability.
        Removed old code from the last attempt.
        Some changes to compare_tables():
        - Input parameter "List<Key> *key_list" is replaced by
          "KEY *key_info_buffer, uint key_count".
        - Output parameters added: "index_drop_buffer/index_drop_count"
          and "index_add_buffer/index_add_count".
        - Key comparison must now find matching keys in changed
          old and new key lists.
        - Key comparison of a key is easier now because both old
          and new keys are of type 'KEY'.
        Call mysql_prepare_table() before compare_tables(). The
        translated KEY structs are needed at some places now.
        Inserted a code segment for checking alter_table_flags().
        Removed mysql_prepare_table() from the 'partition' branches
        (it is done above now).
        Removed a pair of unnecessary braces.
        Inserted a code segment for executing fast add/drop index.
        Made close of table dependent on whether it was opened.
        Prepared for NDB cluster support.
        Fixed commit to be called outside of LOCK_open.
      085c97c1
  18. 11 Jan, 2006 1 commit
    • unknown's avatar
      wl2723 - ndb opt. nr · 641ce5e9
      unknown authored
      mysql-test/t/rpl_multi_engine.test:
        merge fix
      libmysqld/sql_tablespace.cc:
        New BitKeeper file ``libmysqld/sql_tablespace.cc''
      mysql-test/r/ndb_basic_disk.result:
        New BitKeeper file ``mysql-test/r/ndb_basic_disk.result''
      mysql-test/t/ndb_basic_disk.test:
        New BitKeeper file ``mysql-test/t/ndb_basic_disk.test''
      sql/sql_tablespace.cc:
        New BitKeeper file ``sql/sql_tablespace.cc''
      storage/ndb/src/kernel/blocks/OptNR.txt:
        New BitKeeper file ``storage/ndb/src/kernel/blocks/OptNR.txt''
      storage/ndb/src/kernel/vm/mem.txt:
        New BitKeeper file ``storage/ndb/src/kernel/vm/mem.txt''
      storage/ndb/src/kernel/vm/ndbd_malloc_impl.cpp:
        New BitKeeper file ``storage/ndb/src/kernel/vm/ndbd_malloc_impl.cpp''
      storage/ndb/src/kernel/vm/ndbd_malloc_impl.hpp:
        New BitKeeper file ``storage/ndb/src/kernel/vm/ndbd_malloc_impl.hpp''
      storage/ndb/tools/ndb_error_reporter:
        New BitKeeper file ``storage/ndb/tools/ndb_error_reporter''
      641ce5e9
  19. 10 Jan, 2006 1 commit
  20. 05 Jan, 2006 1 commit
  21. 04 Jan, 2006 1 commit
    • unknown's avatar
      WL#2985 "Partition Pruning": · dc2a6e22
      unknown authored
      - post-...-post review fixes
      - Added "integer range walking" that allows to do partition pruning for "a <=? t.field <=? b"
        by finding used partitions for a, a+1, a+2, ..., b-1, b. 
      
      
      mysql-test/r/partition_pruning.result:
        WL#2985 "Partition Pruning": tests for "integer range walking"
      mysql-test/t/partition.test:
        WL#2985 "Partition Pruning": post-review fixes
      mysql-test/t/partition_pruning.test:
        WL#2985 "Partition Pruning": tests for "integer range walking"
      sql/handler.h:
        WL#2985 "Partition Pruning": "integer range walking": 
        - class partition_info now has pointers to "partitioning interval analysis" functions
        - added "partition set iterator" definitions.
      sql/opt_range.cc:
        WL#2985 "Partition Pruning": "integer range walking":
        - Switched to use "partitioning interval analysis" functions
        - Fixed two problems in find_used_partitions() that occur on complicated WHERE clauses.
      sql/sql_partition.cc:
        WL#2985 "Partition Pruning": "integer range walking": 
        - Added "partitioning interval analysis" functions: get_part_iter_for_interval_via_mapping, 
          get_part_iter_for_interval_via_walking, 
        - Added appropriate partition-set-iterator implementations
        - Added a function to set up Partitioning Interval Analysis-related fields in partition_info.
      sql/sql_select.cc:
        WL#2985 "Partition pruning": added comments.
      dc2a6e22
  22. 02 Jan, 2006 1 commit
    • unknown's avatar
      cleanup of SHOW STATUS code, as a preparation for WL#2935 · c81a379c
      unknown authored
      (MySQL plugin interface: status variables)
      
      adding SHOW_FUNC, removing SHOW_some_specific_value,
      only generic SHOW_LONG/SHOW_CHAR/etc are recognized.
      changing to use SHOW_FUNC instead of ha_update_statistics
      
      
      sql/ha_innodb.h:
        cleanup of SHOW STATUS code, as a preparation for WL#2935
        removing ha_update_statistics().
      sql/handler.cc:
        cleanup of SHOW STATUS code, as a preparation for WL#2935
        removing ha_update_statistics().
      sql/handler.h:
        cleanup of SHOW STATUS code, as a preparation for WL#2935
        removing ha_update_statistics().
      sql/mysqld.cc:
        cleanup of SHOW STATUS code, as a preparation for WL#2935
        adding SHOW_FUNC, removing SHOW_some_specific_variable,
        only generic SHOW_LONG/SHOW_CHAR/etc are recognized.
        changing to use SHOW_FUNC instead of ha_update_statistics
      sql/set_var.cc:
        cleanup of SHOW STATUS code, as a preparation for WL#2935
        adding SHOW_FUNC, removing SHOW_some_specific_variable,
        only generic SHOW_LONG/SHOW_CHAR/etc are recognized.
      sql/sql_show.cc:
        cleanup of SHOW STATUS code, as a preparation for WL#2935
        adding SHOW_FUNC, removing SHOW_some_specific_variable,
        only generic SHOW_LONG/SHOW_CHAR/etc are recognized.
        changing to use SHOW_FUNC instead of ha_update_statistics
      sql/structs.h:
        cleanup of SHOW STATUS code, as a preparation for WL#2935
        adding SHOW_FUNC, removing SHOW_some_specific_variable,
        only generic SHOW_LONG/SHOW_CHAR/etc are recognized.
      c81a379c
  23. 29 Dec, 2005 1 commit
  24. 22 Dec, 2005 2 commits
    • unknown's avatar
      WL#2985 "Partition Pruning" · f19fb870
      unknown authored
      sql/ha_ndbcluster.cc:
        WL#2985 "Partition Pruning": added part_info->used_partitions initialization
      sql/ha_partition.cc:
        WL#2985 "Partition Pruning": added part_info->used_partitions initialization
      sql/handler.h:
        WL#2985 "Partition Pruning": 
        Added function prototypes
        in partition_info:
         - Added 'used_partitions' bitmap
         - Added comments
      sql/item.h:
        WL#2985 "Partition Pruning": 
        - added enum monotonicity_info
        - added virtual Item::get_monotonicity_info()
      sql/item_timefunc.cc:
        WL#2985 "Partition Pruning": 
        - added Item_func_to_days::get_monotonicity_info()
        - added Item_func_year::get_monotonicity_info()
      sql/item_timefunc.h:
        WL#2985 "Partition Pruning": 
        - added Item_func_to_days::get_monotonicity_info()
        - added Item_func_year::get_monotonicity_info()
      sql/opt_range.cc:
        WL#2985 "Partition Pruning":
        - Split out PARAM structure into PARAM and RANGE_OPT_PARAM part.
        - Added partition pruning module code.
      sql/opt_range.h:
        WL#2985 "Partition Pruning": 
        Added prune_partitions() function declaration. This is the entry point for partition pruning 
        module
      sql/sql_class.cc:
        WL#2985 "Partition Pruning": added support for "EXPLAIN PARTITIONS SELECT ..."
      sql/sql_lex.h:
        WL#2985 "Partition Pruning": added support for "EXPLAIN PARTITIONS SELECT ..."
      sql/sql_partition.cc:
        WL#2985 "Partition Pruning": 
         - Added get_list_array_idx_for_endpoint and get_range_... functions to support partition 
           pruning on "partition_field < const"-like intervals.
         - Added partition_info::used_partitions bitmap.
         - Added make_used_partitions_str function
         - Fixed BUG#15819
      sql/sql_select.cc:
        WL#2985 "Partition Pruning": 
        - Added prune_partitions() invocation right before the range analysis
        - Added code to handle return value from prune_partitions()
        - Added support for "EXPLAIN PARTITIONS SELECT ..."
      sql/sql_yacc.yy:
        #2985 "Partition Pruning": added support for "EXPLAIN PARTITIONS SELECT ..."
      f19fb870
    • 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
  25. 21 Dec, 2005 2 commits
    • unknown's avatar
      plugin version changes · c3c43e12
      unknown authored
      include/plugin.h:
        relocate version
      sql/handler.cc:
        no version checks here
      sql/handler.h:
        version is kinda short
      sql/sql_show.cc:
        version is a short, rearrange and show all
      storage/csv/ha_tina.cc:
        rearrange version
      storage/example/ha_example.cc:
        rearrange version
      c3c43e12
    • 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
  26. 15 Dec, 2005 1 commit
    • unknown's avatar
      bug #15521 (Cannot reorganise a partition with a new name equal to the old name) · 1b74cbd9
      unknown authored
      mysql-test/r/partition.result:
        result fixed
      mysql-test/r/partition_mgm_err.result:
        result fixed
      mysql-test/t/partition.test:
        test case added
      mysql-test/t/partition_mgm_err.test:
        test modified to produce the declared error
      sql/handler.h:
        check_reorganise_list interface
      sql/sql_partition.cc:
        check_reorganise_list implementation
      sql/sql_table.cc:
        now we call check_reorganise_list to do proper test.
        Also we should set right no_parts value as it can change here
      1b74cbd9
  27. 26 Nov, 2005 1 commit
  28. 25 Nov, 2005 1 commit
    • unknown's avatar
      Made set_part_info a handler method and not a ha_partition method only · 68e89d69
      unknown authored
      The previous variant where it was a specific ha_partition method
      only worked for the partition handler. It was unfortunately called also
      for the NDB handler and in this case it called a random method in the
      NDB handler with random input.
      
      
      sql/ha_ndbcluster.cc:
        Moved initialisation of some handler variables to
        set_part_info method called earlly in the open process
      sql/ha_ndbcluster.h:
        Moved initialisation of some handler variables to
        set_part_info method called earlly in the open process
      sql/ha_partition.h:
        Made set_part_info a handler method and not a ha_partition method only
      sql/handler.h:
        Made set_part_info a handler method and not a ha_partition method only
      sql/sql_partition.cc:
        Made set_part_info a handler method and not a ha_partition method only
      68e89d69
  29. 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
  30. 10 Nov, 2005 1 commit
    • unknown's avatar
      Added handlerton flag to make storage engines invisable via flag. · fca8f01a
      unknown authored
      mysql-test/r/ps_1general.result:
        Remove binlog from visable engine list.
      sql/handler.h:
        Added documentation to HTON's
      sql/log.cc:
        binlog now has hidden flag show that it does now show up in show storage engine list.
      sql/sql_show.cc:
        Flag removes engines from view in show storage engines
      fca8f01a
  31. 07 Nov, 2005 1 commit
    • 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
  32. 06 Nov, 2005 2 commits
    • unknown's avatar
      WL #528: Faster free_tmp_table · 89288fac
      unknown authored
      89288fac
    • unknown's avatar
      Reapplied portability changes, from changesets by kent, joerg and msvensson · dbfe5a96
      unknown authored
      mysys/base64.c:
        Portability change for SCO/HP, compiler don't like
        doing pointer arithmetic on void* variable
      include/my_bitmap.h:
        "inline" functions (especially in header files) should be declared "static",
        or else we may get "multiply defined" when they are used in several modules.
        (Solaris compiler problem)
      sql/handler.h:
        Compatibility change for AIX compiler
      storage/bdb/Makefile.in:
        Added bdb "sequence" directory to "make dist"
      cmd-line-utils/readline/complete.c:
        Avoid FreeBSD 5.3 problems including <sys/file.h>
      mysql-test/t/disabled.def:
        Disable compress.test for now
      storage/bdb/build_unix/.IGNORE_ME:
        File that is copied to prevent empty directories in source TAR
      dbfe5a96
  33. 05 Nov, 2005 1 commit
    • unknown's avatar
      Fix of crashed 5.1 tree (wrong merge + wrong pullout patch forced us to create a new 5.1 tree) · 9314a207
      unknown authored
      This is a merge of 5.0 -> 5.1 + some code from old 5.1 tree to get all tests to work and keep the .frm format the same as the old 5.1 tree.
      
      
      BitKeeper/etc/ignore:
        added libmysqld/sql_plugin.cc
      include/Makefile.am:
        Added plugin.hd
      include/m_ctype.h:
        Added my_strchr
      include/my_base.h:
        Added HA_USES_PARSER
        Merge with old 5.1 tree
      libmysqld/Makefile.am:
        Added sql_plugin.cc
      mysql-test/r/ndb_gis.result:
        Fixed results after merge
      sql/Makefile.am:
        Addes sql_plugin.h and sql_plugin.cc
      sql/ha_heap.h:
        Indentation fix
      sql/ha_partition.cc:
        Made partition_hton visible outside
        After merge fixes (for call to get_new_handler)
      sql/handler.cc:
        Added partition_hton to handlerton
      sql/handler.h:
        Added partion to handlerton
        Updated mysql_unpack_partion() from old 5.1 tree
      sql/mysql_priv.h:
        Added sql_plugin.h
      sql/records.cc:
        After merge fix
      sql/share/errmsg.txt:
        Added new errors messages from old 5.1 tree
      sql/sql_partition.cc:
        Removed compiler warnings
        Updated mysql_unpack_partition() from latest 5.1 tree
      sql/structs.h:
        Update KEY from latest 5.1 tree (to get table.cc to compile)
      sql/table.cc:
        Merged .frm format from 5.0, new 5.1 and old 5.1 tree
        (We now use same format as the old 5.1 tree)
        Note that this patch includes code for HA_USE_PARSER which is not usable until rest of 5.1 tree is restored
      sql/unireg.cc:
        Merged .frm format from 5.0, new 5.1 and old 5.1 tree
        (We now use same format as the old 5.1 tree)
        Note that this patch includes code for HA_USE_PARSER which is not usable until rest of 5.1 tree is restored
      strings/Makefile.am:
        Added my_strchr.c
      include/plugin.h:
        New BitKeeper file ``include/plugin.h''
      sql/sql_plugin.cc:
        New BitKeeper file ``sql/sql_plugin.cc''
      sql/sql_plugin.h:
        New BitKeeper file ``sql/sql_plugin.h''
      strings/my_strchr.c:
        New BitKeeper file ``strings/my_strchr.c''
      9314a207