1. 16 Mar, 2004 20 commits
  2. 15 Mar, 2004 20 commits
    • unknown's avatar
      Fixed memory overrun in spatial init code · 0952bf2d
      unknown authored
      
      sql/spatial.cc:
        Fixed memory overrun
      sql/spatial.h:
        Fixed memory overrun
      0952bf2d
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-4.1 · 0dbf737a
      unknown authored
      into mysql.com:/home/my/mysql-4.1
      
      
      sql/sql_table.cc:
        Auto merged
      0dbf737a
    • unknown's avatar
    • unknown's avatar
      Merge bk-internal:/home/bk/mysql-4.1/ · 543e84c5
      unknown authored
      into serg.mylan:/usr/home/serg/Abk/mysql-4.1
      
      
      543e84c5
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-4.1 · a6f89625
      unknown authored
      into mysql.com:/home/my/mysql-4.1
      
      
      a6f89625
    • unknown's avatar
      Intermediate commit of client library (cleanups + fixes of 3 items from · 321422c8
      unknown authored
      flaws list)
      TODO: 
       * verify that no sequence of API calls produces SIGSEGV.
       That is, verify that mysql_stmt_init  -> mysql_stmt_fetch is OK,
       or mysql_stmt_prepare -> mysql_stmt_fetch_column is OK and sets
       meaningful error.
       * remove alloc_stmt_fields call
       * revise stmt->state codes and statement states.
       * there are other items in prepared statements 'to fix' document.
      
      Done:
       - cleanups and comments
       - revision of prepared statement error codes.
       - mysql_stmt_prepare is now can always be called (that is, you can reprepare
         a statement)
       - new implementation of mysql_stmt_close and fetch cancellation
      
      
      include/errmsg.h:
        - CR_NOT_ALL_PARAMS_BOUND - this error code wasn't used until now. 
          Apparently it was added in advance, but then interface of
          mysql_stmt_bind_param changed. Now it's not possible to bind only some
          parameters - either all or none of parameters are bound.
          This error code  is renamed to CR_PARAMS_NOT_BOUND
        - CR_FETCH_CANCELLED - error code set on server side when fetch from 
          MYSQL_RES or MYSQL_STMT (in blocking mode) was cancelled because of
          intercepting call to mysql_stmt_close
        - CR_NO_DATA - this is proposed error code to return from 
          mysql_stmt_fetch_column if no row was fetched (by any type of fetch).
          We always can fall back to CR_COMMANDS_OUT_OF_SYNC though.
          Need reviewer's opinion on this one.
      include/mysql.h:
        - added unbuffered_fetch_owner member to MYSQL to point to MYSQL_RES 
          or MYSQL_STMT which is used to fetch result at the moment.
          This is to be able to set CR_FETCH_CANCELLED error without fantoms.
        - added unbuffered_fetch_cancelled boolean variable to MYSQL_STMT and 
          MYSQL_RES structures
        - rename PREP_STMT_STATE -> enum enum_mysql_stmt_state
        - members of MYSQL_STMT ordered by size.
        - removed members of MYSQL_STMT: current_row, result_buffered,
          last_fetched_column, last_fetched_buffer, query
        - renamed members of MYSQL_STMT: param_buffers -> bind_param_done, 
          res_buffers -> bind_result_done
        - now mysql_stmt_fetch calls stmt->read_row_func to read row either from 
          buffer or from network.
      include/sql_common.h:
        declaration for flush_use_result
      libmysql/client_settings.h:
        stmt_close declaration removed
      libmysql/errmsg.c:
        Error messages for changed and added error codes.
      libmysql/libmysql.c:
        Many changes:
        - some unused variables removed
        - cleanups
        - better error reporting
        - some function calls commented
        - alloc_stmt_fields is now called right after execute, to not read
          mysql->fields of some other statement
        - new implementation of mysql_stmt_fetch - this is also with cursor
          fetch in mind (to implement cursor fetch I'll just need to write
          special read_row function for it, so this change will be local)
        - implementation of fetch cancellation, including complete rewrite of
          mysql_stmt_close
        - now mysql_stmt_free_result doesn't free results of other statements.
      sql-common/client.c:
        - implementation of flush_use_result
        - implementation of fetch cancellation
        - changed behaviour of mysql_close in regard to mysql_stmt_close - now 
          mysql_close just set stmt->mysql to 0
      321422c8
    • unknown's avatar
      Small fix · 4c0d9156
      unknown authored
      
      sql/item_strfunc.cc:
        that's the right fix
      4c0d9156
    • unknown's avatar
      Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1 · 9b641be9
      unknown authored
      into sanja.is.com.ua:/home/bell/mysql/bk/work-rand-4.1
      
      
      9b641be9
    • unknown's avatar
      Merge abotchkov@bk-internal.mysql.com:/home/bk/mysql-4.1 · 9eff35de
      unknown authored
      into deer.(none):/home/hf/work/mysql-4.1.clean
      
      
      9eff35de
    • unknown's avatar
      Yet another fix for spatial parts · ffad9aef
      unknown authored
      
      sql/spatial.cc:
        should be one step further
      ffad9aef
    • unknown's avatar
      cleanup · 5caff162
      unknown authored
      5caff162
    • unknown's avatar
      Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1 · 4af3df23
      unknown authored
      into sanja.is.com.ua:/home/bell/mysql/bk/work-rand-4.1
      
      
      sql/item_func.cc:
        Auto merged
      sql/item_func.h:
        Auto merged
      4af3df23
    • unknown's avatar
      Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1 · 278eec69
      unknown authored
      into sanja.is.com.ua:/home/bell/mysql/bk/work-rand-4.1
      
      
      278eec69
    • unknown's avatar
      Fix of compilation failure of latest 4.1 tree: new constants in mysqld.cc · 2e0d5eac
      unknown authored
      exceed unsigned long limit.
      
      
      include/config-win.h:
        implementation of ULL macro for Windows
      include/my_global.h:
        ULL macro defined: we need this macro because ULL qualifier is not defined 
        on systems withoug unsigned long long
      sql/item_func.cc:
        new ULL macro caused conflict with class for user level lock ULL.
        ULL renamed to User_level_lock
      sql/item_func.h:
        ULL -> User_level_lock
      sql/mysql_priv.h:
        merge error fixed: LL defined in my_global.h
      sql/mysqld.cc:
        ULL macro used for long long constants to fix compilation failure on gcc 3.*
      sql/sql_class.h:
        ULL renamed to User_level_lock
      2e0d5eac
    • unknown's avatar
      actions for bug · 1d3b1633
      unknown authored
      #2709 Affected Rows for ON DUPL. KEY undocumented, perheps illogical 
      1. added COPY_INFO::updated to work with it in
         'insert .. on duplicate' instead of COPY_INFO::deleted
      2. added affected rows to output of "info:" in mysqltest.c
      
      
      client/mysqltest.c:
        added "affected rows" to output of "info : "..
      mysql-test/r/insert_update.result:
        added tests for affected rows with insert .. duplicate (bug #2709)
      mysql-test/t/insert_update.test:
        added tests for affected rows with insert .. duplicate (bug #2709)
      sql/sql_class.h:
        added COPY_INFO::updated
      sql/sql_insert.cc:
        get write_record to work with COPY_INFO::updated instead of 
        COPY_INFO::deleted for 'insert ... duplicate' statement
      1d3b1633
    • unknown's avatar
      Fixes for bugs #2274 "mysqld gets SIGSEGV during processing of malformed · ef44fb9a
      unknown authored
      COM_EXECUTE packet" and #2795 "prepare + execute without bind_param crashes
       server" and #2473 "seg fault running tests/client_test.c": 
      - length checking added to packet parser 
      - default impelemntation of Item_param::set_param_func will work in
      case of malformed packet.
      No test cases are possible in our test suite, as there are no tests 
      operating on protocol layer.
      
      
      sql/item.cc:
        Default set_param function implemented: this is to not sigsegv in case
        of malformed packet with no parameters data.
      sql/item.h:
        - Item_param constructor moved to .cc to be able to assign set_param_func.
        - now embedded and ordinary versions of set_param have the same signature.
      sql/mysql_priv.h:
        mysql_stmt_execute now requires packet_length
      sql/sql_parse.cc:
        mysql_stmt_execute now requires packet length.
      sql/sql_prepare.cc:
        - length checking added to all functions working with network packet.
        - set_param_func's in embedded and ordinary version now have the same 
        signature
      ef44fb9a
    • unknown's avatar
      Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1 · 90b4d81f
      unknown authored
      into sanja.is.com.ua:/home/bell/mysql/bk/work-rand-4.1
      
      
      90b4d81f
    • unknown's avatar
      5148b005
    • unknown's avatar
      Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1 · 955cf298
      unknown authored
      into sanja.is.com.ua:/home/bell/mysql/bk/work-rand-4.1
      
      
      955cf298
    • unknown's avatar
      Fix for bug#2972 Problem the the CONV() function · 60354533
      unknown authored
      60354533