An error occurred fetching the project authors.
  1. 31 Aug, 2004 1 commit
  2. 27 Aug, 2004 1 commit
  3. 26 Aug, 2004 1 commit
  4. 19 Aug, 2004 1 commit
    • unknown's avatar
      after merge fixes · ae2bf627
      unknown authored
      strings/my_vsnprintf.c:
        %.#s support in my_vsnprintf
      BitKeeper/etc/ignore:
        Added EXCEPTIONS-CLIENT to the ignore list
      ae2bf627
  5. 13 Aug, 2004 1 commit
    • unknown's avatar
      skip resolving field in table list if table list is not accessable due to groupping (BUG#4814) · d0c87702
      unknown authored
      mysql-test/r/func_gconcat.result:
        fix of test queries
      mysql-test/r/subselect.result:
        resolving fields of grouped outer SELECT
      mysql-test/t/func_gconcat.test:
        fix of test queries
      mysql-test/t/subselect.test:
        resolving fields of grouped outer SELECT
      sql/item.cc:
        skip resolving field in table list if table list is not accessable due to groupping
        layout fixed
      sql/item_subselect.cc:
        detection of place of subquery
      sql/item_subselect.h:
        detection of place of subquery
      sql/mysql_priv.h:
        enum_parsing_place made global type
      sql/sql_lex.cc:
        enum_parsing_place made global type
      sql/sql_lex.h:
        enum_parsing_place made global type
      sql/sql_yacc.yy:
        enum_parsing_place made global type
      d0c87702
  6. 11 Aug, 2004 1 commit
  7. 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
  8. 26 Jul, 2004 1 commit
  9. 08 Jul, 2004 1 commit
  10. 07 Jul, 2004 1 commit
  11. 02 Jul, 2004 1 commit
  12. 26 Jun, 2004 2 commits
    • unknown's avatar
      removed using lex->select_lex.options is SHOW TABLE [STATUS] commands (BUG#4288) · f7b9e75b
      unknown authored
      mysql-test/r/func_group.result:
        fixed
      mysql-test/r/ps.result:
        SHOW TABLE STATUS test
      mysql-test/t/ps.test:
        SHOW TABLE STATUS test
      sql/sql_parse.cc:
        Use lex->describe instead of lex->select_lex.options
      sql/sql_yacc.yy:
        removed unneed initialization of lex->select_lex.options
      f7b9e75b
    • unknown's avatar
      after merge fixed · 7eb1afab
      unknown authored
      mysql-test/r/flush_table.result:
        after merge fixed
        duplicated tests removed
      mysql-test/t/flush_table.test:
        after merge fixed
        duplicated tests removed
      sql/sql_yacc.yy:
        alias is not db-qualified
      7eb1afab
  13. 24 Jun, 2004 2 commits
    • unknown's avatar
      parameter of my_yyoverflow made independed from YYSIZE_T (BUG#4204) · d75022ff
      unknown authored
      sql/sql_parse.cc:
        parameter of my_yyoverflow made independed from YYSIZE_T
      sql/sql_yacc.yy:
        parameter of my_yyoverflow made independed from YYSIZE_T
      d75022ff
    • 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
  14. 23 Jun, 2004 3 commits
    • unknown's avatar
      parameter of my_yyoverflow made independed from YYSIZE_T (BUG#4204) · a616e1de
      unknown authored
      mysql-test/r/union.result:
        test of correct parser stack overflow handling
      mysql-test/t/union.test:
        test of correct parser stack overflow handling
      sql/sql_parse.cc:
        parameter of my_yyoverflow made independed from YYSIZE_T
      sql/sql_yacc.yy:
        parameter of my_yyoverflow made independed from YYSIZE_T
      a616e1de
    • unknown's avatar
      handler interface cleanups: · 9a554b47
      unknown authored
        more logical table/index_flags
        return  HA_ERR_WRONG_COMMAND instead of abstract methods where appropriate
        max_keys and other limits renamed to max_supported_keys/etc
        max_keys/etc are now wrappers to max_supported_keys/etc 
        ha_index_init/ha_rnd_init/ha_index_end/ha_rnd_end are now wrappers to real {index,rnd}_{init,end} to enforce strict pairing
      
      
      include/myisam.h:
        increasing myisam_max_temp_file_length
      include/my_base.h:
        handler interface cleanup
      myisam/mi_static.c:
        warning removed
      mysql-test/Makefile.am:
        followup
      mysql-test/r/fulltext.result:
        fulltext indexes are not ordered
      mysql-test/r/rpl_user_variables.result:
        followup
      sql/field.cc:
        index_flags
      sql/filesort.cc:
        rnd_init -> ha_rnd_init
        rnd_end -> ha_rnd_end
      sql/ha_berkeley.cc:
        cleanup
      sql/ha_berkeley.h:
        table/index_flags revamped
      sql/ha_heap.cc:
        ensure index is accessed only after index_init (esp. important for temp tables)
      sql/ha_heap.h:
        table/index_flags revamped
      sql/ha_innodb.cc:
        don't workaround MySQL sloppiness
      sql/ha_innodb.h:
        table/index_flags revamped
      sql/ha_isam.h:
        table/index_flags revamped
      sql/ha_isammrg.h:
        table/index_flags revamped
      sql/ha_myisam.cc:
        ensure index is accessed only after index_init (esp. important for temp tables)
      sql/ha_myisam.h:
        table/index_flags revamped
      sql/ha_myisammrg.h:
        table/index_flags revamped
      sql/handler.cc:
        handler interface cleanups
      sql/handler.h:
        handler interface cleanups:
          more logical table/index_flags
          return  HA_ERR_WRONG_COMMAND instead of abstract methods
          max_keys and other limits renamed to max_supported_keys/etc
          max_keys/etc are now wrappers to max_supported_keys/etc 
          ha_index_init/ha_rnd_init/ha_index_end/ha_rnd_end are now wrappers to enforce strict pairing
      sql/item_subselect.cc:
        index_init/index_end/rnd_init/rnd_end strict pairing fixed
      sql/lex.h:
        renamed to avoid conflicts
      sql/opt_range.cc:
        index_init/index_end/rnd_init/rnd_end strict pairing fixed
        table/index_flags cleanup
      sql/opt_range.h:
        index_init/index_end/rnd_init/rnd_end strict pairing fixed
      sql/opt_sum.cc:
        index_init/index_end/rnd_init/rnd_end strict pairing fixed
        table/index_flags cleanup
      sql/records.cc:
        index_init/index_end/rnd_init/rnd_end strict pairing fixed
      sql/sql_acl.cc:
        index_init/index_end/rnd_init/rnd_end strict pairing fixed
      sql/sql_cache.cc:
        cleanup
      sql/sql_delete.cc:
        index_init/index_end/rnd_init/rnd_end strict pairing fixed
      sql/sql_handler.cc:
        index_init/index_end/rnd_init/rnd_end strict pairing fixed
      sql/sql_help.cc:
        index_init/index_end/rnd_init/rnd_end strict pairing fixed
      sql/sql_insert.cc:
        table/index_flags cleanup
      sql/sql_select.cc:
        index_init/index_end/rnd_init/rnd_end strict pairing fixed
        table/index_flags cleanup
      sql/sql_table.cc:
        index_init/index_end/rnd_init/rnd_end strict pairing fixed
        table/index_flags cleanup
      sql/sql_update.cc:
        index_init/index_end/rnd_init/rnd_end strict pairing fixed
      sql/sql_yacc.yy:
        INDEX -> INDEX_SYM
      sql/table.cc:
        table/index_flags cleanup
      9a554b47
    • unknown's avatar
      Fix and test case for BUG#3899 · 91e27b02
      unknown authored
      mysql-test/r/alter_table.result:
        Test case for BUG#3899
      mysql-test/t/alter_table.test:
        Test case for BUG#3899
      sql/sql_yacc.yy:
        Fix for BUG#3899: call ALTER_INFO::reset to clear ALTER_INFO::drop_list and ALTER_INFO::alter_list
      91e27b02
  15. 22 Jun, 2004 1 commit
    • unknown's avatar
      Fix for Bug# 4200 "Parse error on LIKE ESCAPE with parameter binding" · 4c670550
      unknown authored
      Now ESCAPE in LIKE will accept not only string literal but constant 
      delimited expression.
      
      
      mysql-test/r/func_like.result:
        Added test for bug# 4200 "Parse error on LIKE ESCAPE with parameter binding"
      mysql-test/t/func_like.test:
        Added test for bug# 4200 "Parse error on LIKE ESCAPE with parameter binding"
      sql/item_cmpfunc.cc:
        Added support for accepting of constant delimited expression as ESCAPE argument to
        Item_func_like.
      sql/item_cmpfunc.h:
        Now ESCAPE clause in LIKE will accept not only string literal but constant delimited 
        expression. Thus added member to Item_func_like for storing Item corresponding to this
        expression and changed third argument of cons to be Item* instead of char*.
      sql/sql_help.cc:
        Item_func_like now accepts Item* as third argument.
      sql/sql_yacc.yy:
        Now ESCAPE clause of LIKE accepts not only string literal but constant delimited expression
        (the most important case is prepared statement parameter of course).
      4c670550
  16. 18 Jun, 2004 1 commit
    • unknown's avatar
      Fixed some byte order bugs with prepared statements on machines with high-byte-first. (Bug #4173) · 7d52eabb
      unknown authored
      Fixed problem with NULL and derived tables (Bug #4097)
      Cleanup of new pushed code
      
      
      BitKeeper/etc/ignore:
        added mysql-test/ndb/ndbcluster
      client/mysqltest.c:
        simple cleanup
      innobase/os/os0file.c:
        fix for netware
      libmysql/libmysql.c:
        Fixed some byte order bugs with prepared statements on machines with
        high-byte-first. (Bug #4173)
      myisam/ft_boolean_search.c:
        Comment cleanup
      myisam/mi_check.c:
        Removed not needed check (check is done in check_index())
      myisam/mi_unique.c:
        crc must be of type ha_checksum.
      myisam/myisamchk.c:
        Portability fix.
      mysql-test/mysql-test-run.sh:
        Simple cleanup
      mysql-test/r/subselect.result:
        Test problem with NULL and derived tables (Bug #4097)
      mysql-test/t/subselect.test:
        Test problem with NULL and derived tables (Bug #4097)
      sql/mysqld.cc:
        Remove not used defines
      sql/sql_select.cc:
        Fixed problem with NULL and derived tables (Bug #4097)
        Indentation fixes
      sql/sql_string.cc:
        Code cleanup
      sql/sql_yacc.yy:
        Allow one to use DROP PREPARE ...
      7d52eabb
  17. 07 Jun, 2004 1 commit
    • unknown's avatar
      Post review fixes for "SQL Syntax for Prepared Statements". · 1d4ee7f8
      unknown authored
      mysql-test/r/ps.result:
        Better error message
      mysys/my_error.c:
        Comments added
      sql/item.cc:
        Moved a chunk of code from sql_prepare.cc to Item_param::set_from_user_var
      sql/item.h:
        Moved a chunk of code from sql_prepare.cc to Item_param::set_from_user_var
      sql/item_func.cc:
        Code cleanup
      sql/mysql_priv.h:
        Code cleanup
      sql/sql_class.cc:
        Code cleanup
      sql/sql_parse.cc:
        use user_var_entry::val_str in PREPARE stmt FROM @var.
      sql/sql_prepare.cc:
        Post-review fixes and code cleanup.
      sql/sql_yacc.yy:
        Coding style fixes
      1d4ee7f8
  18. 03 Jun, 2004 2 commits
    • 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
    • unknown's avatar
      Fix skipp -> skip once and for all. · e6b4b304
      unknown authored
      (Note: This affects only comments, not variable names.)
      
      
      extra/perror.c:
        Fix skipp -> skip once and for all.
      heap/hp_hash.c:
        Fix skipp -> skip once and for all.
      isam/_dynrec.c:
        Fix skipp -> skip once and for all.
      isam/isamchk.c:
        Fix skipp -> skip once and for all.
      isam/isamlog.c:
        Fix skipp -> skip once and for all.
      isam/pack_isam.c:
        Fix skipp -> skip once and for all.
      isam/test1.c:
        Fix skipp -> skip once and for all.
      merge/mrg_open.c:
        Fix skipp -> skip once and for all.
      myisam/mi_check.c:
        Fix skipp -> skip once and for all.
      myisam/mi_delete.c:
        Fix skipp -> skip once and for all.
      myisam/mi_key.c:
        Fix skipp -> skip once and for all.
      myisam/mi_search.c:
        Fix skipp -> skip once and for all.
      myisam/myisamlog.c:
        Fix skipp -> skip once and for all.
      mysys/ChangeLog:
        Fix skipp -> skip once and for all.
      mysys/default.c:
        Fix skipp -> skip once and for all.
      mysys/mf_iocache.c:
        Fix skipp -> skip once and for all.
      mysys/mf_iocache2.c:
        Fix skipp -> skip once and for all.
      mysys/mf_pack.c:
        Fix skipp -> skip once and for all.
      mysys/mf_soundex.c:
        Fix skipp -> skip once and for all.
      mysys/mf_wfile.c:
        Fix skipp -> skip once and for all.
      mysys/my_error.c:
        Fix skipp -> skip once and for all.
      mysys/my_getwd.c:
        Fix skipp -> skip once and for all.
      scripts/mysql_find_rows.sh:
        Fix skipp -> skip once and for all.
      sql/sql_yacc.yy:
        Fix skipp -> skip once and for all.
      sql/time.cc:
        Fix skipp -> skip once and for all.
      strings/ctype-big5.c:
        Fix skipp -> skip once and for all.
      strings/ctype-gbk.c:
        Fix skipp -> skip once and for all.
      strings/ctype-tis620.c:
        Fix skipp -> skip once and for all.
      e6b4b304
  19. 24 May, 2004 1 commit
    • unknown's avatar
      Fix for bug which caused temp_table.test fail on Darwin 7.3 · 0bf85cfd
      unknown authored
      The code in mysql_create_table() code assumes that if lower_case_names==2 then table alias 
      should contain unchanged table name, and this was not true for temporary tables which
      had 'tmp-table' constant as alias. Now we are using table name as alias for such tables.
      
      
      sql/sql_lex.cc:
        Removed tmp_table_alias constant which is no longer used.
      sql/sql_lex.h:
        Removed tmp_table_alias constant which is no longer used.
      sql/sql_yacc.yy:
        Let us use table name instead of 'tmp-table' as alias for table being created by 
        CREATE TEMPORARY TABLE statement. This fixes failing temp_table.test on Darwin 7.3 
        since mysql_create_table() code assumes that if lower_case_names==2 then table alias 
        should contain unchanged table name (and now this assumtion is true but it were false
        for temporary tables before...).
      0bf85cfd
  20. 21 May, 2004 2 commits
    • unknown's avatar
      Introduced parameter object "ALTER_INFO" for mysql_alter_table · ea63df7f
      unknown authored
      to make list of parameters in mysql_alter_table shorted
      to avoid warning in MSVC (windows) building 
      
      
      sql/mysql_priv.h:
        Introduced parameter object "ALTER_INFO" for mysql_alter_table
        - changed declaration of mysql_alter_table
        - changed declaration of mysql_drop_index 
          (replaced List<Alter_drop> by ALTER_INFO)
      sql/sql_lex.h:
        Introduced parameter object "ALTER_INFO" for mysql_alter_table
        - declared struct ALTER_INFO
        - added ALTER_INFO alter_info; into LEX
        - removed fields which were added into ALTER_INFO from LEX
      sql/sql_parse.cc:
        Introduced parameter object "ALTER_INFO" for mysql_alter_table
        - changed invotaions of mysql_alter_table
        - replaced cleaning fields in SQLCOM_OPTIMIZE by ALTER_INFO::reset
        - changed invocation of mysql_drop_index (replaced lex->drop_list by &lex->alter_info)
        - changed definition of mysql_create_index and mysql_drop_index to use ALTER_INFO
      sql/sql_table.cc:
        Introduced parameter object "ALTER_INFO" for mysql_alter_table
        - changed definition of mysql_alter_table
      sql/sql_yacc.yy:
        Introduced parameter object "ALTER_INFO" for mysql_alter_table
        - replaced using of removed from LEX fields my fields of LEX::alter_info
      ea63df7f
    • unknown's avatar
      WL#1622 "SQL Syntax for Prepared Statements": Post-review fixes (1 of 2) · e7710af7
      unknown authored
      mysql-test/r/ps.result:
        Added tests for PREPARE stmt1 FROM @var syntax
      mysql-test/t/ps.test:
        Added tests for PREPARE stmt1 FROM @var syntax
      mysys/my_error.c:
        Added support for "%.*s" format
      sql/item.cc:
        Removed one redundant Item_param::set_value function
      sql/item.h:
        Removed one redundant Item_param::set_value function
      sql/mysqld.cc:
        Reformmated the code
      sql/share/czech/errmsg.txt:
        Changed ER_UNKNOWN_STMT_HANDLER format string
      sql/share/dutch/errmsg.txt:
        Changed ER_UNKNOWN_STMT_HANDLER format string
      sql/share/english/errmsg.txt:
        Changed ER_UNKNOWN_STMT_HANDLER format string
      sql/share/estonian/errmsg.txt:
        Changed ER_UNKNOWN_STMT_HANDLER format string
      sql/share/french/errmsg.txt:
        Changed ER_UNKNOWN_STMT_HANDLER format string
      sql/share/german/errmsg.txt:
        Changed ER_UNKNOWN_STMT_HANDLER format string
      sql/share/greek/errmsg.txt:
        Changed ER_UNKNOWN_STMT_HANDLER format string
      sql/share/hungarian/errmsg.txt:
        Changed ER_UNKNOWN_STMT_HANDLER format string
      sql/share/italian/errmsg.txt:
        Changed ER_UNKNOWN_STMT_HANDLER format string
      sql/share/japanese/errmsg.txt:
        Changed ER_UNKNOWN_STMT_HANDLER format string
      sql/share/korean/errmsg.txt:
        Changed ER_UNKNOWN_STMT_HANDLER format string
      sql/share/norwegian-ny/errmsg.txt:
        Changed ER_UNKNOWN_STMT_HANDLER format string
      sql/share/norwegian/errmsg.txt:
        Changed ER_UNKNOWN_STMT_HANDLER format string
      sql/share/polish/errmsg.txt:
        Changed ER_UNKNOWN_STMT_HANDLER format string
      sql/share/portuguese/errmsg.txt:
        Changed ER_UNKNOWN_STMT_HANDLER format string
      sql/share/romanian/errmsg.txt:
        Changed ER_UNKNOWN_STMT_HANDLER format string
      sql/share/russian/errmsg.txt:
        Changed ER_UNKNOWN_STMT_HANDLER format string
      sql/share/slovak/errmsg.txt:
        Changed ER_UNKNOWN_STMT_HANDLER format string
      sql/share/spanish/errmsg.txt:
        Changed ER_UNKNOWN_STMT_HANDLER format string
      sql/share/swedish/errmsg.txt:
        Changed ER_UNKNOWN_STMT_HANDLER format string
      sql/share/ukrainian/errmsg.txt:
        Changed ER_UNKNOWN_STMT_HANDLER format string
      sql/sql_class.h:
        SQL Prepared statements now can't be used by binary protocol commands
      sql/sql_lex.h:
        Added support for PREPARE stmt1 FROM @var syntax.
      sql/sql_parse.cc:
        Added support for PREPARE stmt1 FROM @var syntax.
      sql/sql_prepare.cc:
        Code cleanup
      sql/sql_yacc.yy:
        Added support for PREPARE stmt1 FROM @var syntax.
      e7710af7
  21. 19 May, 2004 1 commit
    • unknown's avatar
      Fixed BUG#3709: SELECT INTO 1 FROM DUAL not parsed as expected · de2c3523
      unknown authored
      Made the combination of INTO and FROM DUAL work, e.g.
      SELECT 1 INTO @x FROM DUAL.
      As a consequence, DUAL is made a reserved word. It would work to not have
      it reserved, but it was deemed to be confusing as a user defined table by
      the same name then must be qualified with a db (schema).
      
      
      sql/sql_yacc.yy:
        Made the combination of INTO and FROM DUAL work, e.g.
        SELECT 1 INTO @x FROM DUAL.
        As a consequence, DUAL is made a reserved word. It would work to not have
        it reserved, but it was deemed to be confusing as a user defined table by
        the same name then must be qualified with a db (schema).
      de2c3523
  22. 14 May, 2004 1 commit
  23. 11 May, 2004 2 commits
    • unknown's avatar
      Portability fixes · 47890151
      unknown authored
      scripts/mysql_install_db.sh:
        Portability fix (! is not portable)
      sql/item_func.cc:
        Use my_strtoll10() instead of strtoull()
      sql/repl_failsafe.cc:
        Use my_strtoll10() instead of strtoull()
      sql/sql_analyse.cc:
        Use my_strtoll10() instead of strtoull()
      sql/sql_yacc.yy:
        Use my_strtoll10() instead of strtoull()
      strings/my_strtoll10.c:
        Fix compiler warnings
      47890151
    • unknown's avatar
      Don't automaticly generate a new key for a foreign key constraint if there is already a usable key. · d3fcd8d4
      unknown authored
      Prefer not automatic keys before automatic keys. If there is two conf
      
      
      BitKeeper/etc/ignore:
        added *.d
      include/my_base.h:
        Added flag for automaticly generated key
      mysql-test/r/constraints.result:
        Update tests after bug fix
      mysql-test/r/create.result:
        Update tests after bug fix
      mysql-test/r/innodb.result:
        Added test of automatic creation of foreign keys
      mysql-test/t/innodb.test:
        Added test of automatic creation of foreign keys
      mysql-test/t/key_cache.test:
        Portability fixes (64 BIT os)
      sql/sql_acl.cc:
        Indentation fixes
      sql/sql_class.cc:
        Fix key comparison to handle prefix and optionally key segments in different order.
      sql/sql_class.h:
        Added flag for automaticly generated keys
      sql/sql_parse.cc:
        Added flag for automaticly generated keys
      sql/sql_table.cc:
        Don't automaticly generate a new key for a foreign key constraint if there is already a usable key.
        Prefer not automatic keys before automatic keys. If there is two conflicting automatic keys, prefer the longer one.
      sql/sql_yacc.yy:
        Added flag for automaticly generated keys
      strings/strings-x86.s:
        Portability fix.
      d3fcd8d4
  24. 05 May, 2004 2 commits
    • unknown's avatar
      after merge fixes · 000f76cf
      unknown authored
      client/mysqldump.c:
        Fixed problem with multiple tables (--skip-quote didn't work properly for second table)
      myisam/myisamchk.c:
        after merge fix
      000f76cf
    • unknown's avatar
      caching of queries with isammerge tables forbiden using general way · f6428e8b
      unknown authored
      SQL_SELECT_LIMIT as default will be applied only for SELECT statement if there was not explicit LIMIT clause
      correct table list passed to class constructor of select_update
      
      
      mysql-test/r/subselect.result:
        do not show limit if it is not explicit
      mysql-test/r/union.result:
        test of LIMIT + ORDER
      mysql-test/t/union.test:
        test of LIMIT + ORDER
      sql/ha_isammrg.h:
        caching of queries with isammerge tables forbiden
      sql/sql_cache.cc:
        removed check on isammerge
      sql/sql_lex.cc:
        tag of explicit limit in statement
      sql/sql_lex.h:
        tag of explicit limit in statement
      sql/sql_parse.cc:
        blanks in empty line removed
        no limit by default (SQL_SELECT_LIMIT as default will be applied only for SELECT statement if there was not explicit LIMIT clause)
      sql/sql_union.cc:
        reverted incorrect patch
      sql/sql_update.cc:
        reverted incorrect patch
        correct table list passed to class constructor
      sql/sql_yacc.yy:
        explicit LIMIT marked
      f6428e8b
  25. 30 Apr, 2004 1 commit
  26. 28 Apr, 2004 1 commit
    • unknown's avatar
      Fix for Bug 3481 · 0d07fe42
      unknown authored
        CREATE statement allowed extra unnecessary commas
      
      
      mysql-test/r/alias.result:
        Extra comma removed in CREATE statement
      mysql-test/r/create.result:
        New test for Bug 3481
      mysql-test/r/func_str.result:
        Extra comma removed in CREATE statement
      mysql-test/r/rpl_multi_update.result:
        Extra comma removed in CREATE statement
      mysql-test/t/alias.test:
        Extra comma removed in CREATE statement
      mysql-test/t/create.test:
        New test for bug 3481
      mysql-test/t/func_str.test:
        Extra comma removed in CREATE statement
      mysql-test/t/rpl_multi_update.test:
        Extra comma removed in CREATE statement
      sql/sql_yacc.yy:
        Fix for bug 3481
          No path through the grammar which has no clauses
      BitKeeper/etc/logging_ok:
        Logging to logging@openlogging.org accepted
      0d07fe42
  27. 21 Apr, 2004 1 commit
    • unknown's avatar
      Introduce keys in child tables corresponding to FOREIGN KEYs · c9e15382
      unknown authored
      Remove redundant keys in CREATE TABLE and ALTER TABLE
      
      
      mysql-test/r/constraints.result:
        Remove redundant keys
      mysql-test/r/create.result:
        Remove redundant keys
      mysql-test/r/innodb.result:
        Remove redundant keys
      mysql-test/r/range.result:
        Remove redundant keys
      mysql-test/t/range.test:
        Remove redundant keys
      sql/sql_class.cc:
        Equality comparison of keys (ignoring name)
      sql/sql_class.h:
        Equality comparison of keys (ignoring name)
      sql/sql_table.cc:
        Remove redundant keys
      sql/sql_yacc.yy:
        Introduce keys in child tables corresponding to FOREIGN KEYs
      c9e15382
  28. 15 Apr, 2004 1 commit
    • unknown's avatar
      Added NDB storage engine · b43af929
      unknown authored
      include/my_base.h:
        Added three new errorcodes to be returned by the handler
      sql/Makefile.am:
        Add new files discover.cc, ha_ndbcluster.cc and ha_ndbcluster.h
        Add include path of NDB files
      sql/handler.cc:
        Added variable for keeping track of number of "discovers"
        Added NDB to list of storage engines
        Added calls to NDB for commit, rollback etc.
        Added function ha_discover for discovering a table from handler
      sql/handler.h:
        Added NDB to list of storage engines
        Added vbariable in transaction for keeping a ndb transaction handle
      sql/lex.h:
        Changed AND to AND_SYM and OR to OR_SYM to avoid nameclash
      sql/mysql_priv.h:
        Added prototypes for new functions readfrm, writefrm and create_table_from_handler
      sql/mysqld.cc:
        Added NDB support
        Disable NDB with --skip-ndbcluster
      sql/set_var.cc:
        Add posibilty to show if NDB handler is supported
      sql/ha_ndbcluster.cc:
        Add ifdef for whole file for not compiling anything if NDB sholdn't be included
        Updated timestamp handling to use new vars timestamp_default_now and timestamp_on_update_now
      sql/sql_base.cc:
        If frm file is not found on disk, ask handler if it knows about the table. Then retry the open.
        This new functionality is called "discover" and can be used by any handler.
      sql/sql_class.h:
        Added variable for keeping a NDB connection handle
      sql/sql_table.cc:
        Before trying to create a table, ask handler if a table with that name already exists.
        If user said CREATE TABLE IF NOT EXISTS, disocver the table from handler
      sql/sql_yacc.yy:
        Add NDBCLUSTER_SYM
        Change AND to AND_SYM
        Change OR to OR_SYM
      sql/table.cc:
        Fixe for probelm when NullS is returned from bas_ext of a handler.
      b43af929
  29. 07 Apr, 2004 1 commit
    • unknown's avatar
      Portability fixes · e9447881
      unknown authored
      Fixed problems with group_concat() and HAVING
      Updated crash-me values
      
      
      sql-bench/limits/mysql-4.0.cfg:
        Rename: sql-bench/limits/mysql.cfg -> sql-bench/limits/mysql-4.0.cfg
      include/my_global.h:
        Safety fix
      libmysqld/Makefile.am:
        Portability fix (For AIX 64 bit)
      mysql-test/r/func_gconcat.result:
        More tests
      mysql-test/t/func_gconcat.test:
        More tests
      sql/field.cc:
        Cleanups
      sql/init.cc:
        moved thread_stack_min to right place
      sql/item_sum.cc:
        Fixed problems with group_concat() and HAVING
        Removed some not needed variables
      sql/item_sum.h:
        Fixed problems with group_concat() and HAVING
        Removed some not needed variables
      sql/mysqld.cc:
        Moved thread_stack_min to right place to handle case where we didn't get as much stack space as we asked for
      sql/sql_parse.cc:
        More debugging
      sql/sql_select.cc:
        Cleanup
      sql/sql_yacc.yy:
        Fixed handling of Item_group_concat() in having. (Arguments should not be handled as refs)
      e9447881
  30. 06 Apr, 2004 1 commit
    • unknown's avatar
      Previous patch was wrong :( · e7a85e36
      unknown authored
      Here is 2nd version.
      'reduce/reduce conflicts' issue is fixed
      
      
      sql/sql_yacc.yy:
        'reduce/reduce conflicts' issue is fixed
      e7a85e36
  31. 05 Apr, 2004 2 commits
    • unknown's avatar
      Many files: · ef8a5401
      unknown authored
        SQL Syntax for Prepared Statements (WL#1622)
      ps.test, ps.result:
        new file
      
      
      sql/item.cc:
        SQL Syntax for Prepared Statements (WL#1622)
      sql/item.h:
        SQL Syntax for Prepared Statements (WL#1622)
      sql/lex.h:
        SQL Syntax for Prepared Statements (WL#1622)
      sql/mysql_priv.h:
        SQL Syntax for Prepared Statements (WL#1622)
      sql/mysqld.cc:
        SQL Syntax for Prepared Statements (WL#1622)
      sql/sql_class.cc:
        SQL Syntax for Prepared Statements (WL#1622)
      sql/sql_class.h:
        SQL Syntax for Prepared Statements (WL#1622)
      sql/sql_lex.h:
        SQL Syntax for Prepared Statements (WL#1622)
      sql/sql_parse.cc:
        SQL Syntax for Prepared Statements (WL#1622)
      sql/sql_prepare.cc:
        SQL Syntax for Prepared Statements (WL#1622)
      sql/sql_yacc.yy:
        SQL Syntax for Prepared Statements (WL#1622)
      ef8a5401
    • unknown's avatar
      WL1368: SHOW GRANTS FOR CURRENT USER · 8c06c8c0
      unknown authored
        'SHOW GRANTS' syntax is added 
        'SHOW GRANTS FOR CURRENT_USER' syntax is added
        'SHOW GRANTS FOR CURRENT_USER()' syntax is added
       CURRENT_USER without parens in expressions(SELECT CURRENT_USER;) 
      
      
      mysql-test/r/grant2.result:
        WL1368: SHOW GRANTS FOR CURRENT USER
      mysql-test/r/grant_cache.result:
        WL1368: SHOW GRANTS FOR CURRENT USER
      mysql-test/t/grant2.test:
        WL1368: SHOW GRANTS FOR CURRENT USER
      mysql-test/t/grant_cache.test:
        WL1368: SHOW GRANTS FOR CURRENT USER
      sql/lex.h:
        WL1368: SHOW GRANTS FOR CURRENT USER
      sql/sql_yacc.yy:
        WL1368: SHOW GRANTS FOR CURRENT USER
      8c06c8c0