An error occurred fetching the project authors.
  1. 14 Apr, 2010 1 commit
    • Sergey Vojtovich's avatar
      BUG#39053 - UNISTALL PLUGIN does not allow the storage engine · fe38084f
      Sergey Vojtovich authored
                  to cleanup open connections
      
      It was possible to UNINSTALL storage engine plugin when binding
      between THD object and storage engine is still active (e.g. in
      the middle of transaction).
      
      To avoid unclean deactivation (uninstall) of storage engine plugin
      in the middle of transaction, additional storage engine plugin
      lock is acquired by thd_set_ha_data().
      
      If ha_data is not null and storage engine plugin was not locked
      by thd_set_ha_data() in this connection before, storage engine
      plugin gets locked.
      
      If ha_data is null and storage engine plugin was locked by
      thd_set_ha_data() in this connection before, storage engine
      plugin lock gets released.
      
      If handlerton::close_connection() didn't reset ha_data, server does
      it immediately after calling handlerton::close_connection().
      
      Note that this is just a framework fix, storage engines must switch
      to thd_set_ha_data() from thd_ha_data() if they want to see fit.
      
      include/mysql/plugin.h:
        As thd_{get|set}_ha_data() have some extra logic now, they
        must be implemented on server side.
      include/mysql/plugin.h.pp:
        As thd_{get|set}_ha_data() have some extra logic now, they
        must be implemented on server side.
      sql/handler.cc:
        Make sure ha_data is reset and ha_data lock is released.
      sql/handler.h:
        hton is not supposed to be updated by ha_lock_engine(),
        make it const.
      sql/sql_class.cc:
        As thd_{get|set}_ha_data() have some extra logic now, they
        must be implemented on server side.
      sql/sql_class.h:
        Added ha_data lock.
      fe38084f
  2. 16 Mar, 2010 1 commit
  3. 10 Jun, 2009 1 commit
    • Vladislav Vaintroub's avatar
      Backport WL#3653 to 5.1 to enable bundled innodb plugin. · dd86e2cd
      Vladislav Vaintroub authored
      Remove custom DLL loader code from innodb plugin code, use 
      symbols exported from mysqld.
      
      
      storage/innodb_plugin/handler/ha_innodb.cc:
        Remove a Win32 workaround for current_thd.
        The original  problem that innodb plugin used
        value of TLS variable across DLL boundaries is 
        solved in MySQL server (current_thd is a function
        not TLS variable now)
      storage/innodb_plugin/handler/handler0alter.cc:
        Remove custom delay loader
      storage/innodb_plugin/handler/handler0vars.h:
        Remove custom delay loader
      storage/innodb_plugin/handler/i_s.cc:
        Remove custom delay loader
      storage/innodb_plugin/handler/win_delay_loader.cc:
        Remove custom delay loader
      storage/innodb_plugin/plug.in:
        Remove commented out MYSQL_PLUGIN_STATIC, 
        CMake would not parse that correctly
      dd86e2cd
  4. 19 Feb, 2008 2 commits
    • unknown's avatar
      Bug#34598 · 958df8ba
      unknown authored
        "crash on hpita: Invalid address alignment"
        Replace dangerous pointer arithmetic - it may occurr where sizeof(int) is
        less than size of machine alignment requirement.
      
      
      include/mysql/plugin.h:
        bug34598
          change of update func prototype
      sql/sql_plugin.cc:
        bug34598
          Avoid dangerous pointer arithmetic which can cause unaligned word access.
          Change of update function prototype
      958df8ba
    • unknown's avatar
      Applied InnoDB snapshot innodb-5.1-ss2298 · 3858e96a
      unknown authored
      Fixes the following bugs:
      
      - Bug #33349: possible race condition revolving around data dictionary and repartitioning
        Introduce retry/sleep logic as a workaround for a transient bug
        where ::open fails for partitioned tables randomly if we are using
        one file per table.
      
      - Bug #34053: normal users can enable innodb_monitor logging
        In CREATE TABLE and DROP TABLE check whether the table in question is one
        of the magic innodb_monitor tables and whether the user has enough rights
        to mess with it before doing anything else.
      
      - Bug #22868: 'Thread thrashing' with > 50 concurrent conns under an upd-intensive workloadw
      - Bug #29560: InnoDB >= 5.0.30 hangs on adaptive hash rw-lock 'waiting for an X-lock'
        This is a combination of changes that forward port the scalability fix applied to 5.0
        through r1001.
        It reverts changes r149 and r122 (these were 5.1 specific changes made in lieu of
        scalability fix of 5.0)
        Then it applies r1001 to 5.0 which is the original scalability fix.
        Finally it applies r2082 which fixes an issue with the original fix.
      
      - Bug #30930: Add auxiliary function to retrieve THD::thread_id
        Add thd_get_thread_id() function.  Also make check_global_access() function
        visible to InnoDB under INNODB_COMPATIBILITY_HOOKS #define.
      
      
      include/mysql/plugin.h:
        Add thd_get_thread_id() accessor function
      mysql-test/r/innodb.result:
        Applied InnoDB snapshot innodb-5.1-ss2298
        
        Revision r2261:
        branches/5.1: Merge a change from MySQL AB:
        
        ChangeSet@2007-10-13 15:49:42+03:00, aelkin@koti.dsl.inet.fi
        
        Bug #29136 erred multi-delete on trans table does not rollback the statement
        
        innodb.test, innodb.result: trans table specific test added
      mysql-test/t/innodb.test:
        Applied InnoDB snapshot innodb-5.1-ss2298
      sql/mysql_priv.h:
        Make check_global_access() declaration available if when
        INNODB_COMPATIBILITY_HOOKS is defined.
      sql/sql_class.cc:
        Add thd_get_thread_id() accessor function.
        
        Add 'extern "C"' to definition for thd_get_xid().  Not strictly
        needed, but in keeping with our coding style.
      storage/innobase/btr/btr0cur.c:
        Applied InnoDB snapshot innodb-5.1-ss2298
        
        Revision r2295:
        branches/5.1:
        
        Merge r2294 from branches/5.0:
        
        Fix typo and add comma in comment.
      storage/innobase/handler/ha_innodb.cc:
        Applied InnoDB snapshot innodb-5.1-ss2298
        
        - But remove the declaration of check_global_access() from ha_innodb.cc,
          because it is now visible in mysql_priv.h under INNODB_COMPATIBILITY_HOOKS
        
        Revision r2270:
        branches/5.1:
        
        Rename the user visible parameter innodb-use-adaptive-hash-indexes to
        innodb-adaptive-hash-index so that it is in sync with MySQL 5.0.
        
        Suggested by:	Heikki
        Approved by:	Heikki
        
        
        Revision r2236:
        branches/5.1: bug#33349
        
        Introduce retry/sleep logic as a workaround for a transient bug
        where ::open fails for partitioned tables randomly if we are using
        one file per table.
        
        
        Reviewed by: Heikki
        
        
        Revision r2282:
        branches/5.1:
        
        Fix Bug#34053:
        * In CREATE TABLE and DROP TABLE check whether the table in question is one
          of the magic innodb_monitor tables and whether the user has enough rights
          to mess with it before doing anything else.
        * Implement a mysql-test testcase.
        
        Approved by:	Heikki
        
        
        Revision r2246:
        branches/5.1:
        
        Fix formatting of the autoinc-lock-mode command line parameter.
        
        Old view (./mysqld --help --verbose):
        
          --innodb-autoinc-lock-mode=#
                              The AUTOINC lock modes supported by InnoDB:
          0 => Old
                              style AUTOINC locking (for backward compatibility)
          1 =>
                              New style AUTOINC locking
          2 => No AUTOINC locking
                              (unsafe for SBR)
        
        New view:
        
          --innodb-autoinc-lock-mode=#
                              The AUTOINC lock modes supported by InnoDB:
                              0 => Old style AUTOINC locking (for backward
                              compatibility)
                              1 => New style AUTOINC locking
                              2 => No AUTOINC locking (unsafe for SBR)
        
        Looks like these strings are "automatically" wrapped by MySQL in the
        following way:
        * newlines (\n) in the string are ignored
        * newline separator (\n) is inserted every 57 or so characters.
        * lots of white space is appended to each inserted new line.
        
        Approved by:	Heikki
      storage/innobase/include/os0sync.h:
        Applied InnoDB snapshot innodb-5.1-ss2298
        
        Revision r2268:
        branches/5.1: Port of r2267
        
        This is a combination of changes that forward port the scalability fix applied to 5.0
        through r1001.
        It reverts changes r149 and r122 (these were 5.1 specific changes made in lieu of
        scalability fix of 5.0)
        Then it applies r1001 to 5.0 which is the original scalability fix.
        Finally it applies r2082 which fixes an issue with the original fix.
        
        Reviewed by: Heikki
      storage/innobase/include/read0read.h:
        Applied InnoDB snapshot innodb-5.1-ss2298
        
        Revision r2188:
        branches/5.1: Remove unused field can_be_too_old from read_view_struct.
      storage/innobase/include/row0mysql.h:
        Applied InnoDB snapshot innodb-5.1-ss2298
        
        Revision r2282:
        branches/5.1:
        
        Fix Bug#34053:
        * In CREATE TABLE and DROP TABLE check whether the table in question is one
          of the magic innodb_monitor tables and whether the user has enough rights
          to mess with it before doing anything else.
        * Implement a mysql-test testcase.
        
        Approved by:	Heikki
        
        
        Revision r2272:
        branches/5.1:
        
        Fix typo in comment.
      storage/innobase/include/sync0arr.h:
        Applied InnoDB snapshot innodb-5.1-ss2298
        
        Revision r2268:
        branches/5.1: Port of r2267
        
        This is a combination of changes that forward port the scalability fix applied to 5.0
        through r1001.
        It reverts changes r149 and r122 (these were 5.1 specific changes made in lieu of
        scalability fix of 5.0)
        Then it applies r1001 to 5.0 which is the original scalability fix.
        Finally it applies r2082 which fixes an issue with the original fix.
        
        Reviewed by: Heikki
      storage/innobase/include/sync0rw.h:
        Applied InnoDB snapshot innodb-5.1-ss2298
        
        Revision r2268:
        branches/5.1: Port of r2267
        
        This is a combination of changes that forward port the scalability fix applied to 5.0
        through r1001.
        It reverts changes r149 and r122 (these were 5.1 specific changes made in lieu of
        scalability fix of 5.0)
        Then it applies r1001 to 5.0 which is the original scalability fix.
        Finally it applies r2082 which fixes an issue with the original fix.
        
        Reviewed by: Heikki
      storage/innobase/include/sync0rw.ic:
        Applied InnoDB snapshot innodb-5.1-ss2298
        
        Revision r2268:
        branches/5.1: Port of r2267
        
        This is a combination of changes that forward port the scalability fix applied to 5.0
        through r1001.
        It reverts changes r149 and r122 (these were 5.1 specific changes made in lieu of
        scalability fix of 5.0)
        Then it applies r1001 to 5.0 which is the original scalability fix.
        Finally it applies r2082 which fixes an issue with the original fix.
        
        Reviewed by: Heikki
      storage/innobase/include/sync0sync.h:
        Applied InnoDB snapshot innodb-5.1-ss2298
        
        Revision r2268:
        branches/5.1: Port of r2267
        
        This is a combination of changes that forward port the scalability fix applied to 5.0
        through r1001.
        It reverts changes r149 and r122 (these were 5.1 specific changes made in lieu of
        scalability fix of 5.0)
        Then it applies r1001 to 5.0 which is the original scalability fix.
        Finally it applies r2082 which fixes an issue with the original fix.
        
        Reviewed by: Heikki
      storage/innobase/include/sync0sync.ic:
        Applied InnoDB snapshot innodb-5.1-ss2298
        
        Revision r2268:
        branches/5.1: Port of r2267
        
        This is a combination of changes that forward port the scalability fix applied to 5.0
        through r1001.
        It reverts changes r149 and r122 (these were 5.1 specific changes made in lieu of
        scalability fix of 5.0)
        Then it applies r1001 to 5.0 which is the original scalability fix.
        Finally it applies r2082 which fixes an issue with the original fix.
        
        Reviewed by: Heikki
      storage/innobase/os/os0sync.c:
        Applied InnoDB snapshot innodb-5.1-ss2298
        
        Revision r2268:
        branches/5.1: Port of r2267
        
        This is a combination of changes that forward port the scalability fix applied to 5.0
        through r1001.
        It reverts changes r149 and r122 (these were 5.1 specific changes made in lieu of
        scalability fix of 5.0)
        Then it applies r1001 to 5.0 which is the original scalability fix.
        Finally it applies r2082 which fixes an issue with the original fix.
        
        Reviewed by: Heikki
      storage/innobase/read/read0read.c:
        Applied InnoDB snapshot innodb-5.1-ss2298
        
        Revision r2188:
        branches/5.1: Remove unused field can_be_too_old from read_view_struct.
      storage/innobase/row/row0mysql.c:
        Applied InnoDB snapshot innodb-5.1-ss2298
        
        Revision r2282:
        branches/5.1:
        
        Fix Bug#34053:
        * In CREATE TABLE and DROP TABLE check whether the table in question is one
          of the magic innodb_monitor tables and whether the user has enough rights
          to mess with it before doing anything else.
        * Implement a mysql-test testcase.
        
        Approved by:	Heikki
        
        
        Revision r2272:
        branches/5.1:
        
        Fix typo in comment.
      storage/innobase/srv/srv0srv.c:
        Applied InnoDB snapshot innodb-5.1-ss2298
        
        Revision r2268:
        branches/5.1: Port of r2267
        
        This is a combination of changes that forward port the scalability fix applied to 5.0
        through r1001.
        It reverts changes r149 and r122 (these were 5.1 specific changes made in lieu of
        scalability fix of 5.0)
        Then it applies r1001 to 5.0 which is the original scalability fix.
        Finally it applies r2082 which fixes an issue with the original fix.
        
        Reviewed by: Heikki
      storage/innobase/sync/sync0arr.c:
        Applied InnoDB snapshot innodb-5.1-ss2298
        
        Revision r2268:
        branches/5.1: Port of r2267
        
        This is a combination of changes that forward port the scalability fix applied to 5.0
        through r1001.
        It reverts changes r149 and r122 (these were 5.1 specific changes made in lieu of
        scalability fix of 5.0)
        Then it applies r1001 to 5.0 which is the original scalability fix.
        Finally it applies r2082 which fixes an issue with the original fix.
        
        Reviewed by: Heikki
      storage/innobase/sync/sync0rw.c:
        Applied InnoDB snapshot innodb-5.1-ss2298
        
        Revision r2268:
        branches/5.1: Port of r2267
        
        This is a combination of changes that forward port the scalability fix applied to 5.0
        through r1001.
        It reverts changes r149 and r122 (these were 5.1 specific changes made in lieu of
        scalability fix of 5.0)
        Then it applies r1001 to 5.0 which is the original scalability fix.
        Finally it applies r2082 which fixes an issue with the original fix.
        
        Reviewed by: Heikki
      storage/innobase/sync/sync0sync.c:
        Applied InnoDB snapshot innodb-5.1-ss2298
        
        Revision r2268:
        branches/5.1: Port of r2267
        
        This is a combination of changes that forward port the scalability fix applied to 5.0
        through r1001.
        It reverts changes r149 and r122 (these were 5.1 specific changes made in lieu of
        scalability fix of 5.0)
        Then it applies r1001 to 5.0 which is the original scalability fix.
        Finally it applies r2082 which fixes an issue with the original fix.
        
        Reviewed by: Heikki
      mysql-test/r/innodb_bug34053.result:
        Applied InnoDB snapshot innodb-5.1-ss2298
        
        Revision r2282:
        branches/5.1:
        
        Fix Bug#34053:
        * In CREATE TABLE and DROP TABLE check whether the table in question is one
          of the magic innodb_monitor tables and whether the user has enough rights
          to mess with it before doing anything else.
        * Implement a mysql-test testcase.
        
        Approved by:	Heikki
      mysql-test/t/innodb_bug34053.test:
        Applied InnoDB snapshot innodb-5.1-ss2298
        
        Revision r2282:
        branches/5.1:
        
        Fix Bug#34053:
        * In CREATE TABLE and DROP TABLE check whether the table in question is one
          of the magic innodb_monitor tables and whether the user has enough rights
          to mess with it before doing anything else.
        * Implement a mysql-test testcase.
        
        Approved by:	Heikki
      3858e96a
  5. 31 Aug, 2007 1 commit
    • unknown's avatar
      Never access thd->ha_data directly, use getters/setters from the plugin · 3b85708a
      unknown authored
      API instead.
      This is a pre-requisite of the fix for Bug 12713, which changes the
      data type of thd->ha_data from void * to struct Ha_data.
      
      
      include/mysql/plugin.h:
        Provide accessors to thd->ha_data for simple and robust code.
      sql/ha_ndbcluster_binlog.h:
        Use getters/setters of thd->ha_data, instead of direct access.
      sql/handler.cc:
        Use a getter of thd->ha_data instead of direct access.
      sql/log.cc:
        Use getters/setters of thd->ha_data, instead of direct access.
      sql/rpl_utility.h:
        Fix a compilation warning (declaration order must match initialization
        order in constructor).
      storage/federated/ha_federated.cc:
        Use interface accessors to thd->ha_data, instead of direct access.
      3b85708a
  6. 16 Aug, 2007 2 commits
    • unknown's avatar
      Fix doxygen warnings. · a8774294
      unknown authored
      sql/field.h:
        Fix doxygen warnings - too complex return value type, it choked on it.
      sql/field_conv.cc:
        Fix doxygen warnings - too complex return value type, it choked on it.
      a8774294
    • unknown's avatar
      Doxygen warnings. · b748a9bb
      unknown authored
      b748a9bb
  7. 30 Jul, 2007 1 commit
    • unknown's avatar
      Slow query log to file now displays queries with microsecond precission · 21e25f8b
      unknown authored
      --long-query-time is now given in seconds with microseconds as decimals
      --min_examined_row_limit added for slow query log
      long_query_time user variable is now double with 6 decimals
      Added functions to get time in microseconds
      Added faster time() functions for system that has gethrtime()  (Solaris)
      We now do less time() calls.
      Added field->in_read_set() and field->in_write_set() for easier field manipulation by handlers
      set_var.cc and my_getopt() can now handle DOUBLE variables.
      All time() calls changed to my_time()
      my_time() now does retry's if time() call fails.
      Added debug function for stopping in mysql_admin_table() when tables are locked
      Some trivial function and struct variable renames to avoid merge errors.
      Fixed compiler warnings
      Initialization of some time variables on windows moved to my_init() 
      
      
      include/my_getopt.h:
        Added support for double arguments
      include/my_sys.h:
        Fixed wrong type to packfrm()
        Added new my_time functions
      include/mysql/plugin.h:
        Added support for DOUBLE
      libmysql/CMakeLists.txt:
        Added new time functions
      libmysql/Makefile.shared:
        Added new time functions
      mysql-test/r/variables.result:
        Testing of long_query_time
      mysql-test/t/variables.test:
        Testing of long_query_time
      mysys/charset.c:
        Fixed compiler warnings
      mysys/default_modify.c:
        Fixed compiler warnings
      mysys/hash.c:
        Fixed compiler warnings
      mysys/mf_getdate.c:
        Use my_time()
      mysys/mf_iocache2.c:
        Fixed compiler warnings
      mysys/mf_pack.c:
        Fixed compiler warnings
      mysys/mf_path.c:
        Fixed compiler warnings
      mysys/my_append.c:
        Fixed compiler warnings
      mysys/my_compress.c:
        Fixed compiler warnings
      mysys/my_copy.c:
        Fixed compiler warnings
      mysys/my_gethwaddr.c:
        Fixed compiler warnings
      mysys/my_getopt.c:
        Added support for double arguments
      mysys/my_getsystime.c:
        Added functions to get time in microseconds.
        Added faster time() functions for system that has gethrtime()  (Solaris)
        Moved windows initialization code to my_init()
      mysys/my_init.c:
        Added initializing of variables needed for windows time functions
      mysys/my_static.c:
        Added variables needed for windows time functions
      mysys/my_static.h:
        Added variables needed for windows time functions
      mysys/my_thr_init.c:
        Added THR_LOCK_time, used for faster my_time()
      mysys/mysys_priv.h:
        Added THR_LOCK_time, used for faster my_time()
      mysys/thr_alarm.c:
        time() -> my_time()
      sql/event_data_objects.cc:
        end_time() -> set_current_time()
      sql/event_queue.cc:
        end_time() -> set_current_time()
      sql/event_scheduler.cc:
        Fixed compiler warnings
      sql/field.h:
        Added field->in_read_set() and field->in_write_set() for easier field manipulation by handlers
      sql/item.h:
        Added decimal to Item_float(double)
      sql/item_cmpfunc.h:
        Added decimal to Item_float(double)
      sql/item_timefunc.cc:
        time() -> my_time()
      sql/item_xmlfunc.cc:
        Fixed compiler warning
      sql/lock.cc:
        lock_time() -> set_time_after_lock()
      sql/log.cc:
        Timing in slow query log to file is now done in microseconds
        Changed some while() loops to for() loops.
        Fixed indentation
        time() -> my_time()
      sql/log.h:
        Slow query logging is now done based on microseconds
      sql/log_event.cc:
        time() -> my_time()
        Fixed arguments to new Item_float()
      sql/mysql_priv.h:
        Fixed compiler warnings
        Added opt_log_slow_slave_statements
      sql/mysqld.cc:
        Added --log_slow_slave_statements and --min_examined_row_limit
        --long-query-time now takes a double argument with microsecond resolution
        Don't write shutdown message when using --help
        Removed not needed \n
        Thread create time and connect time is now done in microseconds
        time() -> my_time()
        Avoid some time() calls
      sql/net_serv.cc:
        Fixed compiler warnings
      sql/parse_file.cc:
        time() -> my_time()
      sql/set_var.cc:
        Added support for DOUBLE variables
        Added support for variables that are given in seconds with microsecond resolution
      sql/set_var.h:
        Added support for variables that are given in seconds with microsecond resolution
      sql/slave.cc:
        Allow logging of slave queries to slow query log if 'opt_log_slow_slave_statements' is given
        time() -> my_time()
      sql/sql_cache.h:
        Fixed compiler warning()
      sql/sql_class.cc:
        Initialize new THD variables
      sql/sql_class.h:
        long_query_time is now in microseconds
        Added min_examined_row_limit
        Reordered some THD elements for higher efficency
        Added timers in microseconds (connect_utime, thr_create_utime, start_utime and utime_after_lock)
        Start of query is now recorded both in seconds and in microseconds.
        Following renames was made for more clarity and avoid merge problems from earlier versions:
        connect_time -> connect_utime
        thr_create_time -> thr_create_utime
        end_time()  -> set_current_time()
        lock_time() -> set_time_after_lock()
        
        Added THD::start_utime, which is start of query in microseconds from some arbitary time
        Added function THD::current_utime()
        
        Removed safe_time() as retry's are handled in my_time()
      sql/sql_connect.cc:
        User resources are now using microsecond resolution
      sql/sql_insert.cc:
        end_time() -> set_current_time()
      sql-common/client.c:
        time() -> my_time()
      sql/sql_parse.cc:
        Testing if we should print to slow_query_log() is now done with microsecond precission.
        If min_examined_row_limit is given, only log queries to slow query log that has examined more rows than this.
      sql/sql_select.cc:
        Simplify code now that Item_float() takes decimals as argument
      sql/sql_show.cc:
        time() -> my_time()
        Added support for SYS_DOUBLE
      sql/sql_table.cc:
        Added debug function for stopping in mysql_admin_table() when tables are locked
      sql/structs.h:
        intime -> reset_utime
      21e25f8b
  8. 04 Jul, 2007 1 commit
    • unknown's avatar
      WL#3914: Additonal accessors required to compile InnoDB as a plugin storage engine · 0b437391
      unknown authored
      Add more accessors to MySQL internals in mysql/plugin.h, for storage
      engine plugins.
      
      Add some accessors specific to the InnoDB storage engine, to allow
      InnoDB to be compiled as a plugin (without MYSQL_SERVER).  InnoDB
      has additional requirements, due to its foreign key support, etc.
      
      
      include/m_string.h:
        Add structure tag to LEX_STRING definition, so that it can be referred
        to by forward declarations.  Allow struct st_mysql_lex_string to be
        defined here, or in mysql/plugin.h.
      include/my_global.h:
        Define INNODB_COMPATIBILITY_HOOKS unconditionally; it brackets
        some definitions needed for the InnoDB storage engine plugin
        which do not belong in our general plugin interface.
      include/mysql/plugin.h:
        Additional accessors for MySQL internals:
         
        - Full definition of MYSQL_LEX_STRING (identical to LEX_STRING from
          m_string.h)
        - Full definition of MYSQL_XID (binary compatible with XID from
          handler.h)
        - mysql_tmpfile(), creates a temporary file in mysqld's tmpdir
        - thd_killed(), to check killed state of connection
        - thd_alloc() and similar allocation functions
        - thd_get_xid(), to get XID of connection's transaction
        - mysql_query_cache_invalidate4, to invalidate a table's query cache entries
      sql/handler.h:
        Use MYSQL_XIDDATASIZE definition from mysql/plugin.h, to avoid redundant
        definitions
      sql/log.cc:
        Add definitions for two InnoDB compatibility hooks:
        - mysql_bin_log_file(), to get log filename
        - mysql_bin_log_file_pos, to get position in file
          
        These are defined only if INNODB_COMPATIBILITY_HOOKS is defined;
        they are needed by the InnoDB plugin, but aren't part of the general
        plugin interface.  They are declared in ha_innodb.h for InnoDB's
        use.
      sql/mysql_priv.h:
        Expose some server internals when INNODB_COMPATIBILITY_HOOKS is
        defined, so that InnoDB can be built as a plugin when MYSQL_SERVER
        is not defined.
          
        Move make_lex_string inside THD class.
      sql/sql_cache.cc:
        Add definiton of mysql_query_cache_invalidate4(), a part of the
        plugin API (mysql/plugin.h).
      sql/sql_class.cc:
        Add definitions for several accessor functions which form part
        of the plugin API (mysql/plugin.h):
        - mysql_tmpfile()
        - thd_alloc() and friends
        - thd_make_lex_string()
        - thd_get_xid()
         
        Add definitons for accessor functions which InnoDB requires,
        but which are not part of the plugin interface:
        - thd_charset()
        - thd_query()
        - thd_slave_thread()
        - thd_non_transactional_update()
        - thd_binlog_format()
         
        Move definition of make_lex_string() from sql_show.cc into THD class
      sql/sql_class.h:
        Remove LEX_STRING_make(), and move make_lex_string() from sql_show.cc inside THD
        class.
      sql/sql_parse.cc:
        Use thd->make_lex_string() instead of thd->LEX_STRING_make()
      sql/sql_show.cc:
        Move make_lex_string() inside THD class
      storage/innobase/handler/ha_innodb.cc:
        Call thd_make_lex_string() instead of make_lex_string().
      0b437391
  9. 03 Jul, 2007 1 commit
    • unknown's avatar
      Complementary fix for bug #29353: inserting a negative value to a csv table · d6055eeb
      unknown authored
      leads to the table corruption
      
      New Field::store() method implemented to explicitly set thd->count_cuted_fields
      before value storing, instead of (incorrectly) setting it in the CSV storage engine.
      Thread row counter now properly incremented during check and repair in the CSV engine.
      
      
      include/mysql/plugin.h:
        Complementary fix for bug #29353: inserting a negative value to a csv table 
        leads to the table corruption
          - thd_inc_row_count() function prototype added, which allows a storage 
            engine to increment thread row counter.
      mysql-test/r/csv.result:
        Complementary fix for bug #29353: inserting a negative value to a csv table 
        leads to the table corruption
          - result adjusted.
      sql/field.cc:
        Complementary fix for bug #29353: inserting a negative value to a csv table 
        leads to the table corruption
          - Field::store(const char *to, uint length, CHARSET_INFO *cs,
                         enum_check_fields check_level)
            method introduced in order to explicitly set count_cuted_fields before 
            a ::store call, then reset it back after.
      sql/field.h:
        Complementary fix for bug #29353: inserting a negative value to a csv table 
        leads to the table corruption
          - Field::store(const char *to, uint length, CHARSET_INFO *cs,
                         enum_check_fields check_level)
            method introduced in order to explicitly set count_cuted_fields before 
            a ::store call, then reset it back after.
      sql/mysql_priv.h:
        Complementary fix for bug #29353: inserting a negative value to a csv table 
        leads to the table corruption
          - enum enum_check_fields moved from sql/sql_class.h to sql/mysql_priv.h
            as it's used now in the field.h
      sql/sql_class.cc:
        Complementary fix for bug #29353: inserting a negative value to a csv table 
        leads to the table corruption
          - implementation of the new thd_inc_row_count() function which increments
            thread row counter.
      sql/sql_class.h:
        Complementary fix for bug #29353: inserting a negative value to a csv table 
        leads to the table corruption
          - enum enum_check_fields moved from sql/sql_class.h to sql/mysql_priv.h
            as it's used now in the field.h
      storage/csv/ha_tina.cc:
        Complementary fix for bug #29353: inserting a negative value to a csv table 
        leads to the table corruption
          - removed #define MYSQL_SERVER 1 - "a storage engine should not need 
            internals of the server"
          - removed thd->count_cuted_fields= CHECK_FIELD_WARN as we are not allowed to 
            access internals of THD.
          - used new Field::store() method to explicitly set thd->count_cuted_fields to
            CHECK_FIELD_WARN
          - thd_inc_row_count() calls added to ha_tina::repair() and ha_tina::check()
            to get proper row count values.
      d6055eeb
  10. 02 May, 2007 1 commit
    • unknown's avatar
      WL#2936 · e231da19
      unknown authored
        Fix compiler warnings,
        Fix help output - this fixes im test failures.
        Fix incomplete change of SET plugin vars to ulonglong.
        Allow ER() to work without crashing when errmsg.sys has not been loaded.
      
      
      include/mysql/plugin.h:
        wl2936
          slip in const modifier for default values,
          this removes compiler warnings when assigning a string const as default value.
      sql/derror.cc:
        WL2936
          Allow init_errmessage() to return upon failure.
          Initialize errmesg to an array of empty strings if it failed to load errmsg.sys
      sql/mysqld.cc:
        wl2936
          Include Ingo's compiler-warnings fix.
          If init_errmessage() failed to load errmsg.sys, abort.
          Failure to set working directory not fatal when '--help' is specified, as
          server will terminate anyway after displaying help information.
      sql/sql_plugin.cc:
        wl2936
          complete change of SET vars from ulong to ulonglong.
      e231da19
  11. 30 Apr, 2007 1 commit
    • unknown's avatar
      WL#2936 · 0d0284a6
      unknown authored
        Change SET variables to be ulonglong type (64bit)
      
      
      include/mysql/plugin.h:
        WL2936
          Change SET variables to be unsigned long long type
          Changed use of ulonglong to unsigned long long
      sql/sql_plugin.cc:
        WL2936
          Change SET variables to be ulonglong type (64bit)
      0d0284a6
  12. 29 Apr, 2007 2 commits
  13. 15 Apr, 2007 1 commit
    • unknown's avatar
      more wl#2936 fixes: removed implicit ha_thd() calls (too error-prone), · 4c08ec4d
      unknown authored
      fixed an assert crash
      
      
      include/mysql/plugin.h:
        more wl#2936 fixes: no implicit ha_thd() calls
      mysql-test/mysql-test-run.pl:
        don't load system-wide plugins
      mysql-test/r/partition_innodb.result:
        fix the test
      mysql-test/t/partition_innodb.test:
        fix the test
      sql/handler.cc:
        more wl#2936 fixes: no implicit ha_thd() calls
      sql/handler.h:
        more wl#2936 fixes: no implicit ha_thd() calls
      sql/sql_class.cc:
        more wl#2936 fixes: no implicit ha_thd() calls
      sql/sql_plugin.cc:
        more wl#2936 fixes: assert crash
      storage/innobase/handler/ha_innodb.cc:
        more wl#2936 fixes: no implicit ha_thd() calls
      4c08ec4d
  14. 13 Apr, 2007 1 commit
    • unknown's avatar
      wl#2936 - fixing problems · bdc798eb
      unknown authored
      include/mysql/plugin.h:
        warning. no int/realsize
      mysys/my_getopt.c:
        combination of prefixes (e.g. --loose-skip-) didn't work
      sql/event_queue.cc:
        warning
      sql/handler.cc:
        assert
      sql/handler.h:
        comment
      sql/item_create.cc:
        warnings
      sql/log.cc:
        warnings
      sql/mysqld.cc:
        wl#2936 - fixing problems (memory leak in load_defaults,
        garbage in opt_[slow_]logname
      sql/partition_element.h:
        warnings
      sql/rpl_utility.h:
        warnings
      sql/set_var.cc:
        comment
      sql/set_var.h:
        warnings
      sql/sql_class.cc:
        warnings
      sql/sql_parse.cc:
        warnings
      sql/sql_plugin.cc:
        wl#2936 - fixing problems: portability, coding style,
        reporting of spurious errors, crashes, incorrect help output
      storage/example/ha_example.cc:
        comment
      storage/innobase/handler/ha_innodb.cc:
        wl#2936 - fixing problems (crash)
      bdc798eb
  15. 29 Mar, 2007 1 commit
    • unknown's avatar
      WL#2936 · 4cfc2fd9
      unknown authored
        "Plugin Server Variables"
        Post review cleanups.
      
      
      include/mysql/plugin.h:
        WL2936
          post review clean up
          fix macros to ensure correct type declarations
      sql/ha_partition.cc:
        WL2936
          post review clean up
          add in missing my_afree()
      sql/handler.cc:
        WL2936
          post review clean up
          remove stray semicolon
      sql/sql_plugin.cc:
        WL2936
          post review clean up
          fixup comments and debug code
      storage/innobase/handler/ha_innodb.cc:
        WL2936
          Include some of Marko Mäkelä's patches
      storage/innobase/handler/ha_innodb.h:
        WL2936
          Include some of Marko Mäkelä's patches
      4cfc2fd9
  16. 23 Mar, 2007 1 commit
    • unknown's avatar
      WL#2936 · a5ee9466
      unknown authored
        "Server variables for plugins"
        Post review fixes.
      
      
      client/mysql.cc:
        wl2936 "Plugin server variables" post review fixes
        compile fix. app_type is now a void* and it isn't actually used here.
      include/my_getopt.h:
        wl2936 "Plugin server variables" post review fixes
        make app_type into a void*. This also required changes to 
        client/mysql.cc and storage/ndb/src/mgmsrv/InitConfigFileParser.cpp
        in order to compile.
      include/my_global.h:
        wl2936 "Plugin server variables" post-review fixes
        declare compile_time_assert() macro.
        (provided by serg)
      include/mysql/plugin.h:
        wl2936 "Plugin server variables" post review fixes
        Add comments
      mysys/array.c:
        wl2936 "Plugin server variables" post review fixes
      mysys/typelib.c:
        wl2936 "Plugin server variables" post review fixes
        find_typeset() should not alter string
      sql/set_var.cc:
        wl2936 "Plugin server variables" post review fixes
        remove unnecessary code.
      sql/sql_class.cc:
        wl2936 "Plugin server variables" post review fixes
        explicitly declare export style for functions.
      sql/sql_lex.cc:
        wl2936 "Plugin server variables" post review fixes
        enforce that lex::plugins_static_buffer is declared immediately after
        lex::plugins.
      sql/sql_plugin.cc:
        wl2936 "Plugin Server variables" post review fixes
          sys_var_pluginvar does not need st_plugin_int at construction.
          remove debug code which was accidentially committed.
          add comments.
          fix mutex lock order.
      sql/sql_plugin.h:
        wl2936 "Plugin server variables" post review fixes
        add comment and macro to compare plugin_refs
      sql/table.cc:
        wl2936 "plugin server variables" post review fixes
        remove unneccessary unlock and variable.
        add checks for legacy type validity
      storage/ndb/src/mgmsrv/InitConfigFileParser.cpp:
        wl2936 "plugin server variables" post review fixes
        fix compile failure now that my_option::app_type is a void*
      a5ee9466
  17. 02 Mar, 2007 1 commit
    • unknown's avatar
      WL#2936 · aac0c0d9
      unknown authored
        "Server Variables for Plugins"
        Implement support for plugins to declare server variables.
        Demonstrate functionality by removing InnoDB specific code from sql/*
        New feature for HASH - HASH_UNIQUE flag
        New feature for DYNAMIC_ARRAY - initializer accepts preallocated ptr.
        Completed support for plugin reference counting.
      
      
      include/hash.h:
        New flag for HASH
          HASH_UNIQUE
      include/my_getopt.h:
        New data types for options: ENUM and SET.
        Use typelib to enumerate possible values.
        New flag variable:
          my_getopt_skip_unknown
      include/my_sys.h:
        change to DYNAMIC_ARRAY init functions to support pre-allocated buffers
      include/mysql.h:
        relocate inclusion of typelib due to longlong requirement
      include/mysql/plugin.h:
        wl2936
          New declarations for plugin server variable support.
          New functions for use by plugins
      include/mysys_err.h:
        new my_getopt return value: EXIT_ARGUMENT_INVALID
      include/typelib.h:
        new typelib function: find_typeset(), returns an int which is a SET of
        the elements in the typelib
      mysql-test/r/im_utils.result:
        change to more specific command line settings
        --skip-innodb => --skip-plugin-innodb
        etc.
      mysql-test/r/log_tables.result:
        set default storage engine to MEMORY so that test will succeed even
        when some of the other named storage engines are not present
      mysql-test/r/ndb_dd_basic.result:
        change in error message
      mysql-test/r/partition_innodb.result:
        change in results
      mysql-test/r/ps_1general.result:
        bdb doesn't exist, use myisam for a non-transactional engine
      mysql-test/r/variables.result:
        information schema doesn't sort row results for server variables.
      mysql-test/t/log_tables.test:
        set default storage engine to MEMORY so that test will succeed even
        when some of the other named storage engines are not present
      mysql-test/t/ndb_dd_basic.test:
        ALTER LOGFILE GROUP no longer silently fail here
      mysql-test/t/partition_innodb.test:
        ALTER TABLE no longer silently fails for unknown storage engine
      mysql-test/t/ps_1general.test:
        remove unneccessary parts
        use myisam as it is an always present non-transactional engine
      mysql-test/t/variables.test:
        information schema doesn't sort row results for server variables.
      mysql-test/t/warnings_engine_disabled-master.opt:
        use the new style command line option
      mysys/array.c:
        change to DYNAMIC_ARRAY init functions to support pre-allocated buffers
      mysys/hash.c:
        New flag for HASH
          HASH_UNIQUE
        Implement HASH_UNIQUE functionality by performing a hash_search
      mysys/my_getopt.c:
        New data types for options: ENUM and SET.
        Use typelib to enumerate possible values.
        New flag variable:
          my_getopt_skip_unknown
      mysys/typelib.c:
        new typelib function: find_typeset(), returns an int which is a SET of
        the elements in the typelib
      sql/ha_ndbcluster.cc:
        use ha_statistic_increment() method instead of
        statistic_increment() function
        ha_ndbcluster variable has gone away.
      sql/ha_partition.cc:
        fix for reference counting
      sql/ha_partition.h:
        fix for reference counting
      sql/handler.cc:
        fixes for reference counting
      sql/handler.h:
        fixes for reference counting
        some new methods to aid storage engine writers
      sql/item_func.cc:
        find_sys_var() function now requires thd
      sql/item_sum.cc:
        fixes for ref counting
      sql/mysql_priv.h:
        remove unneccessary globals.
        new lock: LOCK_system_variables_hash
      sql/mysqld.cc:
        Remove InnoBase specific code.
        Support plugin command line processing.
      sql/set_var.cc:
        Remove InnoBase specific declarations
        Remove redundant declarations
        changes to permit new variables at run time
        changes for ref counting
      sql/set_var.h:
        changes to permit new variables at run time
        changes for ref counting
      sql/sql_base.cc:
        changes for ref counting
      sql/sql_cache.cc:
        mark code as needing work in the future
      sql/sql_class.cc:
        new functions to aid plugin authors
        initialize variables for dynamic plugin variables
      sql/sql_class.h:
        remove InnoBase specific declarations
        New declarations for plugin variables.
      sql/sql_connect.cc:
        initialization and cleanup of plugin variables
      sql/sql_delete.cc:
        change for ref counting
      sql/sql_insert.cc:
        change for ref counting
      sql/sql_lex.cc:
        changes for ref counting and plugin variables
      sql/sql_lex.h:
        add properties for plugin ref counting,
        add to distructor to clean up
      sql/sql_partition.cc:
        changes for ref counting
      sql/sql_plugin.cc:
        WL2936
          Plugin Variables
          New methods and code to support server variables for plugins.
          New code to complete plugin reference counting
          Debug code adds further indirection so that malloc debugging can be
          used to aid finding plugin ref count leaks
      sql/sql_plugin.h:
        WL2936
          Plugin Variables
          New methods and code to support server variables for plugins.
          New code to complete plugin reference counting
          Debug code adds further indirection so that malloc debugging can be
          used to aid finding plugin ref count leaks
      sql/sql_repl.cc:
        replication system variables moved here from set_var.cc
      sql/sql_repl.h:
        new function to initialise replication server variables
      sql/sql_select.cc:
        changes for ref counting
      sql/sql_show.cc:
        changes for ref counting
      sql/sql_table.cc:
        changes for ref counting
      sql/sql_tablespace.cc:
        use supplied functions instead of digging into data structures manually
      sql/sql_yacc.yy:
        changes for ref counting
        find_sys_var() now requires thd parameter
        changes on reporting errors to keep user-visible behaviour the same.
      sql/structs.h:
        changes for ref counting
      sql/table.cc:
        changes for ref counting
      sql/table.h:
        changes for ref counting
      storage/federated/ha_federated.cc:
        use ha_statistic_increment() method instead of statistic_increment()
        function
      storage/heap/ha_heap.cc:
        use ha_statistic_increment() method instead of statistic_increment()
        function
      storage/innobase/handler/ha_innodb.cc:
        use ha_statistic_increment() method instead of statistic_increment()
        function
        WL2936
          Move InnoBase specific code out of mysqld.cc and into here
          Declare all required server variables for InnoBase
      storage/innobase/include/trx0trx.h:
        store a bit more state so that InnoBase does not have to dig into
        mysqld internal data structures.
      storage/myisam/ha_myisam.cc:
        use ha_statistic_increment() method instead of statistic_increment()
        function
      storage/myisammrg/ha_myisammrg.cc:
        use ha_statistic_increment() method instead of statistic_increment()
        function
      aac0c0d9
  18. 26 Jan, 2007 1 commit
    • unknown's avatar
      Two things: · 02d71f7b
      unknown authored
      1) Two small windows cleanups for Archive.
      2) Patch from Calvin for Falcon to be able to have its own I_S loaded. One example added for this, does hello world. 
      
      
      include/mysql/plugin.h:
        Added new I_S type.
      mysql-test/r/archive.result:
        Fixed not dropped table.
      mysql-test/t/archive.test:
        Added additional drop table
      sql/sql_plugin.cc:
        Adding support in for the I_S.
      sql/sql_show.cc:
        Added schema type for plugin I_S. Additional loops were added to pop these on to the end of requests.
      storage/archive/ha_archive.cc:
        Windwos typo
      02d71f7b
  19. 27 Dec, 2006 1 commit
    • unknown's avatar
      Many files: · 68d41d6e
      unknown authored
        Changed header to GPL version 2 only
      
      
      client/mysqlslap.c:
        Changed header to GPL version 2 only
      include/atomic/nolock.h:
        Changed header to GPL version 2 only
      include/atomic/rwlock.h:
        Changed header to GPL version 2 only
      include/atomic/x86-gcc.h:
        Changed header to GPL version 2 only
      include/atomic/x86-msvc.h:
        Changed header to GPL version 2 only
      include/my_atomic.h:
        Changed header to GPL version 2 only
      include/my_trie.h:
        Changed header to GPL version 2 only
      include/my_vle.h:
        Changed header to GPL version 2 only
      include/mysql/plugin.h:
        Changed header to GPL version 2 only
      mysys/my_atomic.c:
        Changed header to GPL version 2 only
      mysys/my_getncpus.c:
        Changed header to GPL version 2 only
      mysys/my_memmem.c:
        Changed header to GPL version 2 only
      mysys/my_vle.c:
        Changed header to GPL version 2 only
      mysys/trie.c:
        Changed header to GPL version 2 only
      plugin/Makefile.am:
        Changed header to GPL version 2 only
      server-tools/instance-manager/IMService.h:
        Changed header to GPL version 2 only
      server-tools/instance-manager/WindowsService.h:
        Changed header to GPL version 2 only
      server-tools/instance-manager/exit_codes.h:
        Changed header to GPL version 2 only
      server-tools/instance-manager/user_management_commands.h:
        Changed header to GPL version 2 only
      sql/authors.h:
        Changed header to GPL version 2 only
      sql/contributors.h:
        Changed header to GPL version 2 only
      sql/event_data_objects.cc:
        Changed header to GPL version 2 only
      sql/event_data_objects.h:
        Changed header to GPL version 2 only
      sql/event_db_repository.cc:
        Changed header to GPL version 2 only
      sql/event_db_repository.h:
        Changed header to GPL version 2 only
      sql/event_queue.cc:
        Changed header to GPL version 2 only
      sql/event_queue.h:
        Changed header to GPL version 2 only
      sql/event_scheduler.cc:
        Changed header to GPL version 2 only
      sql/event_scheduler.h:
        Changed header to GPL version 2 only
      sql/events.cc:
        Changed header to GPL version 2 only
      sql/events.h:
        Changed header to GPL version 2 only
      sql/ha_ndbcluster_binlog.cc:
        Changed header to GPL version 2 only
      sql/ha_ndbcluster_binlog.h:
        Changed header to GPL version 2 only
      sql/ha_ndbcluster_tables.h:
        Changed header to GPL version 2 only
      sql/ha_partition.cc:
        Changed header to GPL version 2 only
      sql/ha_partition.h:
        Changed header to GPL version 2 only
      sql/item_xmlfunc.cc:
        Changed header to GPL version 2 only
      sql/item_xmlfunc.h:
        Changed header to GPL version 2 only
      sql/log.h:
        Changed header to GPL version 2 only
      sql/partition_element.h:
        Changed header to GPL version 2 only
      sql/partition_info.cc:
        Changed header to GPL version 2 only
      sql/partition_info.h:
        Changed header to GPL version 2 only
      sql/rpl_filter.cc:
        Changed header to GPL version 2 only
      sql/rpl_filter.h:
        Changed header to GPL version 2 only
      sql/rpl_injector.cc:
        Changed header to GPL version 2 only
      sql/rpl_injector.h:
        Changed header to GPL version 2 only
      sql/rpl_mi.cc:
        Changed header to GPL version 2 only
      sql/rpl_mi.h:
        Changed header to GPL version 2 only
      sql/rpl_rli.cc:
        Changed header to GPL version 2 only
      sql/rpl_rli.h:
        Changed header to GPL version 2 only
      sql/rpl_tblmap.cc:
        Changed header to GPL version 2 only
      sql/rpl_tblmap.h:
        Changed header to GPL version 2 only
      sql/rpl_utility.cc:
        Changed header to GPL version 2 only
      sql/rpl_utility.h:
        Changed header to GPL version 2 only
      sql/sql_binlog.cc:
        Changed header to GPL version 2 only
      sql/sql_partition.cc:
        Changed header to GPL version 2 only
      sql/sql_partition.h:
        Changed header to GPL version 2 only
      sql/sql_plugin.cc:
        Changed header to GPL version 2 only
      sql/sql_plugin.h:
        Changed header to GPL version 2 only
      sql/sql_servers.cc:
        Changed header to GPL version 2 only
      sql/sql_servers.h:
        Changed header to GPL version 2 only
      sql/sql_tablespace.cc:
        Changed header to GPL version 2 only
      sql/sql_yacc.yy.bak:
        Changed header to GPL version 2 only
      storage/Makefile.am:
        Changed header to GPL version 2 only
      storage/archive/Makefile.am:
        Changed header to GPL version 2 only
      storage/blackhole/Makefile.am:
        Changed header to GPL version 2 only
      storage/csv/Makefile.am:
        Changed header to GPL version 2 only
      storage/example/Makefile.am:
        Changed header to GPL version 2 only
      storage/federated/Makefile.am:
        Changed header to GPL version 2 only
      storage/innobase/handler/Makefile.am:
        Changed header to GPL version 2 only
      storage/ndb/include/kernel/signaldata/AllocNodeId.hpp:
        Changed header to GPL version 2 only
      storage/ndb/include/kernel/signaldata/CreateFilegroup.hpp:
        Changed header to GPL version 2 only
      storage/ndb/include/kernel/signaldata/CreateFilegroupImpl.hpp:
        Changed header to GPL version 2 only
      storage/ndb/include/kernel/signaldata/CreateObj.hpp:
        Changed header to GPL version 2 only
      storage/ndb/include/kernel/signaldata/DictObjOp.hpp:
        Changed header to GPL version 2 only
      storage/ndb/include/kernel/signaldata/DihFragCount.hpp:
        Changed header to GPL version 2 only
      storage/ndb/include/kernel/signaldata/DropFilegroup.hpp:
        Changed header to GPL version 2 only
      storage/ndb/include/kernel/signaldata/DropFilegroupImpl.hpp:
        Changed header to GPL version 2 only
      storage/ndb/include/kernel/signaldata/DropObj.hpp:
        Changed header to GPL version 2 only
      storage/ndb/include/kernel/signaldata/Extent.hpp:
        Changed header to GPL version 2 only
      storage/ndb/include/kernel/signaldata/LgmanContinueB.hpp:
        Changed header to GPL version 2 only
      storage/ndb/include/kernel/signaldata/PgmanContinueB.hpp:
        Changed header to GPL version 2 only
      storage/ndb/include/kernel/signaldata/RestoreContinueB.hpp:
        Changed header to GPL version 2 only
      storage/ndb/include/kernel/signaldata/RestoreImpl.hpp:
        Changed header to GPL version 2 only
      storage/ndb/include/kernel/signaldata/RouteOrd.hpp:
        Changed header to GPL version 2 only
      storage/ndb/include/kernel/signaldata/TsmanContinueB.hpp:
        Changed header to GPL version 2 only
      storage/ndb/include/ndbapi/NdbIndexStat.hpp:
        Changed header to GPL version 2 only
      storage/ndb/ndbapi-examples/mgmapi_logevent/mgmapi_logevent.cpp:
        Changed header to GPL version 2 only
      storage/ndb/ndbapi-examples/mgmapi_logevent_dual/mgmapi_logevent_dual.cpp:
        Changed header to GPL version 2 only
      storage/ndb/ndbapi-examples/ndbapi_async/ndbapi_async.cpp:
        Changed header to GPL version 2 only
      storage/ndb/ndbapi-examples/ndbapi_async1/ndbapi_async1.cpp:
        Changed header to GPL version 2 only
      storage/ndb/ndbapi-examples/ndbapi_event/ndbapi_event.cpp:
        Changed header to GPL version 2 only
      storage/ndb/ndbapi-examples/ndbapi_retries/ndbapi_retries.cpp:
        Changed header to GPL version 2 only
      storage/ndb/ndbapi-examples/ndbapi_scan/ndbapi_scan.cpp:
        Changed header to GPL version 2 only
      storage/ndb/ndbapi-examples/ndbapi_simple/ndbapi_simple.cpp:
        Changed header to GPL version 2 only
      storage/ndb/ndbapi-examples/ndbapi_simple_dual/ndbapi_simple_dual.cpp:
        Changed header to GPL version 2 only
      storage/ndb/ndbapi-examples/ndbapi_simple_index/ndbapi_simple_index.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/dbdih/printSysfile.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/dbtup/DbtupDiskAlloc.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/dbtup/DbtupVarAlloc.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/dbtup/Undo_buffer.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/dbtup/Undo_buffer.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/dbtup/tuppage.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/dbtup/tuppage.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/dbtux/DbtuxStat.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/diskpage.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/lgman.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/lgman.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/pgman.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/pgman.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/print_file.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/record_types.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/restore.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/restore.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/tsman.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/tsman.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/DLCFifoList.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/DLCHashTable.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/DynArr256.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/DynArr256.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/KeyTable2Ref.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/LinearPool.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/NdbdSuperPool.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/NdbdSuperPool.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/Pool.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/Pool.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/RWPool.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/RWPool.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/Rope.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/SLFifoList.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/WOPool.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/WOPool.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/bench_pool.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/ndbd_malloc_impl.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/ndbd_malloc_impl.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/mgmsrv/ParamInfo.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/ndbapi/NdbIndexStat.cpp:
        Changed header to GPL version 2 only
      storage/ndb/test/ndbapi/testIndexStat.cpp:
        Changed header to GPL version 2 only
      storage/ndb/test/tools/listen.cpp:
        Changed header to GPL version 2 only
      storage/ndb/tools/restore/ndb_nodegroup_map.h:
        Changed header to GPL version 2 only
      strings/my_strchr.c:
        Changed header to GPL version 2 only
      unittest/mysys/base64-t.c:
        Changed header to GPL version 2 only
      unittest/mysys/bitmap-t.c:
        Changed header to GPL version 2 only
      unittest/mysys/my_atomic-t.c:
        Changed header to GPL version 2 only
      unittest/mytap/tap.c:
        Changed header to GPL version 2 only
      unittest/mytap/tap.h:
        Changed header to GPL version 2 only
      win/Makefile.am:
        Changed header to GPL version 2 only
      68d41d6e
  20. 05 Dec, 2006 1 commit
    • unknown's avatar
      BUG#23255 - Missing version parameter in plugin declaration example · 2e0a837b
      unknown authored
      Plugin interface version was not raised properly after incompatible
      changes to plugin structure were introduced.
      
      Fixed plugin interface version according to worklog 2761.
      
      
      include/mysql/plugin.h:
        Fixed plugin interface version according to worklog 2761.
      2e0a837b
  21. 11 Nov, 2006 1 commit
    • unknown's avatar
      This patch fixes the example engine, the example parser, and the example... · a4fba6ad
      unknown authored
      This patch fixes the example engine, the example parser, and the example daemon to compile. AKA You can now test that the interface is actually working :)
      
      
      configure.in:
        Removed unneeded call to old plugin syntax.
      include/mysql/plugin.h:
        Updates for daemon type (and fixed warning on declare end).
      plugin/fulltext/Makefile.am:
        Updated names so that we can install and test it.
      plugin/fulltext/plugin_example.c:
        Fixed wrong call.
      sql/mysqld.cc:
        Removed old have_example (we don't need it any longer).
      sql/set_var.cc:
        Removed old have_example
      sql/sql_plugin.cc:
        Added support for DAEMON type (just an internal raw plugin)
      storage/example/plug.in:
        Removed example static build so that we can test dynamic engines
      plugin/daemon_example/AUTHORS:
        New BitKeeper file ``plugin/daemon_example/AUTHORS''
      plugin/daemon_example/ChangeLog:
        New BitKeeper file ``plugin/daemon_example/ChangeLog''
      plugin/daemon_example/Makefile.am:
        New BitKeeper file ``plugin/daemon_example/Makefile.am''
      plugin/daemon_example/NEWS:
        New BitKeeper file ``plugin/daemon_example/NEWS''
      plugin/daemon_example/README:
        New BitKeeper file ``plugin/daemon_example/README''
      plugin/daemon_example/configure.in:
        New BitKeeper file ``plugin/daemon_example/configure.in''
      plugin/daemon_example/daemon_example.c:
        New BitKeeper file ``plugin/daemon_example/daemon_example.c''
      plugin/daemon_example/plug.in:
        New BitKeeper file ``plugin/daemon_example/plug.in''
      plugin/fulltext/plug.in:
        Added plug.in file so that we compile fulltext example!
      a4fba6ad
  22. 01 Nov, 2006 1 commit
    • unknown's avatar
      Fixed a lot of compiler warnings (Mainly in mysqld and instance manager) · 5695195e
      unknown authored
      Fixed some possible fatal wrong arguments to printf() style functions
      Initialized some not initialized variables
      Fixed bug in stored procedure and continue handlers
      (Fixes Bug#22150)
      
      
      include/mysql/plugin.h:
        Remove compiler warning
      mysql-test/mysql-test-run.pl:
        Ensure that --extern works on a clean tree (when 'var' directory doesn't exists)
      server-tools/instance-manager/commands.cc:
        Fixed possible use of unitialized variable
      server-tools/instance-manager/guardian.cc:
        Fixed wrong arguments to log_info() that could cause crashes
      server-tools/instance-manager/instance.cc:
        Fixed wrong arguments to log_info() and log_error() that could cause crashes
      server-tools/instance-manager/instance_options.cc:
        Fixed wrong arguments to log_error() that could cause crashes
      server-tools/instance-manager/mysql_connection.cc:
        Fixed wrong arguments to log_info()
      server-tools/instance-manager/parse.cc:
        Fixed possible use of unitialized variable
      server-tools/instance-manager/user_map.cc:
        Fixed wrong arguments to log_error() that could cause crashes
      sql/Makefile.am:
        Fix for bison 1.875
        (It write an __attribute__() tag that was causing compiler failures)
      sql/ha_ndbcluster.cc:
        Fixed wrong snprintf() arguments
        Remoed not used variables
      sql/ha_ndbcluster_binlog.cc:
        Fixed compiler warning (unsigned/signed comparision)
      sql/handler.cc:
        Fixed wrong parameter to hton->binlog_func()
      sql/item_cmpfunc.cc:
        Removed compiler warnings
      sql/item_timefunc.cc:
        Removed compiler warnings
      sql/log.cc:
        fixed wrong argument to snprintf()
      sql/mysqld.cc:
        Removed compiler warnings
        Fixed wrong arguments to printf()
      sql/partition_info.cc:
        Removed compiler warnings
      sql/protocol.cc:
        reset is_fatal_error for stored procedures
        (Fix for Bug#22150)
      sql/sp_head.cc:
        More DBUG information
        Reset is_fatal_error in case of continue handler.
        (Fix for Bug#22150)
      sql/sql_base.cc:
        Removed compiler warnings
      sql/sql_class.h:
        More DBUG information
      sql/sql_insert.cc:
        Removed compiler warnings
        Initialize not initialized variable (fatal bug)
      sql/sql_parse.cc:
        Added DBUG_ASSERT to detect if stored procedure code returns with a wrong state
        Removed compiler warning
      sql/sql_plugin.cc:
        Fied wrong aruguments to printf() (Fatal bug)
      sql/sql_select.cc:
        Initailize not initialized variable.
        Remove compiler warnings
        Fixed wrong argument to printf() (Possible fatal error)
      sql/sql_view.cc:
        Removed compiler warnings
      sql/table.cc:
        Fixed wrong argument to printf() (Possible fatal)
      5695195e
  23. 05 Oct, 2006 1 commit
    • unknown's avatar
      Added license information display to output of plugins schema, and tagged all... · b66058f5
      unknown authored
      Added license information display to output of plugins schema, and tagged all plugins with GPL flag. 
      
      
      include/mysql/plugin.h:
        Adding license information.
      plugin/fulltext/plugin_example.c:
        License
      sql/ha_ndbcluster.cc:
        License
      sql/ha_partition.cc:
        License
      sql/handler.h:
        License
      sql/log.cc:
        License
      sql/sql_show.cc:
        Additional PLUIN display information
      storage/archive/ha_archive.cc:
        License information added
      storage/blackhole/ha_blackhole.cc:
        License information added
      storage/csv/ha_tina.cc:
        License Information
      storage/example/ha_example.cc:
        License information
      storage/federated/ha_federated.cc:
        License Information
      storage/heap/ha_heap.cc:
        License Information
      storage/innobase/handler/ha_innodb.cc:
        License Information
      storage/myisam/ha_myisam.cc:
        License Information
      storage/myisammrg/ha_myisammrg.cc:
        License Information
      b66058f5
  24. 27 Sep, 2006 1 commit
    • unknown's avatar
      Removed Field (this came in as an idea from a previous patch by Serg) · 9d911016
      unknown authored
      include/mysql/plugin.h:
        Field Removed
      sql/ha_ndbcluster.cc:
        Field Removed
      sql/ha_partition.cc:
        Field Removed
      sql/log.cc:
        Removed Field
      storage/archive/ha_archive.cc:
        Removed Field
      storage/blackhole/ha_blackhole.cc:
        Removed Field
      storage/csv/ha_tina.cc:
        Removed Field
      storage/example/ha_example.cc:
        Removed Field
      storage/federated/ha_federated.cc:
        Removed Field
      storage/heap/ha_heap.cc:
        Removed Field
      storage/innobase/handler/ha_innodb.cc:
        Removed Field
      storage/myisam/ha_myisam.cc:
        Removed Field
      storage/myisammrg/ha_myisammrg.cc:
        Removed Field
      9d911016
  25. 15 Sep, 2006 1 commit
    • unknown's avatar
      This changes the order of the universe, black is now the new white. · 62c665fd
      unknown authored
      In practice this means that handlerton is now created by the server and is passed to the engine. Plugin startups can now also control how plugins are inited (and can optionally pass values). Bit more flexibility to those who want to write plugin interfaces to the database. 
      
      
      include/mysql/plugin.h:
        Optional to pass parameter now to init and deinit functions
      sql/ha_ndbcluster.cc:
        Cleanup, handlerton is now a pointer.
      sql/ha_ndbcluster_binlog.cc:
        Cleanup (handlerton is now a pointer)
      sql/ha_ndbcluster_binlog.h:
        Cleanup (handlerton is now a pointer)
      sql/ha_partition.cc:
        Cleaned up handlerton change
      sql/handler.cc:
        Cheanup of handlerton change
      sql/item_sum.cc:
        Cleanedup of handlerton change
      sql/log.cc:
        Cleanup of handlerton change
      sql/mysql_priv.h:
        Reverted patch for variables (what would have happen previously if a have_ would have been called that was dynamically loaded? boom!)
      sql/mysqld.cc:
        Cleanup of handlerton changes and reverted have variable patch
      sql/partition_info.cc:
        Cleanup of handlerton (we need to clean this up a bit more).
      sql/set_var.cc:
        Cleanup related to handlerton changes
      sql/sql_cache.cc:
        Handlerton changes cleanup
      sql/sql_insert.cc:
        Handlerton changes cleanup.
      sql/sql_partition.cc:
        Handlerton cleanup changes
      sql/sql_plugin.cc:
        Handlerton changes.
        
        init() can now be controlled by a plugin specific startup. 
        
        There was also an issue with how we deinited the status variables. It should have been occuring before we shut down the engines.
      sql/sql_select.cc:
        Handlerton cleanup changes
      sql/sql_show.cc:
        Handlerton cleanup changes
      sql/sql_table.cc:
        Handlerton cleanup changes
      sql/table.cc:
        Cleanup
      storage/archive/ha_archive.cc:
        Cleanup
      storage/archive/ha_archive.h:
        Cleanup
      storage/blackhole/ha_blackhole.cc:
        Cleanup
      storage/csv/ha_tina.cc:
        Cleanup
      storage/example/ha_example.cc:
        Cleanup
      storage/federated/ha_federated.cc:
        Cleanup
      storage/heap/ha_heap.cc:
        Cleanup
      storage/innobase/handler/ha_innodb.cc:
        Cleanup
      storage/myisam/ha_myisam.cc:
        Cleanup
      storage/myisammrg/ha_myisammrg.cc:
        Cleanup
      62c665fd
  26. 07 Sep, 2006 1 commit
    • unknown's avatar
      minor plugin api fixes: · e0777621
      unknown authored
      remove #define __attribute__(A) from plugin.h
      increase API version because placeholders were added
      more robust definition of min_plugin_interface_version
      
      
      include/mysql/plugin.h:
        move #define __attribute__(A) out of plugin.h (not part of the API)
        increase API version because placeholders were added
      plugin/fulltext/plugin_example.c:
        compilation failure on non-GCC compilers
      sql/sql_plugin.cc:
        more robust definition of min_plugin_interface_version
        it should work even when we forget to update it
      e0777621
  27. 30 Aug, 2006 1 commit
  28. 24 Jun, 2006 1 commit
  29. 30 May, 2006 1 commit
    • unknown's avatar
      Now ftparser does not need to bother about memory management - · 199ee891
      unknown authored
      it can tell MySQL to make a copy of everything (bug#17123)
      
      
      include/mysql/plugin.h:
        Now ftparser does not need to bother about memory management -
        it can tell MySQL to make a copy of everything (bug#17123)
        MYSQL_FTFLAGS_NEED_COPY flag
      storage/myisam/ft_boolean_search.c:
        param->flags
      storage/myisam/ft_nlq_search.c:
        param->flags. ft_parse takes a mem_root as an argument
      storage/myisam/ft_parser.c:
        ftparser takes a memroot as an argument. words are copied there, if necessary.
        memroot is reset for every parsing and free'd at the end of the statement.
      storage/myisam/ft_update.c:
        ftparser takes a memroot as an argument. words are copied there, if necessary.
        memroot is reset for every parsing and free'd at the end of the statement.
      storage/myisam/ftdefs.h:
        ftparser takes a memroot as an argument. words are copied there, if necessary.
        memroot is reset for every parsing and free'd at the end of the statement.
      storage/myisam/mi_check.c:
        ftparser takes a memroot as an argument. words are copied there, if necessary
      storage/myisam/myisamdef.h:
        memroot for ftparser in MI_INFO and MI_SORT_PARAM
      storage/myisam/sort.c:
        free ftparser memroot
      199ee891
  30. 28 May, 2006 2 commits
    • unknown's avatar
      Incompatible ftparser plugin API change. · 72c7dfe6
      unknown authored
      mysql_parse() and mysql_add_word() now take a MYSQL_FTPARSER_PARAM*,
      not a mysql_ftparam.
      
      
      client/Makefile.am:
        don't fail when rm cannot delete from read-only dir
      sql/sql_plugin.cc:
        fix min_plugin_info_interface_version to be less error-prone
      72c7dfe6
    • unknown's avatar
      handlerton cleanup: · 0aad8083
      unknown authored
      duplicate fields removed, st_mysql_storage_engine added to support
      run-time handlerton initialization (no compiler warnings), handler API
      is now tied to MySQL version, handlerton->plugin mapping added
      (slot-based), dummy default_hton removed, plugin-type-specific
      initialization generalized, built-in plugins are now initialized too,
      --default-storage-engine no longer needs a list of storage engines
      in handle_options().
      
      mysql-test-run.pl bugfixes
      
      
      include/mysql/plugin.h:
        added st_mysql_storage_engine
        made handlerton tied to MySQL version
      mysql-test/mysql-test-run.pl:
        bugfixes (umask, --no-defaults)
      mysql-test/r/ndb_dd_basic.result:
        update error message
      mysql-test/t/partition_mgm_err2.test:
        fix typo
      sql/ha_berkeley.cc:
        handlerton cleanup: remove duplicate fields, add st_mysql_storage_engine,
        initialize handlerton run-time to avoid compiler warnings
      sql/ha_berkeley.h:
        handlerton cleanup: remove duplicate fields, add st_mysql_storage_engine,
        initialize handlerton run-time to avoid compiler warnings
      sql/ha_federated.cc:
        handlerton cleanup: remove duplicate fields, add st_mysql_storage_engine,
        initialize handlerton run-time to avoid compiler warnings
      sql/ha_heap.cc:
        handlerton cleanup: remove duplicate fields, add st_mysql_storage_engine,
        initialize handlerton run-time to avoid compiler warnings
      sql/ha_innodb.cc:
        handlerton cleanup: remove duplicate fields, add st_mysql_storage_engine,
        initialize handlerton run-time to avoid compiler warnings
      sql/ha_innodb.h:
        handlerton cleanup: remove duplicate fields, add st_mysql_storage_engine,
        initialize handlerton run-time to avoid compiler warnings
      sql/ha_myisam.cc:
        handlerton cleanup: remove duplicate fields, add st_mysql_storage_engine,
        initialize handlerton run-time to avoid compiler warnings
      sql/ha_myisammrg.cc:
        handlerton cleanup: remove duplicate fields, add st_mysql_storage_engine,
        initialize handlerton run-time to avoid compiler warnings
      sql/ha_ndbcluster.cc:
        handlerton cleanup: remove duplicate fields, add st_mysql_storage_engine,
        initialize handlerton run-time to avoid compiler warnings
      sql/ha_ndbcluster.h:
        handlerton cleanup: remove duplicate fields, add st_mysql_storage_engine,
        initialize handlerton run-time to avoid compiler warnings
      sql/ha_ndbcluster_binlog.cc:
        no 'name' in the handlerton anymore
      sql/ha_partition.cc:
        handlerton cleanup: remove duplicate fields, add st_mysql_storage_engine,
        initialize handlerton run-time to avoid compiler warnings
      sql/handler.cc:
        handlerton cleanup: remove duplicate fields, add st_mysql_storage_engine,
        handlerton->plugin mapping
      sql/handler.h:
        handlerton cleanup: remove duplicate fields
      sql/log.cc:
        handlerton cleanup: remove duplicate fields, add st_mysql_storage_engine,
        initialize handlerton run-time to avoid compiler warnings
      sql/mysql_priv.h:
        handler.h needs plugin.h
      sql/mysqld.cc:
        Convert --default-storage-engine to a handlerton* when
        all storage engines are initialized and not in getopt
      sql/set_var.cc:
        no name in the handlerton anymore
      sql/sql_parse.cc:
        no default_hton anymore
      sql/sql_partition.cc:
        no name in the handlerton anymore
      sql/sql_plugin.cc:
        generalize plugin type-specific initialization.
        initialize built-in plugins too
      sql/sql_plugin.h:
        generalize plugin type-specific initialization.
      sql/sql_show.cc:
        st_mysql_storage_engine structure
        no name in the handlerton anymore
      sql/sql_table.cc:
        no name in the handlerton anymore
        no default_hton anymore
      sql/sql_tablespace.cc:
        no name in the handlerton anymore
        no default_hton anymore
      sql/sql_yacc.yy:
        no default_hton anymore
        issue "unknown storage engine" warning where it is discovered
      storage/archive/ha_archive.cc:
        handlerton cleanup: remove duplicate fields, add st_mysql_storage_engine,
        initialize handlerton run-time to avoid compiler warnings
      storage/archive/ha_archive.h:
        handlerton cleanup: remove duplicate fields, add st_mysql_storage_engine,
        initialize handlerton run-time to avoid compiler warnings
      storage/blackhole/ha_blackhole.cc:
        handlerton cleanup: remove duplicate fields, add st_mysql_storage_engine,
        initialize handlerton run-time to avoid compiler warnings
      storage/csv/ha_tina.cc:
        handlerton cleanup: remove duplicate fields, add st_mysql_storage_engine,
        initialize handlerton run-time to avoid compiler warnings
      storage/example/ha_example.cc:
        handlerton cleanup: remove duplicate fields, add st_mysql_storage_engine,
        initialize handlerton run-time to avoid compiler warnings
      0aad8083
  31. 02 May, 2006 1 commit
    • unknown's avatar
      WL#3201 additional post-review fixes · 3a62ffc8
      unknown authored
      config/ac-macros/plugins.m4:
        remove unneccessary `ifelse'
        add comment, add missing dnl
      configure.in:
        change description for heap engine
      include/mysql/plugin.h:
        change macro name
      sql/ha_berkeley.cc:
        store strings statically for use in handlerton and plugin structures
      sql/ha_federated.cc:
        store strings statically for use in handlerton and plugin structures
      sql/ha_heap.cc:
        store strings statically for use in handlerton and plugin structures
      sql/ha_innodb.cc:
        store strings statically for use in handlerton and plugin structures
      sql/ha_myisam.cc:
        store strings statically for use in handlerton and plugin structures
      sql/ha_myisammrg.cc:
        store strings statically for use in handlerton and plugin structures
      sql/ha_ndbcluster.cc:
        store strings statically for use in handlerton and plugin structures
      sql/ha_partition.cc:
        store strings statically for use in handlerton and plugin structures
      storage/archive/ha_archive.cc:
        store strings statically for use in handlerton and plugin structures
      storage/blackhole/ha_blackhole.cc:
        store strings statically for use in handlerton and plugin structures
      storage/csv/ha_tina.cc:
        store strings statically for use in handlerton and plugin structures
      storage/example/ha_example.cc:
        store strings statically for use in handlerton and plugin structures
      3a62ffc8
  32. 13 Apr, 2006 1 commit
    • unknown's avatar
      WL#3201 · bf4731ec
      unknown authored
        " Configure support for server plugins "
      
      
      storage/blackhole/ha_blackhole.h:
        Rename: sql/ha_blackhole.h -> storage/blackhole/ha_blackhole.h
      BitKeeper/deleted/.del-storage.m4~24bf2fffdaa328ad:
        Delete: config/ac-macros/storage.m4
      BitKeeper/deleted/.del-ha_archive.m4~a07fac7110b39294:
        Delete: config/ac-macros/ha_archive.m4
      BitKeeper/deleted/.del-ha_blackhole.m4~8ed06eb91f6420ed:
        Delete: config/ac-macros/ha_blackhole.m4
      BitKeeper/deleted/.del-ha_example.m4~1dfb268163297708:
        Delete: config/ac-macros/ha_example.m4
      BitKeeper/deleted/.del-ha_federated.m4~7acddd58286acfd6:
        Delete: config/ac-macros/ha_federated.m4
      BitKeeper/deleted/.del-ha_innodb.m4~6f141fb5b80c1f39:
        Delete: config/ac-macros/ha_innodb.m4
      BitKeeper/deleted/.del-ha_partition.m4~bc57067550be5f89:
        Delete: config/ac-macros/ha_partition.m4
      BitKeeper/deleted/.del-ha_tina.m4~f658506ebbc113ca:
        Delete: config/ac-macros/ha_tina.m4
      BitKeeper/deleted/.del-handlerton.cc.in~377156e7b06067cc:
        Delete: sql/handlerton.cc.in
      BitKeeper/deleted/.del-handlerton-win.cc~322a7e59507976df:
        Delete: sql/handlerton-win.cc
      BUILD/SETUP.sh:
        WL#3201
          Changes in configure arguments
      Makefile.am:
        WL#3201
          changes in build subst names
      config/ac-macros/ha_berkeley.m4:
        WL#3201
          remove unused variable
          Makefile is always made
      config/ac-macros/ha_ndbcluster.m4:
        WL#3201
          remove unused variables
          Split big macro
      configure.in:
        WL#3201
          out with storage.m4, in with plugins.m4
          change how plugins are declared
          include makefiles, remove handlerton.cc, add sql_builtin.cc
      include/mysql/plugin.h:
        WL#3201
          support static and dynamic build - MYSQL_DYNAMIC_PLUGIN
      libmysqld/Makefile.am:
        WL#3201
          Storage engine files still left in sql subdir are not conditionally
          compiled. Should move them out soon,
      plugin/Makefile.am:
        WL#3201
          update makefile
      plugin/fulltext/Makefile.am:
        WL#3201
          update makefile
      plugin/fulltext/plugin_example.c:
        WL#3201
          change to mysql_declare_plugin macro
      sql/Makefile.am:
        WL#3201
          Storage engine files still left in sql subdir are not conditionally
          compiled. Should move them out soon,
      sql/ha_berkeley.cc:
        WL#3201
          make into a plugin
          conditionally compile content
      sql/ha_federated.cc:
        WL#3201
          make into a plugin
          conditionally compile content
      sql/ha_heap.cc:
        WL#3201
          make into a plugin
      sql/ha_innodb.cc:
        WL#3201
          make into a plugin
          conditionally compile content
      sql/ha_myisam.cc:
        WL#3201
          make into a plugin
      sql/ha_myisammrg.cc:
        WL#3201
          make into a plugin
      sql/ha_ndbcluster.cc:
        WL#3201
          make into a plugin
          conditionally compile content
      sql/ha_ndbcluster_binlog.cc:
        WL#3201
          make into a plugin
          conditionally compile content
      sql/ha_partition.cc:
        WL#3201
          make into a plugin
          conditionally compile content
      sql/handler.cc:
        WL#3201
          Simplify how storage engines are found by db_type
          (hopefully we can get rid of it soon)
          Code cleanup
      sql/handler.h:
        WL#3201
          new DB_TYPE_FIRST_DYNAMIC
          new func ha_finalize_handlerton()
          remove ha_register_builtin_plugins()
      sql/log.cc:
        WL#3201
          make into a plugin
      sql/mysqld.cc:
        WL#3201
          remove ha_register_builtin_plugins()
          alter init order so that storage engines are initialized before first use
      sql/partition_info.cc:
        WL#3201
          conditionally compile content
      sql/sql_delete.cc:
        WL#3201
          conditionally include ha_innodb.h
      sql/sql_plugin.cc:
        WL#3201
          All compiled in plugins are in mysqld_builtins[]
          add funcs for plugin finalization
          install builtin plugins on initialization
      sql/sql_show.cc:
        WL#3201
          Fix to use plugin_foreach()
      sql/sql_yacc.yy:
        WL#3201
          SHOW FULL PLUGIN
      storage/archive/Makefile.am:
        WL#3201
          setup as plugin makefile
      storage/archive/ha_archive.cc:
        WL#3201
          Convert into a plugin
      storage/archive/ha_archive.h:
        WL#3201
          azlib.h now in local dir
      storage/blackhole/ha_blackhole.cc:
        WL#3201
          convert into a plugin
      storage/csv/Makefile.am:
        WL#3201
          setup as plugin makefile
      storage/csv/ha_tina.cc:
        WL#3201
          remove conditional compilation on MYSQL_PLUGIN
          mysql_declare_plugin macro change
      storage/example/Makefile.am:
        WL#3201
          fix as new-style plugin makefile
      storage/example/ha_example.cc:
        WL#3201
          remove conditional compilation on MYSQL_PLUGIN
          mysql_declare_plugin macro change
      storage/innobase/Makefile.am:
        WL#3201
          Lets make life easier and reduce innodb into a single library file
      config/ac-macros/plugins.m4:
        New BitKeeper file ``config/ac-macros/plugins.m4''
      sql/sql_builtin.cc.in:
        New BitKeeper file ``sql/sql_builtin.cc.in''
      storage/blackhole/Makefile.am:
        New BitKeeper file ``storage/blackhole/Makefile.am''
      bf4731ec
  33. 14 Feb, 2006 1 commit
    • unknown's avatar
      BUG#17117: header fille "plugin.h" does not have a namespace prefix · eb9b1653
      unknown authored
      plugin.h has been moved into include/mysql/plugin.h
      
      
      include/mysql/plugin.h:
        Rename: include/plugin.h -> include/mysql/plugin.h
      include/Makefile.am:
        plugin.h has been moved into include/mysql/plugin.h
      include/myisam.h:
        plugin.h has been moved into include/mysql/plugin.h
      plugin/fulltext/plugin_example.c:
        plugin.h has been moved into include/mysql/plugin.h
      sql/sql_plugin.h:
        plugin.h has been moved into include/mysql/plugin.h
      storage/csv/ha_tina.cc:
        plugin.h has been moved into include/mysql/plugin.h
      storage/example/ha_example.cc:
        plugin.h has been moved into include/mysql/plugin.h
      storage/myisam/ftdefs.h:
        plugin.h has been moved into include/mysql/plugin.h
      eb9b1653
  34. 16 Jan, 2006 1 commit
    • unknown's avatar
      only use "public" types in plugin API · 4ca5e7c4
      unknown authored
      include/plugin.h:
        only use "public" types in plugin API:
        s/uint/unsigned int/ or s/uint/int/
        s/bool/char/
        s/byte/char/
        s/CHARSET_INFO */struct charset_info_st */
      4ca5e7c4
  35. 10 Jan, 2006 1 commit
    • unknown's avatar
      Fixed warnings. · 95f6f9c7
      unknown authored
      include/plugin.h:
        mysql_plugin_declaration contains 9 elements now.
      95f6f9c7
  36. 07 Jan, 2006 1 commit
    • unknown's avatar
      WL#2935 - SHOW STATUS support in plugins · 47f811c3
      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/
      47f811c3