1. 16 Mar, 2004 32 commits
  2. 15 Mar, 2004 8 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 abotchkov@bk-internal.mysql.com:/home/bk/mysql-4.1 · 9eff35de
      unknown authored
      into deer.(none):/home/hf/work/mysql-4.1.clean
      
      
      9eff35de