An error occurred fetching the project authors.
  1. 07 Apr, 2006 1 commit
    • unknown's avatar
      A fix and a test case for Bug#16365 "Prepared Statements: DoS with · 5b5530da
      unknown authored
      too many open statements". The patch adds a new global variable
      @@max_prepared_stmt_count. This variable limits the total number
      of prepared statements in the server. The default value of
      @@max_prepared_stmt_count is 16382. 16382 small statements
      (a select against 3 tables with GROUP, ORDER and LIMIT) consume 
      100MB of RAM. Once this limit has been reached, the server will 
      refuse to prepare a new statement and return ER_UNKNOWN_ERROR 
      (unfortunately, we can't add new errors to 4.1 without breaking 5.0). The limit is changeable after startup
      and can accept any value from 0 to 1 million. In case
      the new value of the limit is less than the current
      statement count, no new statements can be added, while the old
      still can be used. Additionally, the current count of prepared 
      statements is now available through a global read-only variable 
      @@prepared_stmt_count.
      
      
      mysql-test/r/ps.result:
        Test results fixed (a test case for Bug#16365)
      mysql-test/t/ps.test:
        A test case for Bug#16365 "Prepared Statements: DoS with too many 
        open statements". Also fix statement leaks in other tests.
      sql/mysql_priv.h:
        Add declarations for new global variables.
      sql/mysqld.cc:
        Add definitions of max_prepared_stmt_count, prepared_stmt_count.
      sql/set_var.cc:
        Implement support for @@prepared_stmt_count and 
        @@max_prepared_stmt_count. Currently these variables are queried
        without acquiring LOCK_prepared_stmt_count due to limitations of
        the set_var/sys_var class design. Updates are, however, protected 
        with a lock.
      sql/set_var.h:
        New declarations to add support for @@max_prepared_stmt_count.
        Implement a new class, where the lock to be used when updating
        a variable is a parameter.
      sql/sql_class.cc:
        Add accounting of the total number of prepared statements in the
        server to the methods of Statement_map.
      sql/sql_class.h:
        Add accounting of the total number of prepared statements in the
        server to the methods of Statement_map.
      sql/sql_prepare.cc:
        Statement_map::insert will now send a message in case of an
        error.
      5b5530da
  2. 15 Jul, 2005 1 commit
    • unknown's avatar
      A fix and a test case for Bug#9359 "Prepared statements take snapshot · e83e1053
      unknown authored
       of system vars at PREPARE time": implement a special Item
      to handle system variables. This item substitutes itself with 
      a basic constant containing variable value at fix_fields.
      
      
      mysql-test/r/ps.result:
        - test results fixed (Bug#9359).
      mysql-test/t/ps.test:
        - add a test case for Bug#9359 "Prepared statements take snapshot
         of system vars at PREPARE time"
      sql/item_func.cc:
        - implement Item_func_get_system_var: we should not evaluate system
        variables in the parser, but instead should create an item which 
        is evaluated to a constant at execute.
        - remove an unused function
      sql/item_func.h:
        Add a new item, Item_func_get_system_var
      sql/mysql_priv.h:
        Move necessary declarations to make set_var.h objects visible in 
        item_func.h
      sql/set_var.cc:
        - we should not print to network from get_system_var: if it's called
        from prepared statement prepare, we get packets out of order when using
        the binary protocol. Instead report the error to be sent to the user later.
        This is a backport from 5.0.
      sql/set_var.h:
        - declaration of enum_var_type moved to mysql_priv.h
      e83e1053
  3. 04 May, 2005 1 commit
    • unknown's avatar
      BUG#10241 cygwin port: invalid pragma interface directives · 9ab5f614
      unknown authored
       - Introduce ifdefs so we can control when to use #pragma interface on cygwin
      
      
      include/my_global.h:
        Turn on use of #pragma implementation and #pragma interface if compiled with GCC and platform != Cygwin
      include/raid.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/examples/ha_archive.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/examples/ha_example.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/field.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/ha_berkeley.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/ha_blackhole.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/ha_heap.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/ha_innodb.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/ha_isam.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/ha_isammrg.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/ha_myisam.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/ha_myisammrg.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/ha_ndbcluster.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/handler.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/item.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/item_cmpfunc.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/item_func.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/item_geofunc.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/item_strfunc.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/item_subselect.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/item_sum.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/item_timefunc.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/opt_range.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/procedure.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/protocol.h:
        replace __GNUC__ with USE_PRAGMA_IMPLEMENTATION
      sql/set_var.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/sql_class.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/sql_list.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/sql_select.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/sql_string.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/sql_udf.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/tztime.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      9ab5f614
  4. 17 Feb, 2005 1 commit
    • unknown's avatar
      bug#6958 · 23f786b0
      unknown authored
      Fixed that negative arguments to certain integer options wrap around.
      
      
      mysql-test/r/variables.result:
        Added a test case for bug#6958.
      mysql-test/t/variables.test:
        Added a test case for bug#6958.
      sql/set_var.cc:
        sys_var_long_ptr::check function was added.
      sql/set_var.h:
        Use sys_var_long_ptr::check function for sys_var_long_ptr class.
      23f786b0
  5. 26 Jan, 2005 1 commit
    • unknown's avatar
      Fix for bug #7899 "CREATE TABLE .. SELECT .. and CONVERT_TZ() function · 20bd0bd6
      unknown authored
      does not work well together". Now using simplier and more correct
      implementation of st_lex::unlink_first_table()/link_first_table_back() 
      (It also nicely handles case when global table list is created because
      of implictly used time zone tables). (2nd attempt)
      
      Fix for bug #7705 "CONVERT_TZ() crashes with subquery/WHERE on index
      column". Implemented new approach for caching objects for constant
      time zone arguments. Now instead of determining whenever these arguments
      are constants and performing time zone lookup at fix_fields() stage, we
      do it on first get_date() invocation.
      
      Cleanup of global @@time_zone variable handling.
      
      
      mysql-test/r/timezone2.result:
        Added test for bugs #7705 "CONVERT_TZ() crashes with subquery/WHERE on
        index column" and #7899 "CREATE TABLE .. SELECT .. and CONVERT_TZ()
        function does not work well together".
      mysql-test/t/timezone2.test:
        Added test for bugs #7705 "CONVERT_TZ() crashes with subquery/WHERE on
        index column" and #7899 "CREATE TABLE .. SELECT .. and CONVERT_TZ()
        function does not work well together".
      sql/item_timefunc.cc:
        Item_func_convert_tz():
          New approach for caching objects for constant time zone arguments.
          Now instead of determining whenever these arguments are constants
          and performing time zone lookup at fix_fields() stage, we do it
          on first get_date() invocation. This works better in cases when 
          const_item() for these arguments returns true only on get_date()
          stage but not on fix_fields() stage (e.g. this happens in quries
          with joins or derived tables).
      sql/item_timefunc.h:
        Item_func_convert_tz():
          Added from_tz_cached/to_tz_cached members indicating whenever we
          already have Time_zone object representing one of constant time zone
          arguments.
      sql/set_var.cc:
        Cleaned up global @@time_zone variable handling. Now we use proper
        locking when we are setting or reading its value.
      sql/set_var.h:
        Removed declaration of sys_var_thd_time_zone::get_tz_ptr() method, which
        no longer used.
      sql/sql_lex.cc:
        st_lex::unlink_first_table(), st_lex::link_first_table_back():
         Simplify implementation according to Monty's suggestion.
         Instead doing something special if global and local table lists
         are the same, we simply save/restore pointers to first elements
         of both global and local lists (which works even when this lists
         are the same!). This handles nicely the case when we have separate
         global table list becuase time zone tables are implicitly used.
      sql/tztime.cc:
        Backport of Monty's fixes from 5.0, which give us nicer error messages
        if we haven't found time zone with such name or its description.
      20bd0bd6
  6. 10 Aug, 2004 1 commit
    • unknown's avatar
      Fix for bug #4508 "CONVERT_TZ() function with new time zone as param crashes server". · 68d7b266
      unknown authored
      Instead of trying to open time zone tables during calculation of CONVERT_TZ() function
      or setting of @@time_zone variable we should open and lock them with the rest of 
      statement's table (so we should add them to global table list) and after that use such 
      pre-opened tables for loading info about time zones.
      
      
      mysql-test/r/timezone2.result:
        Added test for bug #4508
      mysql-test/t/timezone2.test:
        Added test for bug #4508
      scripts/mysql_create_system_tables.sh:
        Added one more test time zone to time zone tables which is needed for test for bug #4508.
      sql/item_create.cc:
        CONVERT_TZ() now is treated as special function.
      sql/item_create.h:
        CONVERT_TZ() now is treated as special function.
      sql/item_timefunc.cc:
        Item_func_convert_tz now uses list of pre-opened time zone tables instead of trying to
        open them ad-hoc. Also it avoid calling of current_thd.
      sql/item_timefunc.h:
        Added comment describing special nature of CONVERT_TZ() function.
        Optimization: Added own fix_fields() method and tz_tables member for caching pointer
        to list of open time zone tables to Item_func_convert_tz class.
      sql/lex.h:
        CONVERT_TZ() now is treated as special function.
      sql/mysql_priv.h:
        Removed function which is no longer used.
      sql/set_var.cc:
        Now my_tz_find() accepts list of pre-opened time zone tables as last argument 
        and no longer needs pointer to current THD.
      sql/set_var.h:
        Exported sys_time_zone, which is now used in sql_yacc.yy for quick finding out if we are
        setting @@time_zone variable.
      sql/sql_base.cc:
        Moved propagation of pointers to open tables from global list to local select lists to
        open_and_lock_tables(), also added implicit usage of time zone tables as condition for
        such propagation.
      sql/sql_lex.cc:
        Added fake_time_zone_tables_list which is used to indicate that time zone tables are
        implicitly used in statement.
        st_select_lex_unit::create_total_list(): if time zone tables are implicitly used in
        statement add them to global tables list.
      sql/sql_lex.h:
        Added LEX::time_zone_tables_used member which is used to indicate that time zone tables 
        are implicitly used in this statement (by pointing to fake_time_zone_table_list) and 
        for holding pointer to those tables after they've been opened.
      sql/sql_parse.cc:
        We should also create global table list if statement uses time zone tables implicitly.
        Added initialization of LEX::time_zone_tables_used to mysql_query_init().
      sql/sql_prepare.cc:
        We should also create global table list if statement uses time zone tables implicitly.
      sql/sql_select.cc:
        Removed functions which are no longer used.
      sql/sql_yacc.yy:
        CONVERT_TZ() and @@time_zone variable are handled in special way since they implicitly 
        use time zone tables.
      sql/tztime.cc:
        Fix for bug #4508 "CONVERT_TZ() function with new time zone as param crashes server".
        If statement uses CONVERT_TZ() function or @@time_zone variable is set then it implicitly
        uses time zone tables. We need to open and lock such tables with all other tables of 
        such statement.
        
        All code responsible for opening table was removed from tz_load_from_db() and function was 
        renamed to tz_load_from_open_tables() (which uses list of pre-opened tables).
        We also have new functions for construction and initialization of table list of time
        zone tables.
        my_tz_find() now always require list of pre-opened time zone tables and no longer needs
        current THD. So we have to pre-open them in my_tz_init().
        Also now we try to open time zone tables only if they were found during startup.
      sql/tztime.h:
        New function for construction of table list of time zone tables my_tz_get_table_list().
        Now my_tz_find() requires list of pre-pened time zone tables instead of current thread.
      68d7b266
  7. 24 Jun, 2004 1 commit
    • unknown's avatar
      Fix for Bug#4030 "Client side conversion string -> date type doesn't · 9dde4188
      unknown authored
      work (prepared statements)" and after-review fixes:
      - str_to_TIME renamed to str_to_datetime to pair with str_to_time
      - functions str_to_time and str_to_TIME moved to sql-common
      - send_data_str now supports MYSQL_TYPE_TIME, MYSQL_TIME_DATE,
        MYSQL_TIME_DATETIME types of user input buffers.
      - few more comments in the client library
      - a test case added.
      
      
      VC++Files/libmysql/libmysql.dsp:
        new file: my_time.c
      VC++Files/libmysqld/libmysqld.dsp:
        new file: my_time.c
      VC++Files/sql/mysqld.dsp:
        new file: my_time.c
      include/Makefile.am:
        - mysql_time.h added to the list of installed client library headers
      include/mysql.h:
        - declarations for MYSQL_TIME and enum_mysql_timestamp_type moved to 
        mysql_time.h, which is in shared use of client library and mysys.
      libmysql/Makefile.shared:
        - my_time.lo added to the list of libmysql objects
      libmysql/libmysql.c:
        Fix for bug#4030 "Client side conversion string -> date type doesn't work
         (prepared statements)" and cleanup.
        - added case labels for TIME/DATE/DATETIME types to send_data_str
        - comments for read_binary_{date,time,datetime}, fetch_result_*, fetch_results.
      libmysqld/Makefile.am:
        - my_time.c added
      sql-common/Makefile.am:
        - my_time.c added to the list of files included into source distribution.
      sql/Makefile.am:
        my_time.c added to the list of mysqld sources.
      sql/field.cc:
        - TIMESTAMP_{TIME,DATE,DATETIME,...} renamed to 
          MYSQL_TIMESTAMP_{TIME,DATETIME,DATE,...}
      sql/item.cc:
        - TIMESTAMP_{TIME,DATE,DATETIME,...} renamed to 
          MYSQL_TIMESTAMP_{TIME,DATETIME,DATE,...}
      sql/item_timefunc.cc:
        - TIMESTAMP_{TIME,DATE,DATETIME,...} renamed to 
          MYSQL_TIMESTAMP_{TIME,DATETIME,DATE,...}
      sql/mysql_priv.h:
        - added typedefs for TIME and timestamp_type
        - removed declarations for str_to_time and str_to_TIME (now this functions
          reside in mysys)
      sql/mysqld.cc:
        - log_10_int moved to mysys (it's used by str_to_TIME and str_to_time)
        - enum values TIMESTAMP_{TIME,DATE,DATETIME} were renamed to
          MYSQL_TIMESTAMP_{TIME,DATE,DATETIME}
      sql/set_var.cc:
        - TIMESTAMP_{TIME,DATE,DATETIME,...} renamed to 
          MYSQL_TIMESTAMP_{TIME,DATETIME,DATE,...}
      sql/set_var.h:
        - fixed timestamp_type usage to be compatible with typedef.
      sql/sql_prepare.cc:
        - TIMESTAMP_{TIME,DATE,DATETIME} were renamed to
          MYSQL_TIMESTAMP_{TIME,DATE,DATETIME}
        - embedded library implementation of set_param_{time,date,datetime} is
        much simplier now, as MYSQL_TIME is the same as TIME.
      sql/sql_yacc.yy:
        - s/\<TIMESTAMP_/MYSQL_TIMESTAMP/gc
      sql/structs.h:
        - declarations for TIME and timestamp_type replaced with typedefs
        - str_to_datetime arguments moved to mysys headers
      sql/time.cc:
        - str_to_time and str_to_TIME moved to mysys
        - TIMESTAMP_{TIME,DATE,DATETIME,...} renamed to 
          MYSQL_TIMESTAMP_{TIME,DATETIME,DATE,...} as these names are now
          exported to client.
        - str_to_TIME renamed to str_to_datetime to pair with str_to_time
        - str_to_TIME_with_warn renamed accordingly
      sql/tztime.cc:
        - TIMESTAMP_{TIME,DATE,DATETIME,...} renamed to 
          MYSQL_TIMESTAMP_{TIME,DATETIME,DATE,...}
      tests/client_test.c:
        - a test case for Bug#4030 "Client side conversion string -> date type 
        doesn't work (prepared statements)"
      9dde4188
  8. 18 Jun, 2004 1 commit
    • unknown's avatar
      WL#1264 "Per-thread time zone support infrastructure". · 6aaccbcb
      unknown authored
      Added basic per-thread time zone functionality (based on public
      domain elsie-code). Now user can select current time zone
      (from the list of time zones described in system tables).
      All NOW-like functions honor this time zone, values of TIMESTAMP
      type are interpreted as values in this time zone, so now
      our TIMESTAMP type behaves similar to Oracle's TIMESTAMP WITH
      LOCAL TIME ZONE (or proper PostgresSQL type).
        
      WL#1266 "CONVERT_TZ() - basic time with time zone conversion 
      function".
        
      Fixed problems described in Bug #2336 (Different number of warnings 
      when inserting bad datetime as string or as number). This required
      reworking of datetime realted warning hadling (they now generated 
      at Field object level not in conversion functions).
        
      Optimization: Now Field class descendants use table->in_use member
      instead of current_thd macro.
      
      
      include/my_global.h:
        Added macro for reading of 32-bit ints stored in network order from
        unaligned memory location.
      include/mysqld_error.h:
        Added error-code for invalid timestamp warning and error-code
        for wrong or unknown time zone specification.
      libmysqld/Makefile.am:
        Added main per-thread time zone support file to libmysqld
      libmysqld/lib_sql.cc:
        Added initialization of time zones infrastructure to embedded server.
      mysql-test/r/connect.result:
        Updated test result since now mysql database contains more
        system tables.
      mysql-test/r/date_formats.result:
        Now when truncation occurs during conversion to datetime value we are producing Warnings 
        instead of Notes. Also we are giving more clear warnings about this in some cases.
      mysql-test/r/func_sapdb.result:
        New warnings about truncation occured during conversion to datetime value added due
        their better handling.
      mysql-test/r/func_time.result:
        New warnings about truncation occured during conversion to datetime value added due
        their better handling.
      mysql-test/r/select.result:
        New warnings about truncation occured during conversion to datetime value added due
        their better handling. Also tweaked test a bit to made it less ambigious for reader.
      mysql-test/r/system_mysql_db.result:
        Updated test result because new system tables holding time zone descriptions were 
        added.
      mysql-test/r/timezone.result:
        Updated timezone.test to use new system variable which shows system time zone.
        Added test of warning which is produced if someone tries to store non-existing (due 
        falling into spring time-gap) datetime value into TIMESTAMP field.
      mysql-test/r/type_datetime.result:
        Separated and extended test of values and warnings produced for bad values stored in 
        DATETTIME fields.
      mysql-test/r/type_time.result:
        Now we are producing more consistent warning when we are truncating datetime value while
        storing it in TIME field.
      mysql-test/r/type_timestamp.result:
        Separated and extended test of values and warnings produced for bad
        values stored in TIMESTAMP fields.
      mysql-test/t/select.test:
        Updated test to make it less ambigous for reader.
      mysql-test/t/timezone.test:
        Updated timezone.test to use new system variable which shows system time zone.
        Added test of warning which is produced if someone tries to store non-existing (due 
        falling into spring time-gap) datetime value into TIMESTAMP field.
      mysql-test/t/type_datetime.test:
        Separated and extended test of values and warnings produced for bad
        values stored in DATETTIME fields.
      mysql-test/t/type_timestamp.test:
        Separated and extended test of values and warnings produced for bad
        values stored in TIMESTAMP fields.
      scripts/mysql_create_system_tables.sh:
        Added creation of tables with time zone descriptions.
        Also added descriptions of time zones used in tests.
      scripts/mysql_fix_privilege_tables.sql:
        Added mysql.time_zone* tables family.
      sql/Makefile.am:
        Added files implementing time zone support to server, also added
        rules for building of mysql_tzinfo_to_sql converter and test_time
        test.
      sql/field.cc:
        Now we are using per-thread time zone for TIMESTAMP <-> whatever conversion.
        Fixed generation of warnings for datetime types (DATETIME/TIMESTAMP/DATE/...) and
        any other Field to datetime conversion (now we are generating warnings no in lower
        level functions like in str_to_TIME() but in Field methods. This allows generate
        better and more consistent warnings and to reuse code of str_to_TIME() outside of
        server).
        
        Added 3rd parameter to set_warning() method to be able to not increment cut fields
        but still produce a warning. Also added set_datetime_warning() family of auxiliary 
        methods which allow easier generate datetime related warnings.
        Also replaced occurences of current_thd with table->in_use member, added
        asserts for catching all places there we need to set table->in_use
        accordingly. Renamed fix_datetime() function to number_to_TIME() and
        moved it to sql/time.cc there it fits better.
      sql/field.h:
        Added comment about places where we can use table->in_use member
        instead of current_thd.
        Added 3rd parameter to Field::set_warning() method and set_datetime_warning()
        family of methods.
      sql/field_conv.cc:
        Field::set_warning() method with 2 arguments was replaced with more 
        generic set_warning() method with 3 arguments.
      sql/ha_berkeley.cc:
        Now we set table->in_use for temporary tables so we have to use
        table->tmp_table for checking if table is temporary.
      sql/item.cc:
        Replaced calls to str_to_time() and str_to_TIME() funcs with their warning
        generating analogs.
      sql/item_create.cc:
        Added creation of CONVERT_TZ function as FUNC_ARG3.
      sql/item_create.h:
        Added creation of CONVERT_TZ function as FUNC_ARG3.
      sql/item_timefunc.cc:
        Added support of per-thread time zone to NOW-like and FROM_UNIXTIME,
        UNIX_TIMESTAMP functions. 
        Added support for CONVERT_TZ function.
        Removed call to str_to_timestamp function which caused non-optimal
        behavior in certain cases. Replaced calls to str_to_time() function 
        with its warning generating analog.
      sql/item_timefunc.h:
        Added support of per-thread time zone to NOW-like and
        FROM_UNIXTIME, UNIX_TIMESTAMP functions.
        Added support of CONVERT_TZ function.
      sql/lex.h:
        Added support of CONVERT_TZ function.
      sql/log.cc:
        Added support for replication of statements depending on time zone.
      sql/mysql_priv.h:
        Now including headers with per-thread time zone support functions
        and classes. Added portable replacement of time_t - my_time_t type. 
        Added time zone as one of query distinguishing parameters for
        query cache. 
        Fixed declarations of str_to_TIME, str_to_time and 
        my_system_gmt_sec (former my_gmt_sec) since now they have one more
        out parameter which informs about wrong datetime value or data 
        truncation during conversion.
        Added warning generating version of str_to_TIME() and str_to_time()
        functions.
        Thrown away str_to_datetime/timestamp functions since they are not
        needed any longer. Added number_to_TIME function.
      sql/mysqld.cc:
        Added per-thread time zone support initialization.
        Added new startup parameter --default-time-zone.
      sql/set_var.cc:
        Added support for per-thread time_zone variable.
        Renamed old timezone variable to system_time_zone.
      sql/set_var.h:
        Added support for per-thread time_zone variable.
      sql/share/czech/errmsg.txt:
        Added error message for barking when incorrect time zone name or
        specifiaction is provided and for warning about invalid TIMESTAMP
        values (e.g. falling into the spring time-gap).
      sql/share/danish/errmsg.txt:
        Added error message for barking when incorrect time zone name or
        specifiaction is provided and for warning about invalid TIMESTAMP
        values (e.g. falling into the spring time-gap).
      sql/share/dutch/errmsg.txt:
        Added error message for barking when incorrect time zone name or
        specifiaction is provided and for warning about invalid TIMESTAMP
        values (e.g. falling into the spring time-gap).
      sql/share/english/errmsg.txt:
        Added error message for barking when incorrect time zone name or
        specifiaction is provided and for warning about invalid TIMESTAMP
        values (e.g. falling into the spring time-gap).
      sql/share/estonian/errmsg.txt:
        Added error message for barking when incorrect time zone name or
        specifiaction is provided and for warning about invalid TIMESTAMP
        values (e.g. falling into the spring time-gap).
      sql/share/french/errmsg.txt:
        Added error message for barking when incorrect time zone name or
        specifiaction is provided and for warning about invalid TIMESTAMP
        values (e.g. falling into the spring time-gap).
      sql/share/german/errmsg.txt:
        Added error message for barking when incorrect time zone name or
        specifiaction is provided and for warning about invalid TIMESTAMP
        values (e.g. falling into the spring time-gap).
      sql/share/greek/errmsg.txt:
        Added error message for barking when incorrect time zone name or
        specifiaction is provided and for warning about invalid TIMESTAMP
        values (e.g. falling into the spring time-gap).
      sql/share/hungarian/errmsg.txt:
        Added error message for barking when incorrect time zone name or
        specifiaction is provided and for warning about invalid TIMESTAMP
        values (e.g. falling into the spring time-gap).
      sql/share/italian/errmsg.txt:
        Added error message for barking when incorrect time zone name or
        specifiaction is provided and for warning about invalid TIMESTAMP
        values (e.g. falling into the spring time-gap).
      sql/share/japanese/errmsg.txt:
        Added error message for barking when incorrect time zone name or
        specifiaction is provided and for warning about invalid TIMESTAMP
        values (e.g. falling into the spring time-gap).
      sql/share/korean/errmsg.txt:
        Added error message for barking when incorrect time zone name or
        specifiaction is provided and for warning about invalid TIMESTAMP
        values (e.g. falling into the spring time-gap).
      sql/share/norwegian-ny/errmsg.txt:
        Added error message for barking when incorrect time zone name or
        specifiaction is provided and for warning about invalid TIMESTAMP
        values (e.g. falling into the spring time-gap).
      sql/share/norwegian/errmsg.txt:
        Added error message for barking when incorrect time zone name or
        specifiaction is provided and for warning about invalid TIMESTAMP
        values (e.g. falling into the spring time-gap).
      sql/share/polish/errmsg.txt:
        Added error message for barking when incorrect time zone name or
        specifiaction is provided and for warning about invalid TIMESTAMP
        values (e.g. falling into the spring time-gap).
      sql/share/portuguese/errmsg.txt:
        Added error message for barking when incorrect time zone name or
        specifiaction is provided and for warning about invalid TIMESTAMP
        values (e.g. falling into the spring time-gap).
      sql/share/romanian/errmsg.txt:
        Added error message for barking when incorrect time zone name or
        specifiaction is provided and for warning about invalid TIMESTAMP
        values (e.g. falling into the spring time-gap).
      sql/share/russian/errmsg.txt:
        Added error message for barking when incorrect time zone name or
        specifiaction is provided and for warning about invalid TIMESTAMP
        values (e.g. falling into the spring time-gap).
      sql/share/serbian/errmsg.txt:
        Added error message for barking when incorrect time zone name or
        specifiaction is provided and for warning about invalid TIMESTAMP
        values (e.g. falling into the spring time-gap).
      sql/share/slovak/errmsg.txt:
        Added error message for barking when incorrect time zone name or
        specifiaction is provided and for warning about invalid TIMESTAMP
        values (e.g. falling into the spring time-gap).
      sql/share/spanish/errmsg.txt:
        Added error message for barking when incorrect time zone name or
        specifiaction is provided and for warning about invalid TIMESTAMP
        values (e.g. falling into the spring time-gap).
      sql/share/swedish/errmsg.txt:
        Added error message for barking when incorrect time zone name or
        specifiaction is provided and for warning about invalid TIMESTAMP
        values (e.g. falling into the spring time-gap).
      sql/share/ukrainian/errmsg.txt:
        Added error message for barking when incorrect time zone name or
        specifiaction is provided and for warning about invalid TIMESTAMP
        values (e.g. falling into the spring time-gap).
      sql/slave.cc:
        In order to support replication of statements using time zones in 4.1 we should 
        ensure that both master and slave have same default time zone.
      sql/sql_base.cc:
        Now we are setting TABLE::in_use member for all tables (which assume
        calls to Field::store or val_ methods).
      sql/sql_cache.cc:
        Added time zone as one more query distinguishing parameter
        for query cache.
      sql/sql_class.cc:
        Added THD::time_zone_used variable indicating that this query
        uses per thread time zone.
      sql/sql_class.h:
        Added per-thread time zone variable. Added THD::time_zone_used
        variable indicating that this query uses per thread time zone
        so if this is updating query the time zone should be logged to 
        binlog.
      sql/sql_insert.cc:
        We should set TABLE::in_use member pointing to thread which is called
        INSERT DELAYED and not to worker thread.
      sql/sql_load.cc:
        Field::set_warning() now has one more argument now.
      sql/sql_parse.cc:
        Resetting THD::time_zone_used variable in the end of query
        processing.
      sql/sql_select.cc:
        Now we are setting TABLE::in_use member for all tables (which assume
        calls to Field::store or val_ methods).
      sql/sql_show.cc:
        Now using per thread time zone for extended show tables.
      sql/time.cc:
        Added support for per-thread time zones for TIMESTAMP type and
        reworked generation of warnings for TIMESTAMP and DATETIME types.
        (Introduced new TIME_to_timestamp() function. Removed hours 
        normalisation from former my_gmt_sec() since it was not working 
        and not used anywhere now, but breaks parameter constness, added
        to this function generation of warning if we are falling in spring 
        time-gap. Removed str_to_timestamp and str_to_datetime functions 
        which are no longer used. Moved fix_datetime function from
        sql/field.cc to this file as number_to_TIME() function. Added
        out parameter for str_to_TIME and str_to_time functions which
        indicates if value was truncated during conversion, removed direct 
        generation of warnings from this functions.)
      sql/unireg.cc:
        Now we are setting TABLE::in_use member for all tables (which assume
          calls to Field::store or val_ methods).
      BitKeeper/etc/ignore:
        Added sql/test_time sql/mysql_tzinfo_to_sql libmysqld/tztime.cc to the ignore list
      6aaccbcb
  9. 10 Jun, 2004 1 commit
    • unknown's avatar
      WL#1595 "Optionally fsync() the binlog after every statement": · 7ece3c74
      unknown authored
      New option --sync-binlog=x (and global settable variable) which will fsync the binlog
      after every x-th disk write to it. That is, if in autocommit mode, after every x-th statement
      written to the binlog; if using transactions, after every x-th transaction written to the binlog.
      x==0 means no fsync. x==1 is the slowest.
      There is no test added for this, I have just checked that it works as --sync-binlog=1 dramatically
      slows down mysqld.
      Made sync-frm a global settable variable.
      
      
      sql/log.cc:
        every sync_binlog_period-th disk binlog write, we fsync the binlog
      sql/mysql_priv.h:
        new option sync_binlog
      sql/mysqld.cc:
        new option sync_binlog
      sql/set_var.cc:
        Making sync-frm a settable global option.
        New settable global option sync-binlog.
      sql/set_var.h:
        new global settable variable sync_binlog needs a specific ::update because it needs to take LOCK_log
      7ece3c74
  10. 03 Jun, 2004 1 commit
    • unknown's avatar
      Implementation of WL#1824 "Add replication of character set variables in 4.1", · 934bb37d
      unknown authored
      by binlogging some SET ONE_SHOT CHARACTER_SETetc,
      which will be enough until we have it more compact and more complete in 5.0. With the present patch,
      replication will work ok between 4.1.3 master and slaves, as long as:
      - master and slave have the same GLOBAL.COLLATION_SERVER
      - COLLATION_DATABASE and CHARACTER_SET_DATABASE are not used
      - application does not use the fact that table is created with charset of the USEd db (BUG#2326).
      all of which are not too hard to fulfill. 
      ONE_SHOT is reserved for internal use of mysqlbinlog|mysql and works only for charsets,
      so we give error if used for non-charset vars.
      Fix for BUG#3875 "mysqlbinlog produces wrong ouput  if query uses
       variables containing quotes" and BUG#3943 "Queries with non-ASCII literals are not replicated
       properly after SET NAMES".
      Detecting that master and slave have different global charsets or server ids.
      
      
      mysql-test/r/rpl_server_id1.result:
        it's normal to not run as I have added a test to compare server ids of master and slave
        at startup and stop if equal (unless --replicate-same-server-id)
      mysql-test/r/rpl_user_variables.result:
        result update (as we now print charset of user var).
      mysql-test/r/user_var.result:
        result update
      mysql-test/t/rpl_server_id1.test:
        no need to select as slave is not running
      mysql-test/t/user_var.test:
        testing if the content of user vars is escaped when mysqlbinlog prints them,
        and if the name is backquoted.
      sql/lex.h:
        new keyword ONE_SHOT
      sql/log.cc:
        when writing to the binlog, before writing the actual statement, write some SET ONE_SHOT CHARACTER_SET_CLIENT etc
        for the slave to know the charset variables (which are important as they affect the inserted data).
      sql/log_event.cc:
        print charset and collation of user var in mysqlbinlog and SHOW BINLOG EVENTS.
        escape the content of the var. Backquote its name.
        Will ask Bar to check that using my_charset_bin for escaping is ok.
      sql/set_var.cc:
        understand SET CHARACTER_SET_CLIENT=10 (don't require a string, accept a number).
        Refuse changing of GLOBAL CHARACTER_SET_SERVER/COLLATION_SERVER if binlog or slave,
        as it will make the master or slave make wrong assumptions.
        A function to catch SET ONE_SHOT on non-charset variables (which is forbidden)
      sql/set_var.h:
        no_support_one_shot to know if the var supports ONE_SHOT (only charset vars do, soon timezones).
        Accept int arg in SET CHARACTER_SET_etc
      sql/slave.cc:
        when I/O slave thread starts, verify that master's and slave charsets match.
        And by the way verify that server ids are different.
        Don't fail if UNIX_TIMESTAMP() can't be done on master (very old master), that's
        not fatal.
      sql/sql_class.cc:
        one_shot
      sql/sql_class.h:
        one_shot
      sql/sql_lex.h:
        one_shot
      sql/sql_parse.cc:
        when SET ONE_SHOT is used, verify that it's only used for charset/collation vars;
        otherwise refuse.
      sql/sql_yacc.yy:
        ONE_SHOT keyword in SET
      934bb37d
  11. 07 Apr, 2004 1 commit
    • unknown's avatar
      new error for unsupported command in PS · c9d856c8
      unknown authored
      fixed IN subselect with basic constant left expression
      SQLCOM_CREATE_TABLE, SQLCOM_UPDATE_MULTI, SQLCOM_REPLACE_SELECT, SQLCOM_INSERT_SELECT, QLCOM_DELETE_MULTI fixed to be compatible with PS (BUG#3398, BUG#3406)
      fixed multiupdate privelege check (BUG#3408)
      fixed multiupdate tables check (BUG#3411)
      unchecked commands now is rejected by PS protocol to avoid serever crash
      fixed cleunup procedure to be compatible sith DO/SET (BUG#3393)
      
      
      include/mysqld_error.h:
        new error for unsupported command in PS
      mysql-test/r/multi_update.result:
        test sutes (BUG#3408, BUG#3411)
      mysql-test/t/multi_update.test:
        test sutes (BUG#3408, BUG#3411)
      sql/item_cmpfunc.cc:
        fixed IN subselect with basic constant left expression
      sql/mysql_priv.h:
        some function frop sql_parse.h become public
      sql/set_var.cc:
        check for SET command via PS
      sql/set_var.h:
        check for SET command via PS
      sql/share/czech/errmsg.txt:
        new error for unsupported command in PS
      sql/share/danish/errmsg.txt:
        new error for unsupported command in PS
      sql/share/dutch/errmsg.txt:
        new error for unsupported command in PS
      sql/share/english/errmsg.txt:
        new error for unsupported command in PS
      sql/share/estonian/errmsg.txt:
        new error for unsupported command in PS
      sql/share/french/errmsg.txt:
        new error for unsupported command in PS
      sql/share/german/errmsg.txt:
        new error for unsupported command in PS
      sql/share/greek/errmsg.txt:
        new error for unsupported command in PS
      sql/share/hungarian/errmsg.txt:
        new error for unsupported command in PS
      sql/share/italian/errmsg.txt:
        new error for unsupported command in PS
      sql/share/japanese/errmsg.txt:
        new error for unsupported command in PS
      sql/share/korean/errmsg.txt:
        new error for unsupported command in PS
      sql/share/norwegian-ny/errmsg.txt:
        new error for unsupported command in PS
      sql/share/norwegian/errmsg.txt:
        new error for unsupported command in PS
      sql/share/polish/errmsg.txt:
        new error for unsupported command in PS
      sql/share/portuguese/errmsg.txt:
        new error for unsupported command in PS
      sql/share/romanian/errmsg.txt:
        new error for unsupported command in PS
      sql/share/russian/errmsg.txt:
        new error for unsupported command in PS
      sql/share/serbian/errmsg.txt:
        new error for unsupported command in PS
      sql/share/slovak/errmsg.txt:
        new error for unsupported command in PS
      sql/share/spanish/errmsg.txt:
        new error for unsupported command in PS
      sql/share/swedish/errmsg.txt:
        new error for unsupported command in PS
      sql/share/ukrainian/errmsg.txt:
        new error for unsupported command in PS
      sql/sql_lex.cc:
        first table unlincking procedures for CREATE command
      sql/sql_lex.h:
        first table unlincking procedures for CREATE command
      sql/sql_parse.cc:
        used function to exclude first table from list
        SQLCOM_CREATE_TABLE, SQLCOM_UPDATE_MULTI, SQLCOM_REPLACE_SELECT, SQLCOM_INSERT_SELECT, QLCOM_DELETE_MULTI fixed to be compatible with PS (BUG#3398, BUG#3406)
        fixed multiupdate privelege check (BUG#3408)
        fixed multiupdate tables check (BUG#3411)
      sql/sql_prepare.cc:
        fixed a lot of commands to be compatible with PS
        unchecked commands now is rejected to avoid serever crash
      sql/sql_select.cc:
        allow empty result for PS preparing
      sql/sql_union.cc:
        fixed cleunup procedure to be compatible sith DO/SET (BUG#3393)
      sql/sql_update.cc:
        fixed update to use correct tables lists (BUG#3408)
      sql/table.h:
        flag to support multi update tables check (BUG#3408)
      tests/client_test.c:
        removed unsupported tables
        fixed show table test
        added new tests
      c9d856c8
  12. 30 Mar, 2004 1 commit
  13. 27 Mar, 2004 1 commit
    • unknown's avatar
      A previous changeset by me today about SQL_LOG_BIN had the problem · ec4a9dc9
      unknown authored
      that it tested the privilege in ::update() whereas it should be
      in ::check() (see email from Serg, subject
      "Re: bk commit - 4.1 tree (guilhem:1.1706)").
      So I add instead a check_func function to sys_var_thd_bit.
      I do the same addition to sys_var_thd_ulong, to unify handling
      of PSEUDO_THREAD_ID with the one of SQL_LOG_BIN. So class
      sys_var_pseudo_thread_id is not needed anymore, removing it.
      
      
      mysql-test/r/rpl_temporary.result:
        result update
      mysql-test/t/rpl_temporary.test:
        tests after new way of fixing; verify that when second variable
        assignment is refused then first is not done.
      sql/set_var.cc:
        a check_func (check_log_update) when setting SQL_LOG_BIN,
        and one when setting PSEUDO_THREAD_ID.
        Removing class sys_var_pseudo_thread_id.
        Updates for new prototypes of constructor in sys_var_thd_bit
        and sys_var_thd_ulong.
      sql/set_var.h:
        Adding check_func to sys_var_thd_bit.
        Adding check_func to sys_var_thd_ulong, so class sys_var_pseudo_thread_id
        is not needed anymore, removing it.
      ec4a9dc9
  14. 22 Mar, 2004 1 commit
    • unknown's avatar
      aliases should be compared with my_strcasecmp (BUG#3251) · 560fc037
      unknown authored
      some db comparison code cleupup
      removed compiler warnings
      
      
      mysql-test/r/lowercase_table.result:
        test for BUG#3251
      mysql-test/t/lowercase_table.test:
        test for BUG#3251
      sql/item.cc:
        simple strcmp can be used for db name comparison
      sql/set_var.h:
        changed initialisation order to satisfy compiler
      sql/sql_cache.cc:
        simple strcmp can be used for db name comparison
      sql/sql_db.cc:
        better use special cherset for files
      sql/sql_parse.cc:
        simple strcmp can be used for db name comparison
        aliases should be compared with my_strcasecmp
      sql/sql_select.cc:
        aliases should be compared with my_strcasecmp
      560fc037
  15. 20 Mar, 2004 1 commit
    • unknown's avatar
      select @@smth=@@sys_str_var crash fixed · eb3ded56
      unknown authored
      mysql-test/r/variables.result:
        new test
      mysql-test/t/ctype_utf8.test:
        typos fixed
      mysql-test/t/variables.test:
        new test
      sql/mysqld.cc:
        sys_str_var->value must be not NULL
      sql/set_var.cc:
        initialize sys_str_var->value from a constructor
      sql/set_var.h:
        initialize sys_str_var->value from a constructor
      eb3ded56
  16. 17 Mar, 2004 1 commit
  17. 06 Mar, 2004 1 commit
    • unknown's avatar
      Ensure that one can't from the command line set a variable too small. (Bug #2710) · aa20bd9e
      unknown authored
      Allow one to force lower_case_table_names to 0, even if the file system is case insensitive. This fixes some issues on Mac OS X (Bug #2994)
      Added variables "lower_case_file_system", "version_compile_os" and "license"
      
      
      mysql-test/t/lowercase_table3-master.opt:
        Rename: mysql-test/t/lowercase_table2-master.opt -> mysql-test/t/lowercase_table3-master.opt
      mysys/my_getopt.c:
        Ensure that one can't from the command line set a variable too small (could happen when sub_size was set)
      sql/mysql_priv.h:
        Added lower_case_file_system
      sql/mysqld.cc:
        Allow one to force lower_case_table_names to 0, even if the file system is case insensitive
      sql/set_var.cc:
        Added variable "lower_case_file_system"
        Added variable "version_compile_os"
        Added variable "license"
      sql/set_var.h:
        Added support for read only strings
      sql/sql_select.cc:
        Make join optimizer killable
      aa20bd9e
  18. 16 Feb, 2004 1 commit
    • unknown's avatar
      ft_boolean_syntax made changeable · 5a9ffa30
      unknown authored
      BitKeeper/deleted/.del-gstream.cc~e7a4fae849aff6c8:
        Delete: libmysqld/gstream.cc
      BitKeeper/deleted/.del-item_subselect.cc~80564bbdb47e8160:
        Delete: libmysqld/item_subselect.cc
      BitKeeper/deleted/.del-spatial.cc~604df7172b141762:
        Delete: libmysqld/spatial.cc
      BitKeeper/deleted/.del-sql_derived.cc~548b125128871c7a:
        Delete: libmysqld/sql_derived.cc
      BitKeeper/etc/ignore:
        Added libmysqld/item_subselect.cc libmysqld/sql_derived.cc to the ignore list
      5a9ffa30
  19. 17 Dec, 2003 1 commit
    • unknown's avatar
      WorkLog #1323 (part 2) · 69cee792
      unknown authored
      New Statement: SHOW [STORAGE] ENGINES
      New System Variable: storage_engine
      New mysqld Argument: --default-storage-engine=
      
      
      include/mysqld_error.h:
        We now call handlers STORAGE ENGINEs
      include/sql_state.h:
        We now call handlers STORAGE ENGINEs
      mysql-test/r/create.result:
        table_type system variable becomes storage_engine
      mysql-test/r/key_cache.result:
        table_type system variable becomes storage_engine
      mysql-test/r/variables.result:
        table_type system variable becomes storage_engine
      mysql-test/r/warnings.result:
        Test for deprecated table_type system variable
      mysql-test/t/create.test:
        table_type system variable becomes storage_engine
      mysql-test/t/key_cache.test:
        table_type system variable becomes storage_engine
      mysql-test/t/variables.test:
        table_type system variable becomes storage_engine
      mysql-test/t/warnings.test:
        Test for deprecated table_type system variable
      sql/handler.cc:
        change name for consistency
      sql/handler.h:
        change name for consistency
      sql/lex.h:
        New keywords - ENGINES and STORAGE
      sql/mysql_priv.h:
        change name for consistency
      sql/mysqld.cc:
        New command like argument for default-storage-engine
      sql/set_var.cc:
        New system variable for storage_engine
      sql/set_var.h:
        New system variable for storage_engine
      sql/sql_lex.h:
        Change for consistancy
      sql/sql_parse.cc:
        Change for consistancy
      sql/sql_show.cc:
        Change for consistancy
      sql/sql_table.cc:
        Change for consistancy
      sql/sql_yacc.yy:
        New keywords: STORAGE and ENGINES
        Change table_types to storage_engines
        New statement: SHOW [STORAGE] ENGINES
      69cee792
  20. 02 Dec, 2003 1 commit
    • unknown's avatar
      WorkLog#1280 - Remove fixed table handler from lex/yacc · c74c90ee
      unknown authored
      include/mysqld_error.h:
        New error message: unknown table engine
      mysql-test/r/create.result:
        New error message: unknown table engine
      mysql-test/t/create.test:
        New error message: unknown table engine
      sql/lex.h:
        Remove some keywords: HEAP, ISAM, MERGE, MEMORY, MRG_MYISAM, MYISAM
      sql/mysql_priv.h:
        Remove unused symbol
      sql/set_var.h:
        New system variable type: sys_var_thd_table_type
      sql/sql_yacc.yy:
        Remove tokens and make table_types resolve at run time
      sql/sql_show.cc:
        Tidy up
      sql/sql_table.cc:
        Tidy up
      include/sql_state.h:
        Fix indent
      sql/mysqld.cc:
        optimize
      mysql-test/r/rpl_change_master.result:
        It wouldn't pass the tests
      mysql-test/r/variables.result:
        Fix for changes
      mysql-test/r/warnings.result:
        Fix for changes
      mysql-test/t/variables.test:
        Fix for changes
      sql/handler.h:
        parameter is a const
      sql/set_var.cc:
        Code clean up for sys_var_thd_table_type::check()
      sql/handler.cc:
        More tidyup
      sql/share/czech/errmsg.txt:
        Fixups during review
      sql/share/danish/errmsg.txt:
        Fixups during review
      sql/share/dutch/errmsg.txt:
        Fixups during review
      sql/share/english/errmsg.txt:
        Fixups during review
      sql/share/estonian/errmsg.txt:
        Fixups during review
      sql/share/french/errmsg.txt:
        Fixups during review
      sql/share/german/errmsg.txt:
        Fixups during review
      sql/share/greek/errmsg.txt:
        Fixups during review
      sql/share/hungarian/errmsg.txt:
        Fixups during review
      sql/share/italian/errmsg.txt:
        Fixups during review
      sql/share/japanese/errmsg.txt:
        Fixups during review
      sql/share/korean/errmsg.txt:
        Fixups during review
      sql/share/norwegian-ny/errmsg.txt:
        Fixups during review
      sql/share/norwegian/errmsg.txt:
        Fixups during review
      sql/share/polish/errmsg.txt:
        Fixups during review
      sql/share/portuguese/errmsg.txt:
        Fixups during review
      sql/share/romanian/errmsg.txt:
        Fixups during review
      sql/share/russian/errmsg.txt:
        Fixups during review
      sql/share/serbian/errmsg.txt:
        Fixups during review
      sql/share/slovak/errmsg.txt:
        Fixups during review
      sql/share/spanish/errmsg.txt:
        Fixups during review
      sql/share/swedish/errmsg.txt:
        Fixups during review
      sql/share/ukrainian/errmsg.txt:
        Fixups during review
      BitKeeper/etc/logging_ok:
        Logging to logging@openlogging.org accepted
      c74c90ee
  21. 20 Nov, 2003 2 commits
    • unknown's avatar
      Merge key cache structures to one · 35da5e43
      unknown authored
      Fixed compiler warnings (IRIX C compiler and VC++)
      
      
      VC++Files/client/mysqlclient.dsp:
        Add missing file to project
      VC++Files/libmysql/libmysql.dsp:
        Add missing file to project
      VC++Files/myisam/myisam.dsp:
        Add missing file to project
      VC++Files/mysys/mysys.dsp:
        Add missing file to project
      heap/hp_test1.c:
        Fixed wrong call to heap_rkey()
      heap/hp_test2.c:
        Fixed wrong call to heap_rkey()
      include/hash.h:
        Move not used (internal) struct to hash.c
      include/my_pthread.h:
        Made some structs 'const char*' to avoid warnings
      include/my_sys.h:
        Moved key cache structs and functions to keycache.h
      include/myisam.h:
        Merge key cache structures to one
      include/mysql.h:
        Remove STDCALL from internal functions
      include/sql_common.h:
        Remove STDCALL from internal functions
      include/violite.h:
        Fixed compiler warning
      isam/_locking.c:
        Merge key cache structures to one
      isam/_page.c:
        Merge key cache structures to one
      isam/close.c:
        Merge key cache structures to one
      isam/extra.c:
        Merge key cache structures to one
      isam/isamchk.c:
        Merge key cache structures to one
      isam/isamdef.h:
        Merge key cache structures to one
      isam/isamlog.c:
        Merge key cache structures to one
      isam/panic.c:
        Merge key cache structures to one
      isam/test2.c:
        Merge key cache structures to one
      isam/test3.c:
        Merge key cache structures to one
      libmysql/client_settings.h:
        Remove STDCALL from internal functions
      libmysql/libmysql.c:
        Remove STDCALL from internal functions
      myisam/ft_boolean_search.c:
        Fixed compiler warning
      myisam/ft_dump.c:
        Fixed compiler warnings (%qx is not portable)
      myisam/ft_update.c:
        Fixed compiler warnings
      myisam/mi_check.c:
        Merge key cache structures to one
      myisam/mi_close.c:
        Merge key cache structures to one
      myisam/mi_delete_all.c:
        Merge key cache structures to one
      myisam/mi_extra.c:
        Merge key cache structures to one
      myisam/mi_keycache.c:
        Merge key cache structures to one
      myisam/mi_locking.c:
        Merge key cache structures to one
      myisam/mi_page.c:
        Merge key cache structures to one
      myisam/mi_panic.c:
        Merge key cache structures to one
      myisam/mi_preload.c:
        Merge key cache structures to one
      myisam/mi_test1.c:
        Merge key cache structures to one
      myisam/mi_test2.c:
        Merge key cache structures to one
      myisam/mi_test3.c:
        Merge key cache structures to one
      myisam/myisamchk.c:
        Merge key cache structures to one
      myisam/myisamdef.h:
        Merge key cache structures to one
      myisam/myisamlog.c:
        Merge key cache structures to one
        Removed not used option
      myisam/sort.c:
        Fixed compiler warnings
      myisam/sp_test.c:
        Fixed compiler warnings
      mysql-test/r/case.result:
        Updated results after fix of correct NULL detection in WHEN
      mysql-test/r/date_formats.result:
        Updated results after fixing date handling
      mysql-test/r/symlink.result:
        Updated results after adding DEFAULT CHARSET
      mysql-test/t/case.test:
        New test
      mysql-test/t/symlink.test:
        Updated error numbers
      mysys/hash.c:
        Made HASH_LINK struct local
      mysys/mf_keycache.c:
        Merge key cache structures to one
        Fixed key_cache_read() and key_cache_write() to be resize-safe.
      mysys/mf_keycaches.c:
        Merge key cache structures to one
      mysys/thr_mutex.c:
        Added test if mutex is initalized
      sql-common/client.c:
        Remove STDCALL from internal functions
      sql/derror.cc:
        Added comment
      sql/field.cc:
        Removed not used variables
      sql/ha_innodb.cc:
        Fixed compiler warnings (removed not used variables)
      sql/ha_myisam.cc:
        Merge key cache structures to one
      sql/ha_myisammrg.cc:
        Removed not used variables
      sql/handler.cc:
        Merge key cache structures to one
      sql/handler.h:
        Merge key cache structures to one
      sql/item.cc:
        Fixed compiler warning
      sql/item_cmpfunc.cc:
        Remove not used variables
      sql/item_func.cc:
        Remove not used variables
      sql/item_strfunc.cc:
        Removed not used variables
      sql/item_sum.cc:
        Removed not used variables
        Moved setting of item_thd to fix_fields()
      sql/item_timefunc.cc:
        Removed not used variables
      sql/mysql_priv.h:
        Merge key cache structures to one
      sql/mysqld.cc:
        Merge key cache structures to one
        init_thread_environment() is not called before mysql_init_variables(). This fixes a case where a mutex was not initialized before it was used
      sql/opt_sum.cc:
        Remove not used variables
      sql/protocol.cc:
        Don't send errors after ok has been sent
      sql/protocol_cursor.cc:
        Remove not used variable
        Simple optimization
      sql/repl_failsafe.cc:
        Remove not used variables
      sql/set_var.cc:
        Merge key cache structures to one
      sql/set_var.h:
        Merge key cache structures to one
      sql/sql_acl.cc:
        Remove not used variables
      sql/sql_base.cc:
        Remove not used function
      sql/sql_db.cc:
        Remove not used variables
      sql/sql_handler.cc:
        Remove not used variables
      sql/sql_insert.cc:
        More DBUG statements
        Simple code cleanup
      sql/sql_lex.cc:
        Remove not used variables
      sql/sql_parse.cc:
        Remove not used variables
      sql/sql_prepare.cc:
        Remove not used variables
      sql/sql_repl.cc:
        Remove not used variables
      sql/sql_select.cc:
        Remove not used variables
      sql/sql_show.cc:
        Remove not used variables
      sql/sql_table.cc:
        Merge key cache structures to one
        Removed not used variables
      sql/sql_test.cc:
        Merge key cache structures to one
      sql/strfunc.cc:
        Fixed that find_type() returns correct value for partly matched words.
        (This fixed the error found by date_formats.test)
      sql/time.cc:
        Remove not used variables
      strings/my_strtoll10.c:
        Fixed compiler warnings
      35da5e43
    • unknown's avatar
      Portability fixes (AIX43) · 1449a334
      unknown authored
      Add missing file to VC++ project
      
      
      VC++Files/mysys/mysys.dsp:
        Add new file to project
      include/my_sys.h:
        Remove old variables
      sql/set_var.h:
        Portability fix
      1449a334
  22. 18 Nov, 2003 1 commit
    • unknown's avatar
      CLIENT_MULTI_QUERIES -> CLIENT_MULTI_STATEMENTS · e72124c4
      unknown authored
      New multi-key-cache handling. This was needed becasue the old one didn't work reliable with MERGE tables.
      ALTER TABLE table_name ... CHARACTER SET  ... now changes all char/varchar/text columns to the given character set
      (One must use ALTER TABLE ... DEFAULT CHARACTER SET ... to change the default character set)
      Fixed that have_compress is detected properly (fixes problems with func_compress.test on platforms without zlib)
      New syntax for CACHE INDEX ('keys' is optional if no index name is given and one mentions the key cache name only ones)
      Removed compiler warnings
      Added mysql_set_server_option() to allow clients like PHP to easaily set/reset the multi-statement flag.
      
      
      BUILD/compile-pentium-valgrind-max:
        Add test of isam
      client/mysql.cc:
        CLIENT_MULTI_QUERIES -> CLIENT_MULTI_STATEMENTS
      include/my_base.h:
        Remove HA_EXTRA_SET_KEY_CACHE
      include/my_no_pthread.h:
        Add defines to ignore rw-locks when running without threads
      include/my_sys.h:
        Added function for multi-key-caches
      include/myisam.h:
        Added function to handle multi-key-caches
      include/mysql.h:
        Added mysql_set_server_option
      include/mysql_com.h:
        CLIENT_MULTI_QUERIES -> CLIENT_MULTI_STATEMENTS
        Added enum_mysql_set_option
      include/mysqld_error.h:
        Added error message for unknown key cache
      innobase/srv/srv0start.c:
        Removed warning that is confused for MySQL users
      libmysql/libmysql.c:
        Added mysql_set_server_option()
      libmysql/libmysql.def:
        Added mysql_set_server_option()
      myisam/ft_nlq_search.c:
        Removed compiler warning
      myisam/ft_static.c:
        Removed compiler warning and fixed wrong return value
      myisam/mi_check.c:
        Clean up multi-key-cache usage
      myisam/mi_checksum.c:
        Removed not used variable
      myisam/mi_close.c:
        keycache -> key_cache
      myisam/mi_delete_all.c:
        keycache -> key_cache
      myisam/mi_extra.c:
        keycache -> key_cache
        Removed HA_EXTRA_SET_KEY_CACHE
      myisam/mi_keycache.c:
        Changed logic so that it's MyISAM that is responsible for assign tables to different key caches instead of the upper level
      myisam/mi_locking.c:
        Don't change key cache on unlock (must be done before)
      myisam/mi_open.c:
        Fetch key cache to use from multi_key_cache_search()
      myisam/mi_page.c:
        keycache -> key_cache
      myisam/mi_panic.c:
        keycache -> key_cache
      myisam/mi_preload.c:
        keycache -> key_cache
      myisam/mi_test1.c:
        Use KEY_CACHE_BLOCK_SIZE
      myisam/mi_test2.c:
        Always test resize_key_cache()
      myisam/mi_test3.c:
        Use KEY_CACHE_BLOCK_SIZE instead of 512
      myisam/myisamchk.c:
        update for multiple key caches
      myisam/myisamdef.h:
        Remove reg_keycache
        Add unique_name_length for storing length of unique_file_name
      myisam/myisamlog.c:
        Change how end_key_cache() is called
      mysql-test/mysql-test-run.sh:
        Fixed web link
        Added name of failed test to abort row.
      mysql-test/r/alter_table.result:
        Testing of ALTER TABLE ... [DEFAULT] CHARACTER SET
      mysql-test/r/case.result:
        Update result for DEFAULT CHARSET...
      mysql-test/r/cast.result:
        Update result for DEFAULT CHARSET...
      mysql-test/r/create.result:
        Update result for DEFAULT CHARSET...
      mysql-test/r/ctype_collate.result:
        Update result for DEFAULT CHARSET...
      mysql-test/r/ctype_latin1_de.result:
        Update result for DEFAULT CHARSET...
      mysql-test/r/ctype_many.result:
        Update result for DEFAULT CHARSET...
      mysql-test/r/ctype_mb.result:
        Update result for DEFAULT CHARSET...
      mysql-test/r/ctype_recoding.result:
        Update result for DEFAULT CHARSET...
      mysql-test/r/ctype_ucs.result:
        Update result for DEFAULT CHARSET...
      mysql-test/r/derived.result:
        Use STRAIGHT_JOIN to make join order predictable
      mysql-test/r/fulltext.result:
        Update result for DEFAULT CHARSET...
      mysql-test/r/func_str.result:
        Update result for DEFAULT CHARSET...
      mysql-test/r/func_system.result:
        Update result for DEFAULT CHARSET...
      mysql-test/r/gis-rtree.result:
        Update result for DEFAULT CHARSET...
      mysql-test/r/innodb.result:
        Update result for DEFAULT CHARSET...
      mysql-test/r/key_cache.result:
        Update test for new key cache syntax.
        Added more tests
      mysql-test/r/merge.result:
        Update result for DEFAULT CHARSET...
      mysql-test/r/preload.result:
        New syntax
      mysql-test/r/show_check.result:
        Update result for DEFAULT CHARSET...
      mysql-test/r/sql_mode.result:
        Update result for DEFAULT CHARSET...
      mysql-test/r/subselect.result:
        Update result for DEFAULT CHARSET...
      mysql-test/r/type_blob.result:
        Update result for DEFAULT CHARSET...
      mysql-test/r/type_enum.result:
        Update result for DEFAULT CHARSET...
      mysql-test/r/type_nchar.result:
        Update result for DEFAULT CHARSET...
      mysql-test/r/type_set.result:
        Update result for DEFAULT CHARSET...
      mysql-test/r/union.result:
        Use STRAIGHT_JOIN to make join order predictable
      mysql-test/t/alter_table.test:
        Testing of ALTER TABLE ... [DEFAULT] CHARACTER SET
      mysql-test/t/ctype_many.test:
        Update result for DEFAULT CHARSET...
      mysql-test/t/derived.test:
        Use STRAIGHT_JOIN to make join order predictable
      mysql-test/t/isam.test:
        Use disable warnings for test loop
      mysql-test/t/join.test:
        Update test now when we only support 61 tables in join
      mysql-test/t/key_cache.test:
        Update test for new key cache syntax.
        Added more tests
      mysql-test/t/preload.test:
        Update for new syntax
      mysql-test/t/union.test:
        Use STRAIGHT_JOIN to make join order predictable
      mysys/Makefile.am:
        Added mf_keycaches.c
      mysys/hash.c:
        TRUE -> 1
      mysys/mf_keycache.c:
        Removed compiler warnings
        Striped end space
        Fixed indentation and improved function comments
        TRUE -> 1
        Changed parameters to end_key_cache() to make it easer to use
        Fixed bug when using key blocks size > 1024 bytes (First part of index file could be overwritten with wrong data)
        Split function flush_key_blocks into two functions to not get mutex used twice when called from flush_all_key_blocks()
      mysys/my_bitmap.c:
        More debugging
        Safe bitmap_free()
        Fixed indentation
      mysys/my_getopt.c:
        Ensure that we initialize option->value, option->max_value and value from GET_ASK_ADDR
      mysys/my_thr_init.c:
        Remove not used mutex THR_LOCK_keycache
      mysys/typelib.c:
        Fixed function comments
      sql-common/client.c:
        CLIENT_MULTI_QUERIES -> CLIENT_MULTI_STATEMENTS
        Fixed the multi_result flag is set also on SELECT;s
      sql/ha_myisam.cc:
        Fixed multiple key_cache handling
        (Now done on MyISAM level)
      sql/ha_myisammrg.cc:
        Fixed multiple key_cache handling
        (Now done on MyISAM level)
      sql/handler.cc:
        New multi key cache handling
      sql/handler.h:
        New multi key cache handling
        Added support for default character set
      sql/item.h:
        Added function cleanup() (Needed for prepared statements / cursors)
      sql/item_cmpfunc.h:
        Added cleanup function
      sql/item_func.cc:
        Indentation cleanup
      sql/mysql_priv.h:
        New multi-key-cache functions
        Removed LOCK_assign
      sql/mysqld.cc:
        New multi-key-cache handling
        Fixed that variable have_compress is set correctly
      sql/protocol.cc:
        SELECT didn't work reliable in multi-statements
      sql/set_var.cc:
        Support for new key cache variables
      sql/set_var.h:
        Support for new key cache variables
      sql/share/czech/errmsg.txt:
        New error messages
      sql/share/danish/errmsg.txt:
        New error messages
      sql/share/dutch/errmsg.txt:
        New error messages
      sql/share/english/errmsg.txt:
        New error messages
      sql/share/estonian/errmsg.txt:
        New error messages
      sql/share/french/errmsg.txt:
        New error messages
      sql/share/german/errmsg.txt:
        New error messages
      sql/share/greek/errmsg.txt:
        New error messages
      sql/share/hungarian/errmsg.txt:
        New error messages
      sql/share/italian/errmsg.txt:
        New error messages
      sql/share/japanese/errmsg.txt:
        New error messages
      sql/share/korean/errmsg.txt:
        New error messages
      sql/share/norwegian-ny/errmsg.txt:
        New error messages
      sql/share/norwegian/errmsg.txt:
        New error messages
      sql/share/polish/errmsg.txt:
        New error messages
      sql/share/portuguese/errmsg.txt:
        New error messages
      sql/share/romanian/errmsg.txt:
        New error messages
      sql/share/russian/errmsg.txt:
        New error messages
      sql/share/serbian/errmsg.txt:
        New error messages
      sql/share/slovak/errmsg.txt:
        New error messages
      sql/share/spanish/errmsg.txt:
        New error messages
      sql/share/swedish/errmsg.txt:
        New error messages
      sql/share/ukrainian/errmsg.txt:
        New error messages
      sql/sql_base.cc:
        Removed all key_cache handling (this is now done on MyISAM level)
        Change table_charset -> default_table_charset
      sql/sql_db.cc:
        table_charset -> default_table_charset
      sql/sql_delete.cc:
        table_charset -> default_table_charset
      sql/sql_lex.cc:
        CLIENT_MULTI_QUERIES -> CLIENT_MULTI_STATEMENTS
      sql/sql_lex.h:
        New option to store a name and length
      sql/sql_parse.cc:
        Support for mysql_set_server_option()
        Reset "default" keycache status variables in 'FLUSH STATUS' (Need to be improved later)
      sql/sql_show.cc:
        Add DEFAULT before CHARSET (for table character sets)
        Fetch key cache variables from 'sql_key_cache'
      sql/sql_table.cc:
        table_charset -> default_table_charset
        New multi-key-cache handling
      sql/sql_test.cc:
        Write information from all key caches
      sql/sql_yacc.yy:
        Changed syntax for CACHE INDEX ...
        Force user to use DEFAULT before database/table level character sets
      sql/structs.h:
        Added SHOW_KEY_CACHE_LONG (to get values from sql_key_cache)
      sql/table.cc:
        table_charset -> default_table_charset
      sql/table.h:
        New key cache handling (this is now done in mysys/mf_keycaches.c)
      sql/unireg.h:
        A
      e72124c4
  23. 03 Nov, 2003 1 commit
    • unknown's avatar
      Simplified 'wrong xxx name' error messages by introducing 'general' ER_WRONG_NAME error · bee5d9d4
      unknown authored
      Cleaned up (and disabled part of) date/time/datetime format patch. One can't anymore change default read/write date/time/formats.
      This is becasue the non standard datetime formats can't be compared as strings and MySQL does still a lot of datetime comparisons as strings
      Changed flag argument to str_to_TIME() and get_date() from bool to uint
      Removed THD from str_to_xxxx functions and Item class.
      Fixed core dump when doing --print-defaults
      Move some common string functions to strfunc.cc
      Dates as strings are now of type my_charset_bin instead of default_charset()
      Introduce IDENT_QUOTED to not have to create an extra copy of simple identifiers (all chars < 128)
      Removed xxx_FORMAT_TYPE enums and replaced them with the old TIMESTAMP_xxx enums
      Renamed some TIMESTAMP_xxx enums to more appropriate names
      Use defines instead of integers for date/time/datetime string lengths
      Added to build system and use the new my_strtoll10() function.
      
      
      
      BUILD/compile-pentium-valgrind-max:
        Remove double printing of warning
      VC++Files/libmysqld/libmysqld.dsp:
        Added strfunc.cc
      VC++Files/sql/mysqld.dsp:
        Added strfunc.cc
      VC++Files/sql/mysqldmax.dsp:
        Added strfunc.cc
      VC++Files/strings/strings.dsp:
        added my_strtoll10.c
      include/m_ctype.h:
        Removed MY_LEX_FOUND_IDENT (not used)
      include/m_string.h:
        Added my_strtoll10()
      include/mysqld_error.h:
        simplified 'wrong xxx name' error messages
      include/sql_state.h:
        simplified 'wrong xxx name' error messages
      libmysqld/Makefile.am:
        Added strfunc.cc
      mysql-test/mysql-test-run.sh:
        Simplified some options
        changed $@ to "$@" in an attempt to handle options with space (Didn't succeed;  Problem will disappear when mysql-test-run is rewritten in C)
      mysql-test/r/ctype_latin1_de.result:
        Added new tests
      mysql-test/r/ctype_recoding.result:
        Extended tests
      mysql-test/r/date_formats.result:
        Cleaned up tests
        Disabled some tests that can't yet be run
      mysql-test/r/func_compress.result:
        New error message
      mysql-test/r/rpl_temporary.result:
        Added new test
      mysql-test/t/create.test:
        Changed error numbers
      mysql-test/t/ctype_latin1_de.test:
        New tests
      mysql-test/t/ctype_recoding.test:
        Extended tests
      mysql-test/t/date_formats-master.opt:
        Removed datetime_format as we can't handle options with space in mysql-test-run
      mysql-test/t/date_formats.test:
        Cleaned up tests
        Disabled some tests that can't yet be run
      mysql-test/t/rpl_temporary.test:
        Added testing of open temporary table on slave shutdown
      mysql-test/t/symlink.test:
        Fixed error numbers
      mysys/default.c:
        Fixed core dump when doing --print-defaults
      sql/Makefile.am:
        Added strfunc.cc
      sql/derror.cc:
        Fixed compiler warning
      sql/field.cc:
        Changed argument to str_to_TIME() from bool to uint
        Removed THD argument from str_to_TIME()
        Moved find_enum() and find_set() to strfunc.cc
      sql/field.h:
        Changed type of last argument to get_date() to be able to handle more options
      sql/init.cc:
        Remove not used variable dayord
      sql/item.cc:
        Changed type of last argument to get_date() to be able to handle more options
        Removed THD* element from item.
        Don't use make_date_time() to generate date/time/datetimes
      sql/item.h:
        Changed type of last argument to get_date() to be able to handle more options
        Removed THD* from Item
      sql/item_create.cc:
        Indentation cleanup
      sql/item_func.cc:
        Use new find_type()
      sql/item_func.h:
        Changed type of last argument to get_date() to be able to handle more options
      sql/item_strfunc.h:
        space change
      sql/item_timefunc.cc:
        Changed month_names[] to be easier to use
        Moved check_names[] to strfunc.cc
        Added back old make_datetime() function
        Optimized extract_date_time()
        Use my_strtoll10() insetad of my_strntoll()
        Optimized make_date_time()
        Replaced short variable names with long ones.
        Use new functions make_time(), make_date() and make_datetime()
        Dates as strings are now of type my_charset_bin instead of default_charset()
        Changed Item_func_str_to_date() to by default return a date.
      sql/item_timefunc.h:
        Changed charset for date string from default_charset() to my_charset_bin
        Changed type of last argument to get_date() to be able to handle more options
        Use defines instead of integers for date/time/datetime string lengths
      sql/mysql_priv.h:
        Fixed/added new prototypes
      sql/mysqld.cc:
        Removed opt_datetime_format_names
        Cleaned up handling of date_time format handling. (Fixed core dump when mysqld had error on startup)
        Removed some unnecessary double init of collation variables
      sql/protocol.cc:
        Changed back protocol functions to always return dates in ISO format
      sql/set_var.cc:
        Added variables time_format, date_format and datetime_format
        This had to be recoded becasue checking was done in 'update' method and not in 'check' method.
      sql/set_var.h:
        Removed class sys_var_datetime_format() as this defined a variable (which doesn't work) instead of updating a variable
      sql/share/czech/errmsg.txt:
        simplified 'wrong xxx name' error messages
      sql/share/danish/errmsg.txt:
        simplified 'wrong xxx name' error messages
      sql/share/dutch/errmsg.txt:
        simplified 'wrong xxx name' error messages
      sql/share/english/errmsg.txt:
        simplified 'wrong xxx name' error messages
      sql/share/estonian/errmsg.txt:
        simplified 'wrong xxx name' error messages
      sql/share/french/errmsg.txt:
        simplified 'wrong xxx name' error messages
      sql/share/german/errmsg.txt:
        simplified 'wrong xxx name' error messages
      sql/share/greek/errmsg.txt:
        simplified 'wrong xxx name' error messages
      sql/share/hungarian/errmsg.txt:
        simplified 'wrong xxx name' error messages
      sql/share/italian/errmsg.txt:
        simplified 'wrong xxx name' error messages
      sql/share/japanese/errmsg.txt:
        simplified 'wrong xxx name' error messages
      sql/share/korean/errmsg.txt:
        simplified 'wrong xxx name' error messages
      sql/share/norwegian-ny/errmsg.txt:
        simplified 'wrong xxx name' error messages
      sql/share/norwegian/errmsg.txt:
        simplified 'wrong xxx name' error messages
      sql/share/polish/errmsg.txt:
        simplified 'wrong xxx name' error messages
      sql/share/portuguese/errmsg.txt:
        simplified 'wrong xxx name' error messages
      sql/share/romanian/errmsg.txt:
        simplified 'wrong xxx name' error messages
      sql/share/russian/errmsg.txt:
        simplified 'wrong xxx name' error messages
      sql/share/serbian/errmsg.txt:
        simplified 'wrong xxx name' error messages
      sql/share/slovak/errmsg.txt:
        simplified 'wrong xxx name' error messages
      sql/share/spanish/errmsg.txt:
        simplified 'wrong xxx name' error messages
      sql/share/swedish/errmsg.txt:
        simplified 'wrong xxx name' error messages
      sql/share/ukrainian/errmsg.txt:
        simplified 'wrong xxx name' error messages
      sql/sql_base.cc:
        Use new find_type()
      sql/sql_class.cc:
        Allocate/free date_time format variables
      sql/sql_class.h:
        Define datetime_format variables
      sql/sql_db.cc:
        Use new ER_WRONG_NAME error
      sql/sql_lex.cc:
        Change lex to generate IDENT_QUOTED for quoted identifiers or identifers that are using characters > 128.
        This enabled us to not have to copy and convert the identifier to utf8 for simpe identifiers
      sql/sql_parse.cc:
        Use new ER_WRONG_NAME error
        Use new find_type() function
      sql/sql_prepare.cc:
        Use new defines
      sql/sql_table.cc:
        Use new ER_WRONG_NAME error
      sql/sql_yacc.yy:
        Don't copy and convert simple identifiers to utf8.
        Replace __FORMAT_TYPE defines with TIMESTAMP... defines
      sql/structs.h:
        Renamed DATETIME_FORMAT to DATE_TIME format to indicate that it's for date/time/datetime formats
        Renamed WRONT_TIMESTAMP_FULL to TIMESTAMP_DATETIME_ERROR and TIMESTAMP_FULL to TIMESTAMP_DATETIME
        Added KNOWN_DATE_TIME_FORMAT struct for Item_func_get_format
      sql/time.cc:
        Prepare str_to_TIME and str_to_time() for general date/time handling
        Removed THD from str_to... functions
        Renamed date/time/datetime functions to use 'date_time' instead of 'datetime'
        Added functions to make and copy DATE_TIME_FORMAT's
        Added trivial functions 'make_time()', 'make_date()' and 'make_datetime()'
      strings/Makefile.am:
        Added my_strtoll10()
      strings/ctype-bin.c:
        Cleared upper part of binary state map to be able to easily identify simple identifiers
      strings/my_vsnprintf.c:
        F
      bee5d9d4
  24. 24 Oct, 2003 1 commit
    • unknown's avatar
      support 'parallel' updates and rallback of whole statement in case of error in... · ce2c46dd
      unknown authored
      support 'parallel' updates and rallback of whole statement in case of error in evalueting value which should be assigned
      (BUG#1484)
      
      
      mysql-test/r/variables.result:
        test of swaping variables
      mysql-test/t/variables.test:
        test of swaping variables
      sql/item_func.cc:
        new method of user variables to pre-fetch value
      sql/item_func.h:
        new method of user variables to pre-fetch value
      sql/set_var.cc:
        check() methods fetch & store value
      sql/set_var.h:
        check() methods fetch & store value
      ce2c46dd
  25. 20 Oct, 2003 1 commit
  26. 15 Oct, 2003 1 commit
    • unknown's avatar
      Portability fixes for windows · ddbc8428
      unknown authored
      After merge fixes
      
      
      include/my_base.h:
        Fix comment syntax
      libmysql/client_settings.h:
        Portability fixes for windows
      libmysql/libmysql.c:
        Portability fixes for windows
      libmysql/libmysql.def:
        Portability fixes for windows
      mysql-test/r/variables.result:
        Fix result after merge
      sql-common/client.c:
        Portability fixes for windows
      sql/ha_berkeley.cc:
        Use defines instead of constants
      sql/item_strfunc.cc:
        Portability fixes for windows
      sql/mysql_priv.h:
        Use defines instead of defines
      sql/mysqld.cc:
        After merge fix
      sql/opt_range.h:
        After merge fix
      sql/set_var.h:
        Portability fixes for windows
      sql/sql_class.cc:
        Defines instead of constants
      sql/sql_help.cc:
        after merge fixes
        More OOM error checking
      sql/sql_prepare.cc:
        After merge fixes
      sql/sql_table.cc:
        Portability fixes for windows
      ddbc8428
  27. 02 Oct, 2003 1 commit
  28. 15 Sep, 2003 1 commit
  29. 18 Aug, 2003 1 commit
    • unknown's avatar
      After merge fixes · 2901c3b8
      unknown authored
      Use server character set if --default-character-set is not used
      Added convert_string() for more efficient alloc+character-set convert of strings
      
      
      BitKeeper/deleted/.del-convert.result~a3b56e1db6f498e9:
        Delete: mysql-test/r/convert.result
      BitKeeper/deleted/.del-convert.test~f4ceb743194dfe72:
        Delete: mysql-test/t/convert.test
      BitKeeper/deleted/.del-make_win_src_distribution.old~5c9ebdc4a852b43b:
        Delete: scripts/make_win_src_distribution.old
      client/mysql.cc:
        Use server character set if --default-character-set is not used
      client/mysqltest.c:
        Code cleanup (merge identical code)
        More debug messages
      heap/hp_create.c:
        After merge fix
      include/m_ctype.h:
        After merge fix
      include/my_global.h:
        Remove size_str (we already have size_s)
      include/mysql_com.h:
        After merge fix
      libmysql/libmysql.c:
        After merge fix
      libmysqld/Makefile.am:
        After merge fix
      mysql-test/r/auto_increment.result:
        After merge fix
      mysql-test/r/create.result:
        After merge fix
      mysql-test/r/ctype_latin1_de.result:
        After merge fix
      mysql-test/r/distinct.result:
        After merge fix
      mysql-test/r/drop.result:
        After merge fix
      mysql-test/r/fulltext.result:
        After merge fix
      mysql-test/r/func_gconcat.result:
        After merge fix
      mysql-test/r/func_str.result:
        After merge fix
      mysql-test/r/func_test.result:
        After merge fix
      mysql-test/r/grant.result:
        After merge fix
      mysql-test/r/group_by.result:
        After merge fix
      mysql-test/r/handler.result:
        After merge fix
      mysql-test/r/heap.result:
        After merge fix
      mysql-test/r/heap_btree.result:
        After merge fix
      mysql-test/r/heap_hash.result:
        After merge fix
      mysql-test/r/innodb.result:
        After merge fix
      mysql-test/r/insert.result:
        After merge fix
      mysql-test/r/insert_select.result:
        After merge fix
      mysql-test/r/join_outer.result:
        After merge fix
      mysql-test/r/key.result:
        After merge fix
      mysql-test/r/key_cache.result:
        After merge fix
      mysql-test/r/loaddata.result:
        After merge fix
      mysql-test/r/myisam.result:
        After merge fix
      mysql-test/r/null.result:
        After merge fix
      mysql-test/r/null_key.result:
        After merge fix
      mysql-test/r/order_by.result:
        After merge fix
      mysql-test/r/rpl_do_grant.result:
        After merge fix
      mysql-test/r/rpl_error_ignored_table.result:
        After merge fix
      mysql-test/r/rpl_ignore_grant.result:
        After merge fix
      mysql-test/r/rpl_loaddata.result:
        After merge fix
      mysql-test/r/rpl_log.result:
        After merge fix
      mysql-test/r/rpl_log_pos.result:
        After merge fix
      mysql-test/r/rpl_max_relay_size.result:
        After merge fix
      mysql-test/r/rpl_replicate_do.result:
        After merge fix
      mysql-test/r/rpl_reset_slave.result:
        After merge fix
      mysql-test/r/rpl_rotate_logs.result:
        After merge fix
      mysql-test/r/rpl_user_variables.result:
        After merge fix
      mysql-test/r/select.result:
        After merge fix
      mysql-test/r/select_safe.result:
        After merge fix
      mysql-test/r/subselect.result:
        After merge fix
      mysql-test/r/type_blob.result:
        After merge fix
      mysql-test/r/type_decimal.result:
        After merge fix
      mysql-test/r/type_float.result:
        After merge fix
      mysql-test/r/type_ranges.result:
        After merge fix
      mysql-test/r/type_time.result:
        After merge fix
      mysql-test/r/type_uint.result:
        After merge fix
      mysql-test/r/union.result:
        After merge fix
      mysql-test/r/warnings.result:
        After merge fix
      mysql-test/t/auto_increment.test:
        After merge fix
      mysql-test/t/case.test:
        After merge fix
      mysql-test/t/ctype_collate.test:
        After merge fix
      mysql-test/t/ctype_latin1_de.test:
        After merge fix
      mysql-test/t/drop.test:
        After merge fix
      mysql-test/t/func_in.test:
        After merge fix
      mysql-test/t/func_set.test:
        After merge fix
      mysql-test/t/func_str.test:
        After merge fix
      mysql-test/t/func_test.test:
        After merge fix
      mysql-test/t/grant.test:
        After merge fix
      mysql-test/t/group_by.test:
        After merge fix
      mysql-test/t/handler.test:
        After merge fix
      mysql-test/t/heap.test:
        After merge fix
      mysql-test/t/heap_btree.test:
        After merge fix
      mysql-test/t/heap_hash.test:
        After merge fix
      mysql-test/t/innodb.test:
        After merge fix
      mysql-test/t/insert_select.test:
        After merge fix
      mysql-test/t/key.test:
        After merge fix
      mysql-test/t/key_cache.test:
        After merge fix
      mysql-test/t/lock_tables_lost_commit-master.opt:
        After merge fix
      mysql-test/t/lock_tables_lost_commit.test:
        After merge fix
      mysql-test/t/myisam.test:
        After merge fix
      mysql-test/t/row.test:
        After merge fix
      mysql-test/t/subselect.test:
        After merge fix
      mysql-test/t/type_decimal.test:
        After merge fix
      mysql-test/t/type_ranges.test:
        After merge fix
      mysql-test/t/type_uint.test:
        After merge fix
      mysql-test/t/variables.test:
        After merge fix
      mysql-test/t/warnings.test:
        After merge fix
      scripts/make_win_src_distribution.sh:
        after merge fixes
      sql-common/client.c:
        After merge fix
        Change my_connect() to use poll()
        If character set is not given, use servers character set.
      sql/field.cc:
        After merge fix
        Don't give warnings when storing data in fields in optimizer.
      sql/ha_myisammrg.h:
        After merge fix
      sql/log.cc:
        After merge fix
      sql/log_event.cc:
        After merge fix
      sql/mysqld.cc:
        After merge fix
      sql/opt_range.cc:
        After merge fix
      sql/set_var.cc:
        Code cleanup
        Fixed wrong usage of base_names (like medium.key_buffer) that caused core dumps
      sql/set_var.h:
        Fixed wrong usage of base_names (like medium.key_buffer) that caused core dumps
      sql/slave.cc:
        After merge fix
      sql/sql_acl.cc:
        After merge fix
        Code cleanup
      sql/sql_class.cc:
        Added convert_string() for more efficient alloc+character-set convert of strings
        Add cached flags to avoid calling mysql_charset_same() during parsing.
      sql/sql_class.h:
        Added convert_string() for more efficient alloc+character-set convert of strings
        Add cached flags to avoid calling mysql_charset_same() during parsing.
      sql/sql_handler.cc:
        After merge fix
      sql/sql_lex.h:
        After merge fix
      sql/sql_parse.cc:
        Optimize and fix memory reference errors reported by valgrind
      sql/sql_repl.cc:
        After merge fix
      sql/sql_yacc.yy:
        After merge fix
        Avoid calling mysql_charset_same() when parsing identifiers
      strings/ctype-latin1.c:
        Port latin_de conversion code from 4.0
      2901c3b8
  30. 09 Aug, 2003 1 commit
    • unknown's avatar
      set_var.cc, mysqld.cc, handler.cc, set_var.h, handler.h: · cbd85f9d
      unknown authored
        Added key cache parameters for midpoint insertion strategy
      Many files:
        Added midpoint insertion strategy for key cache
      mi_test2.c:
        Added a parameter to resize_key_cache
      
      
      mysys/mf_keycache.c:
        Added midpoint insertion strategy for key cache
      myisam/mi_check.c:
        Added midpoint insertion strategy for key cache
      myisam/mi_page.c:
        Added midpoint insertion strategy for key cache
      myisam/mi_range.c:
        Added midpoint insertion strategy for key cache
      myisam/rt_index.c:
        Added midpoint insertion strategy for key cache
      myisam/rt_split.c:
        Added midpoint insertion strategy for key cache
      myisam/mi_delete.c:
        Added midpoint insertion strategy for key cache
      myisam/mi_preload.c:
        Added midpoint insertion strategy for key cache
      myisam/mi_search.c:
        Added midpoint insertion strategy for key cache
      myisam/mi_write.c:
        Added midpoint insertion strategy for key cache
      myisam/rt_key.c:
        Added midpoint insertion strategy for key cache
      myisam/mi_test2.c:
        Added a parameter to resize_key_cache
      isam/_page.c:
        Added midpoint insertion strategy for key cache
      include/my_sys.h:
        Added midpoint insertion strategy for key cache
      myisam/myisamdef.h:
        Added midpoint insertion strategy for key cache
      sql/handler.h:
        Added key cache parameters for midpoint insertion strategy.
      sql/set_var.h:
        Added key cache parameters for midpoint insertion strategy.
      sql/handler.cc:
        Added key cache parameters for midpoint insertion strategy.
      sql/mysqld.cc:
        Added key cache parameters for midpoint insertion strategy.
      sql/set_var.cc:
        Added key cache parameters for midpoint insertion strategy.
      cbd85f9d
  31. 05 Aug, 2003 1 commit
  32. 02 Aug, 2003 1 commit
    • unknown's avatar
      Many files: · b6d27e20
      unknown authored
        Added key cache assignment
      mi_locking.c:
        Added key cache assignment: correction
      my_sys.h:
        Added key cache variable structure
      
      
      include/my_sys.h:
        Added key cache variable structure
      include/my_base.h:
        Added key cache assignment
      include/myisam.h:
        Added key cache assignment
      include/my_global.h:
        Added key cache assignment
      isam/_page.c:
        Added key cache assignment
      isam/close.c:
        Added key cache assignment
      isam/isamchk.c:
        Added key cache assignment
      isam/isamlog.c:
        Added key cache assignment
      isam/panic.c:
        Added key cache assignment
      isam/_locking.c:
        Added key cache assignment
      isam/test2.c:
        Added key cache assignment
      isam/test3.c:
        Added key cache assignment
      myisam/myisamdef.h:
        Added key cache assignment
      myisam/mi_check.c:
        Added key cache assignment
      myisam/mi_close.c:
        Added key cache assignment
      myisam/mi_extra.c:
        Added key cache assignment
      myisam/mi_page.c:
        Added key cache assignment
      myisam/mi_panic.c:
        Added key cache assignment
      myisam/mi_preload.c:
        Added key cache assignment
      myisam/mi_test1.c:
        Added key cache assignment
      myisam/mi_test2.c:
        Added key cache assignment
      myisam/mi_test3.c:
        Added key cache assignment
      myisam/myisamchk.c:
        Added key cache assignment
      myisam/myisamlog.c:
        Added key cache assignment
      myisam/mi_delete_all.c:
        Added key cache assignment
      myisam/mi_locking.c:
        Added key cache assignment: correction
      myisam/mi_keycache.c:
        Added key cache assignment
      sql/handler.h:
        Added key cache assignment
      sql/mysql_priv.h:
        Added key cache assignment
      sql/set_var.h:
        Added key cache assignment
      sql/table.h:
        Added key cache assignment
      sql/ha_myisam.cc:
        Added key cache assignment
      sql/ha_myisammrg.cc:
        Added key cache assignment
      sql/handler.cc:
        Added key cache assignment
      sql/mysqld.cc:
        Added key cache assignment
      sql/set_var.cc:
        Added key cache assignment
      sql/sql_base.cc:
        Added key cache assignment
      sql/sql_table.cc:
        Added key cache assignment
      sql/sql_test.cc:
        Added key cache assignment
      sql/sql_yacc.yy:
        Added key cache assignment
      mysys/mf_keycache.c:
        Added key cache assignment
      mysql-test/t/key_cache.test:
        Added key cache assignment
      mysql-test/r/key_cache.result:
        Added key cache assignment
      b6d27e20
  33. 18 Jul, 2003 1 commit
    • unknown's avatar
      SCRUM: · 573227ec
      unknown authored
      Task 499 'init_connect, init_slave options'
      
      
      mysql-test/mysql-test-run.sh:
        Task 499 'init_connect, init_slave options'
        This change needs because mysql-test-run cuts string variable on first space
      sql/mysql_priv.h:
        Task 499 'init_connect, init_slave options'
      sql/mysqld.cc:
        Task 499 'init_connect, init_slave options'
      sql/protocol.cc:
        Task 499 'init_connect, init_slave options'
      sql/set_var.cc:
        Task 499 'init_connect, init_slave options'
      sql/set_var.h:
        Task 499 'init_connect, init_slave options'
      sql/slave.cc:
        Task 499 'init_connect, init_slave options'
      sql/sql_class.cc:
        Task 499 'init_connect, init_slave options'
      sql/sql_class.h:
        Task 499 'init_connect, init_slave options'
      sql/sql_parse.cc:
        Task 499 'init_connect, init_slave options'
      sql/sql_show.cc:
        Task 499 'init_connect, init_slave options'
      573227ec
  34. 07 Jul, 2003 1 commit
    • unknown's avatar
      Preliminary support for options --secure-auth, · 78c3d968
      unknown authored
      --old-passwords
      Support for option --old-protocol was removed.
      Some test performed.
      Tests for SSL and replication are pending.
      More strict following to specification for --old-passwords
      is in the TODO.
      
      
      include/mysql_com.h:
        support for 3.20 passwords removed from
        scramble_323
      include/mysqld_error.h:
        added error code for --secure-auth mode
      libmysql/libmysql.c:
        removed support for 3.20 password and protocol
        version 9
      mysql-test/r/connect.result:
        added check for new syntax of 
        set password
      mysql-test/r/func_crypt.result:
        tests for two-argument of password() were removed.
        Instead added tests for cooperation of password() and
        old_passwords session/global variable, passwords() and spaces 
        in argument string
      mysql-test/t/connect.test:
        added check for new syntax of
        set password
      mysql-test/t/func_crypt.test:
        tests for two-argument of password() were removed.
        Instead added tests for cooperation of password() and
        old_passwords session/global variable, passwords() and spaces 
        in argument string
      sql-common/client.c:
        removed support for 3.20 servers and 
        protocol version 9
      sql/item_strfunc.h:
        fixed comment
      sql/mysql_priv.h:
        added declarartion for option opt_secure_auth
      sql/mysqld.cc:
        added option opt_secure_auth
        option old-password placed according to
        sort order
      sql/password.c:
        removed support for 3.20 clients and 
        old scrambles
      sql/set_var.cc:
        added system variable 'secure_auth'
        added system/thread variable 'old_passwords'
      sql/set_var.h:
        sys_old_passwords needs to be exported 
        because sys_old_passwords.after_update is used
        in sql_acl.cc
      sql/sql_acl.cc:
        support for 3.20 passwords removed
        now acl_init honors options works properly with
        options/variables --secure-auth and --old-passwords
      sql/sql_acl.h:
        support for 3.20 clients removed
      sql/sql_class.h:
        added system/thread variable old_passwords
      sql/sql_parse.cc:
        support for 3.20 clients removed
        now check_user takes into account option
        secure_auth
      sql/sql_yacc.yy:
        global variable use_old_passwords 
        replaced with thread-specific variable 
        old_passwords
      sql/share/czech/errmsg.txt:
        error message for --secure-auth added
        (as suggested by Paul)
      sql/share/danish/errmsg.txt:
        error message for --secure-auth added
        (as suggested by Paul)
      sql/share/dutch/errmsg.txt:
        error message for --secure-auth added
        (as suggested by Paul)
      sql/share/english/errmsg.txt:
        error message for --secure-auth added
        (as suggested by Paul)
      sql/share/estonian/errmsg.txt:
        error message for --secure-auth added
        (as suggested by Paul)
      sql/share/french/errmsg.txt:
        error message for --secure-auth added
        (as suggested by Paul)
      sql/share/german/errmsg.txt:
        error message for --secure-auth added
        (as suggested by Paul)
      sql/share/greek/errmsg.txt:
        error message for --secure-auth added
        (as suggested by Paul)
      sql/share/hungarian/errmsg.txt:
        error message for --secure-auth added
        (as suggested by Paul)
      sql/share/italian/errmsg.txt:
        error message for --secure-auth added
        (as suggested by Paul)
      sql/share/japanese/errmsg.txt:
        error message for --secure-auth added
        (as suggested by Paul)
      sql/share/korean/errmsg.txt:
        error message for --secure-auth added
        (as suggested by Paul)
      sql/share/norwegian-ny/errmsg.txt:
        error message for --secure-auth added
        (as suggested by Paul)
      sql/share/norwegian/errmsg.txt:
        error message for --secure-auth added
        (as suggested by Paul)
      sql/share/polish/errmsg.txt:
        error message for --secure-auth added
        (as suggested by Paul)
      sql/share/portuguese/errmsg.txt:
        error message for --secure-auth added
        (as suggested by Paul)
      sql/share/romanian/errmsg.txt:
        error message for --secure-auth added
        (as suggested by Paul)
      sql/share/russian/errmsg.txt:
        error message for --secure-auth added
        (as suggested by Paul)
      sql/share/serbian/errmsg.txt:
        error message for --secure-auth added
        (as suggested by Paul)
      sql/share/slovak/errmsg.txt:
        error message for --secure-auth added
        (as suggested by Paul)
      sql/share/spanish/errmsg.txt:
        error message for --secure-auth added
        (as suggested by Paul)
      sql/share/swedish/errmsg.txt:
        error message for --secure-auth added
        (as suggested by Paul)
      sql/share/ukrainian/errmsg.txt:
        error message for --secure-auth added
        (as suggested by Paul)
      78c3d968
  35. 06 Jul, 2003 1 commit
    • unknown's avatar
      Support for variables with components · e17562b5
      unknown authored
      Added framework to create/drop and manager buffers for multiple key caches
      
      
      include/my_getopt.h:
        Fixed prototype
      include/my_sys.h:
        Added (temporary) KEY_CACHE type
      include/mysqld_error.h:
        New error messages
      mysql-test/r/select_safe.result:
        Updated test results
      mysql-test/r/variables.result:
        Updated test results
      mysys/my_getopt.c:
        Fixed bugs with GET_ASK_ADDR
      sql/Makefile.am:
        Make sql_yacc.o depend on all header files in sql directory
      sql/item_func.cc:
        Added support for variable components
      sql/mysql_priv.h:
        Added support for variable components
      sql/mysqld.cc:
        Added support for multiple key caches
      sql/set_var.cc:
        Added support for multiple key caches
      sql/set_var.h:
        Added support for multiple key caches
      sql/share/czech/errmsg.txt:
        New error messages
      sql/share/danish/errmsg.txt:
        New error messages
      sql/share/dutch/errmsg.txt:
        New error messages
      sql/share/english/errmsg.txt:
        New error messages
      sql/share/estonian/errmsg.txt:
        New error messages
      sql/share/french/errmsg.txt:
        New error messages
      sql/share/german/errmsg.txt:
        New error messages
      sql/share/greek/errmsg.txt:
        New error messages
      sql/share/hungarian/errmsg.txt:
        New error messages
      sql/share/italian/errmsg.txt:
        New error messages
      sql/share/japanese/errmsg.txt:
        New error messages
      sql/share/korean/errmsg.txt:
        New error messages
      sql/share/norwegian-ny/errmsg.txt:
        New error messages
      sql/share/norwegian/errmsg.txt:
        New error messages
      sql/share/polish/errmsg.txt:
        New error messages
      sql/share/portuguese/errmsg.txt:
        New error messages
      sql/share/romanian/errmsg.txt:
        New error messages
      sql/share/russian/errmsg.txt:
        New error messages
      sql/share/serbian/errmsg.txt:
        New error messages
      sql/share/slovak/errmsg.txt:
        New error messages
      sql/share/spanish/errmsg.txt:
        New error messages
      sql/share/swedish/errmsg.txt:
        New error messages
      sql/share/ukrainian/errmsg.txt:
        New error messages
      sql/sql_lex.cc:
        Fixes for quoting of variables.
      sql/sql_parse.cc:
        Fix after changing prototype for get_system_var
      sql/sql_show.cc:
        Fix after introducing variable components
      sql/sql_yacc.yy:
        Support for variables with components (To support multiple key caches)
      e17562b5
  36. 29 Jun, 2003 1 commit
    • unknown's avatar
      SET CHARACTER SET DEFAULT didn't work (Bug #462) · e224c123
      unknown authored
      BUILD/compile-pentium-debug-max:
        Removed -DBIG_TABLES because of problems with gdb 5.3
      sql/set_var.cc:
        SET CHARACTER SET DEFAULT didn't work
      sql/set_var.h:
        SET CHARACTER SET DEFAULT didn't work
      e224c123
  37. 11 Jun, 2003 1 commit
    • unknown's avatar
      We now require SUPER privilege for SET PSEUDO_THREAD_ID. · b7e0c11a
      unknown authored
      mysql-test/r/rpl_temporary.result:
        result update
      mysql-test/t/rpl_temporary.test:
        test that PSEUDO_THREAD_ID now requires SUPER.
      sql/set_var.cc:
        Class for pseudo_thread_id (it used to be sys_var_thd_ulong, but we 
        decided to require the SUPER privilege so we needed a check() function,
        which sys_var_thd_ulong does not feature (check() is virtual in sys_var
        and in sys_var_thd_ulong too).
      sql/set_var.h:
        Class for pseudo_thread_id
      b7e0c11a
  38. 04 Jun, 2003 1 commit
    • unknown's avatar
      Added SQLSTATE to client/server protocol · b388eb00
      unknown authored
      bmove_allign -> bmove_align
      Added OLAP function ROLLUP
      Split mysql_fix_privilege_tables to a script and a .sql data file
      Added new (MEMROOT*) functions to avoid calling current_thd() when creating some common objects.
      Added table_alias_charset, for easier --lower-case-table-name handling
      Better SQL_MODE handling (Setting complex options also sets sub options)
      New (faster) assembler string functions for x86
      
      
      BitKeeper/etc/ignore:
        added libmysqld/sql_state.c
      client/mysql.cc:
        Added SQLSTATE to error messages
        Added new function put_error() to be able to clean up some old code.
      client/mysqltest.c:
        Write ERROR SQLSTATE for all errors
      dbug/dbug.c:
        Portability fixes
      include/m_string.h:
        Rename bmove_allign as bmove_align
      include/mysql.h:
        Added SQLSTATE (for embedded version)
      include/mysql_com.h:
        Send correct SQLSTATE for the error to the client
      libmysql/libmysql.c:
        Changed default error state to HY000
        Applied code cleanup patch
      libmysqld/Makefile.am:
        Added sql_state.cc
      libmysqld/libmysqld.c:
        Added sqlstate
      mysql-test/r/analyse.result:
        Updated results
      mysql-test/r/ansi.result:
        Updated results
      mysql-test/r/auto_increment.result:
        Updated results
      mysql-test/r/bdb-deadlock.result:
        Updated results
      mysql-test/r/bdb.result:
        Updated results
      mysql-test/r/comments.result:
        Updated results
      mysql-test/r/create.result:
        Updated results
      mysql-test/r/ctype_collate.result:
        Updated results
      mysql-test/r/delayed.result:
        Updated results
      mysql-test/r/delete.result:
        Updated results
      mysql-test/r/derived.result:
        Updated results
      mysql-test/r/distinct.result:
        Updated results
      mysql-test/r/drop.result:
        Updated results
      mysql-test/r/err000001.result:
        Updated results
      mysql-test/r/explain.result:
        Updated results
      mysql-test/r/flush.result:
        Updated results
      mysql-test/r/fulltext.result:
        Updated results
      mysql-test/r/func_gconcat.result:
        Updated results
      mysql-test/r/func_system.result:
        Updated results
      mysql-test/r/grant_cache.result:
        Updated results
      mysql-test/r/group_by.result:
        Updated results
      mysql-test/r/handler.result:
        Updated results
      mysql-test/r/heap.result:
        Updated results
      mysql-test/r/heap_btree.result:
        Updated results
      mysql-test/r/heap_hash.result:
        Updated results
      mysql-test/r/innodb.result:
        Updated results
      mysql-test/r/innodb_handler.result:
        Updated results
      mysql-test/r/insert_select.result:
        Updated results
      mysql-test/r/insert_update.result:
        Updated results
      mysql-test/r/join.result:
        Updated results
      mysql-test/r/join_outer.result:
        Updated results
      mysql-test/r/key.result:
        Updated results
      mysql-test/r/lock.result:
        Updated results
      mysql-test/r/lock_multi.result:
        Updated results
      mysql-test/r/merge.result:
        Updated results
      mysql-test/r/multi_update.result:
        Updated results
      mysql-test/r/myisam.result:
        Updated results
      mysql-test/r/null.result:
        Updated results
      mysql-test/r/olap.result:
        Updated results
      mysql-test/r/order_by.result:
        Updated results
      mysql-test/r/packet.result:
        Updated results
      mysql-test/r/query_cache.result:
        Updated results
      mysql-test/r/row.result:
        Updated results
      mysql-test/r/rpl000001.result:
        Updated results
      mysql-test/r/rpl000009.result:
        Updated results
      mysql-test/r/rpl_empty_master_crash.result:
        Updated results
      mysql-test/r/rpl_log.result:
        Updated results
      mysql-test/r/rpl_replicate_do.result:
        Updated results
      mysql-test/r/rpl_rotate_logs.result:
        Updated results
      mysql-test/r/select.result:
        Updated results
      mysql-test/r/select_safe.result:
        Updated results
      mysql-test/r/show_check.result:
        Updated results
      mysql-test/r/sql_mode.result:
        Updated results
      mysql-test/r/subselect.result:
        Updated results
      mysql-test/r/temp_table.result:
        Updated results
      mysql-test/r/truncate.result:
        Updated results
      mysql-test/r/type_blob.result:
        Updated results
      mysql-test/r/type_decimal.result:
        Updated results
      mysql-test/r/type_float.result:
        Updated results
      mysql-test/r/type_ranges.result:
        Updated results
      mysql-test/r/union.result:
        Updated results
      mysql-test/r/update.result:
        Updated results
      mysql-test/r/user_var.result:
        Updated results
      mysql-test/r/varbinary.result:
        Updated results
      mysql-test/r/variables.result:
        Updated results
      mysql-test/t/ansi.test:
        Test of sql_mode
      mysql-test/t/derived.test:
        Updated results
      mysql-test/t/func_system.test:
        Make this independen of the MySQL server name
      mysql-test/t/lowercase_table.test:
        Cleanup
      mysql-test/t/olap.test:
        A lot of new tests
      mysql-test/t/sql_mode.test:
        More test for sql_mode
      mysql-test/t/subselect.test:
        Added a few new tests (to find a bug in the item_ref code)
      scripts/Makefile.am:
        Added mysql_fix_privilege_tables.sql
      scripts/mysql_fix_privilege_tables.sh:
        Totally new script.  This bascily just pipes mysql_fix_privilege_tables.sql through 'mysql' to 'mysqld'
      sql/Makefile.am:
        Added sql_state.cc
      sql/item.cc:
        Extended Item_field::eq() to be able to better match GROUP BY fields on the command line.
        Needed for ROLLUP
      sql/item.h:
        Added function to be able to avoid calling current_thd() when doing new Item.
      sql/item_sum.cc:
        Moved copy_or_same() and some reset() functions from item_sum.h
        Needed to be able to access thd->mem_root.
      sql/item_sum.h:
        Moved some functions to item_sum.cc
        Added make_unique() for ROLLUP
      sql/item_uniq.h:
        Fixed return value
      sql/mysql_priv.h:
        Updated MODE flags
      sql/mysqld.cc:
        Added ANSI as it's own mode
        Moved charset_info variables here
        Cleaned up handler_count handling (for NT)
        Added table_alias_charset, for easier --lower-case-table-name handling
      sql/net_serv.cc:
        New comment
      sql/protocol.cc:
        Send SQLSTATE to client
      sql/set_var.cc:
        Better SQL_MODE handling (Setting complex options also sets sub options)
      sql/set_var.h:
        Better SQL_MODE handling
      sql/sql_base.cc:
        Make alias depend on --lower-case-table-names
        Make find_item_in_list also check database name
      sql/sql_cache.cc:
        Indentation cleanup
      sql/sql_list.h:
        Added safety assert
        Addes support of alloc without current_thd()
      sql/sql_prepare.cc:
        Update after prototype change
      sql/sql_select.cc:
        Added ROLLUP
      sql/sql_select.h:
        structures for rollup
      sql/sql_show.cc:
        Easier SQL_MODE handling
      sql/sql_string.cc:
        Move CHARSET_INFO to mysqld (to be together with all other global variables)
      sql/sql_string.h:
        Added function to be able to avoid calling current_thd() when doing new Item.
      sql/sql_table.cc:
        Simpler --lower-case-table-name handling
      sql/sql_union.cc:
        Update after prototype change
      sql/sql_yacc.yy:
        ROLLUP
      sql/unireg.h:
        bmove_allign ->bmove_align
      strings/Makefile.am:
        Fix to be able to compile str_test.c
      strings/ctype.c:
        Removed empty lines
      strings/str_test.c:
        Added test of bmove_align
      strings/strings-x86.s:
        Faster bmove_align, bmove_upp and strmake
      strings/strings.asm:
        move_allg
      b388eb00
  39. 30 May, 2003 1 commit