An error occurred fetching the project authors.
  1. 22 Oct, 2004 1 commit
  2. 21 Oct, 2004 1 commit
    • unknown's avatar
      A fix and test case for bug#6059 "mysql_stmt_field_count returns · 506f648b
      unknown authored
      positive numbers when no resultset is available": when sending
      result set metadata we need to use virtual select_result::send_fields, 
      and not address protocol directly, because select_result descendents may 
      intercept result set (it's the case for example for SELECT INTO OUTFILE).
      
      
      sql/sql_class.h:
        A fix for bug#6059 "mysql_stmt_field_count returns positive numbers 
        when no resultset is available": introducing select_result::field_count()
        method to report actual number of fields in a result set, if any result
        set is sent to client.
      sql/sql_prepare.cc:
        A fix for bug#6059 "mysql_stmt_field_count returns 
        positive numbers when no resultset is available": when sending
        result set metadata we need to use virtual select_result::send_fields, 
        and not address protocol directly, because select_result descendents may 
        intercept result set (it's the case for example for SELECT INTO OUTFILE).
        Now we need to always have lex->result set if we're in prepared statements.
      tests/client_test.c:
        A test case for Bug#6059 "mysql_stmt_field_count returns positive 
        numbers when no resultset is available"
      506f648b
  3. 20 Oct, 2004 1 commit
    • unknown's avatar
      A fix and test case for bug#6058 "Prepared statements return '0000-00-00' · 8fe8912f
      unknown authored
      (date) as empty  string": preserve time type (date, time, or datetime) for
      zero dates, times, and datetimes.
      
      
      libmysql/libmysql.c:
        A fix for bug#6058 "Prepared statements return '0000-00-00' (date) as empty
         string": preserve time type (date, time, or datetime) for zero 
        dates, times, and datetimes.
      tests/client_test.c:
        A test case for Bug#6058, the existing tests required some adjustments too.
      8fe8912f
  4. 19 Oct, 2004 1 commit
    • unknown's avatar
      Review of all code pushed since last review · 4736d0fe
      unknown authored
      Simple optimzations and cleanups
      Removed compiler warnings and fixed portability issues
      Added client functions 'mysql_embedded()' to allow client to check if we are using embedded server
      Fixes for purify
      
      
      client/mysqlimport.c:
        Remove not used variable
      client/mysqltest.c:
        Remove usage of MAXPATHLEN (all MySQL code uses FN_REFLEN)
        Simplified code
        Remove usage of sprintf("%llu") as this is not portable
      include/mysql.h:
        Added mysql_embedded() to be able to easily check if we are using the embedded server
      innobase/srv/srv0start.c:
        Don't use memcmp() when using purify (to avoid false warnings)
      libmysql/libmysql.c:
        Added mysql_embedded() to be able to easily check if we are using the embedded server
      libmysql/libmysql.def:
        Added mysql_embedded() to be able to easily check if we are using the embedded server
      myisam/myisam_ftdump.c:
        Remove compiler warning
      myisam/myisamchk.c:
        Remove compiler warning
      myisam/rt_test.c:
        #ifdef not used code
      mysys/hash.c:
        Remove compiler warning (from last push)
      mysys/my_gethwaddr.c:
        Remove compiler warning
      ndb/src/ndbapi/ndberror.c:
        #ifdef not used code
      regex/regcomp.c:
        Remove not used code
      regex/regcomp.ih:
        Remove not used code (to remove compiler warnings)
      sql-common/client.c:
        Remove compiler warnings
      sql/field.cc:
        Simple optimization
      sql/ha_innodb.cc:
        Rename mysql_embedded -> mysqld_embedded
      sql/item.cc:
        Fix comments
        Move variables first on block
        Remove else after return
        Simple optimizations
        (no logic changes)
      sql/item_cmpfunc.cc:
        Added comment
      sql/mysql_priv.h:
        Rename mysql_embedded -> mysqld_embedded
      sql/mysqld.cc:
        Rename mysql_embedded -> mysqld_embedded
      sql/sql_acl.cc:
        Added comments
        simple optimization
        Fixed 'very unlikely' bug when doing REVOKE ALL PRIVILEGES
      sql/sql_select.cc:
        More comments
        Simple optimization
      sql/sql_show.cc:
        Simple changes to make similar code similar
        More comments
      sql/sql_string.cc:
        Trivial optimization and better code layout
      strings/Makefile.am:
        Change xml.c to use bcmp to avoid warnings from purify
      strings/xml.c:
        Change xml.c to use bcmp to avoid warnings from purify
      tests/client_test.c:
        Remove usage of MAXPATHLEN (all MySQL code uses FN_REFLEN)
      4736d0fe
  5. 15 Oct, 2004 1 commit
    • unknown's avatar
      A fix and test case for Bug#6049 "Loss of sign when using prepared · 9aefc403
      unknown authored
      statements and negative time/date values". 
      The bug was in wrong sprintf format used in the client library.
      The fix moves TIME -> string conversion functions to sql-common and
      utilized them in the client library.
      
      
      include/my_time.h:
        Declarations for new functions shared between the client and server.
      libmysql/libmysql.c:
        Fix for Bug#6049 "Loss of sign when using prepared statements and negative
        time/date values": use the same function as the server to convert
        date/time/datetime values to strings.
      sql-common/my_time.c:
        Implementation of my_{time,datetime,date,TIME}_to_str: it's
        needed by the client library, so it should be shared.
      sql/field.cc:
        Don't create String object if it's not needed.
      sql/item.cc:
        Don't create String object if it's not needed: TIME_to_string was
        moved to my_TIME_to_str, with different arguments.
      sql/item_timefunc.cc:
        Don't create String object if it's not needed.
      sql/mysql_priv.h:
        TIME_to_string and MAX_DATE_REP_LENGTH moved to the client library.
        MAX_DATE_REP_LENGTH was renamed to MAX_DATE_STRING_REP_LENGTH to not 
        conflict with the same name in libmysql.c
      sql/protocol.cc:
        Don't create String object if it's not needed.
      sql/time.cc:
        Implementation of my_{time,date,datetime,TIME}_to_str moved to my_time.c
        shared between the client and the server.
      tests/client_test.c:
        A test case for Bug#6049.
      9aefc403
  6. 13 Oct, 2004 1 commit
    • unknown's avatar
      tests/client_test.c: · ba48e6f9
      unknown authored
        Make checks (asserts) performed in client_test.c work in non-debug
        builds.
      
      
      tests/client_test.c:
        Make checks (asserts) performed in client_test.c work in non-debug
        builds: all asserts/DBUG_ASSERTs replaced with if (!(expr)) abort();
      ba48e6f9
  7. 07 Oct, 2004 1 commit
    • unknown's avatar
      A fix for Bug#5748 "Prepared statement with BETWEEN and bigint values · 8fa6f37a
      unknown authored
      crashes mysqld": implementation for a generic item tree modifications
      registry. Every item tree modification which should be rolled back for
      subsequent execution of a prepared statement or stored procedure should
      be saved in the registry. All such modifications are rolled back at once
      during cleanup stage of PS.
      Actual fix for the bug just adds a call to register modifications to
      convert_constant_item.
      Post review fixes implemented.
      
      
      mysql-test/r/ps.result:
        A fix for bug#5748, test results fixed.
      mysql-test/t/ps.test:
        A test case for Bug#5748 "Prepared statement with BETWEEN and bigint 
        values crashes mysqld"
      sql/item.cc:
        Fix for Bug#5748 "Prepared statement with BETWEEN and bigint values
        crashes mysqld":
        First step in removing up item-specific cleanups: now all such
        tree modifications should be done using the genericm mechanism implemented
        in this changeset.
      sql/item.h:
        Fix for Bug#5748 "Prepared statement with BETWEEN and bigint values
        crashes mysqld": no need for an item-specific change record any more.
      sql/item_cmpfunc.cc:
        A fix for Bug#5748 "Prepared statement with BETWEEN and bigint 
        values crashes mysqld": register item tree transformation performed by
        convert_constant_item.
      sql/sql_class.cc:
        Implementation for item tree transformations registry.
      sql/sql_class.h:
        Declarations, necessary for the tree transformations registry.
      sql/sql_parse.cc:
        Assert that the item tree transformations registry is not used for 
        conventional execution.
      sql/sql_prepare.cc:
        Use of the item tree modifications registry in prepared statements:
        rollback all modifications in the end of statement prepare and execute.
        Also we now always set thd->current_arena to be able to determine that
        this is an execution of prepared statement inside the registry code.
      tests/client_test.c:
        A typo fixed.
      8fa6f37a
  8. 28 Sep, 2004 1 commit
    • unknown's avatar
      client_test.test: · 656bcff6
      unknown authored
        Run client_test as a testcase
        new file
      mysql-test-run.sh:
        More clearly report failure if --force, also exit 1
      client_test.c:
        Use MAXPATHLEN in test_frm_bug()
        Renable test cases disabled for running from mysql-test-run
      mysqltest.c:
        Don't check errno from popen, may not be set
      
      
      client/mysqltest.c:
        Don't check errno from popen, may not be set
      tests/client_test.c:
        Use MAXPATHLEN in test_frm_bug()
        Renable test cases disabled for running from mysql-test-run
      mysql-test/mysql-test-run.sh:
        More clearly report failure if --force, also exit 1
      mysql-test/t/client_test.test:
        Run client_test as a testcase
      656bcff6
  9. 25 Sep, 2004 1 commit
    • unknown's avatar
      client_test.c: · c14ec245
      unknown authored
        Return exit(1) instead of exit(0) on failure.
        Allow longer path names using MAXPATHLEN.
        Added option --testcase that skips some failing tests.
        Replaced 'return' with exit(1) in test_frm_bug().
      mysqltest.c:
        Let --exec fail if command fails
      
      
      client/mysqltest.c:
        Let --exec fail if command fails
      tests/client_test.c:
        Return exit(1) instead of exit(0) on failure.
        Allow longer path names using MAXPATHLEN.
        Added option --testcase that skips some failing tests.
        Replaced 'return' with exit(1) in test_frm_bug().
      c14ec245
  10. 23 Sep, 2004 1 commit
  11. 22 Sep, 2004 1 commit
    • unknown's avatar
      A fix and test case for Bug#5315 "mysql_change_user() doesn't free · ccf52b4f
      unknown authored
      prepared statements."
      
      
      include/hash.h:
        New declaration for hash_reset() function. The old version was not used.
      libmysql/client_settings.h:
        Declaration for mysql_detach_stmt_list().
      libmysql/libmysql.c:
        Fix for bug#5315 "mysql_change_user() doesn't free prepared statements":
        add call to mysql_detach_stmt_list(prepared statements) to
        mysql_change_user(): all statements are freed by server, so client
        counterparts need to be marked as not usable.
      mysys/hash.c:
        Fix for bug#5315 "mysql_change_user() doesn't free prepared statements":
        implementation of hash_reset(), which frees all hash elements
        and prepares the hash for reuse.
      sql-common/client.c:
        Fix for bug#5315 "mysql_change_user() doesn't free prepared statements":
        implementation of mysql_detach_stmt_list(): zero connection pointer
        in given statement list, thus marking given statements as not usable.
      sql/sql_class.cc:
        Fix for bug#5315 "mysql_change_user() doesn't free prepared statements":
        reset prepared statements map in THD::change_user().
      sql/sql_class.h:
        Fix for bug#5315 "mysql_change_user() doesn't free prepared statements":
        implementation of Statement_map::reset().
        A little cleanup of ~Statement_map(): first empty names_hash, as st_hash
        has a free function, which will delete statements.
      tests/client_test.c:
        A test case for bug #5315 "mysql_change_user() doesn't free prepared
        statements".
      ccf52b4f
  12. 14 Sep, 2004 2 commits
  13. 09 Sep, 2004 1 commit
    • unknown's avatar
      client_test.c: · 50f9e2f5
      unknown authored
        fix typos noticed while poking around in test program.
      
      
      tests/client_test.c:
        fix typos noticed while poking around in test program.
      50f9e2f5
  14. 08 Sep, 2004 2 commits
    • unknown's avatar
      A fix and test case for Bug#5194 "Bulk Insert Failures with Prepared · d7a23067
      unknown authored
      Statements": 
      - fix a couple of net->buff overruns in libmysql,
      - check in the server that statement parameter count is less than
        65535 (maximum value supported by prepared statements protocol).
       
      
      
      libmysql/libmysql.c:
        Bug#5194 "Bulk Insert Failures with Prepared Statements":
        - clean up my_realloc_str()
        - ensure that net buffer has space when storing null bits and
          parameter typecodes.
      sql/net_serv.cc:
        - set net->last_errno if packet is too big, even on client
          (Why was it ifdefed before?)
      sql/sql_prepare.cc:
        Bug#5194 "Bulk Insert Failures with Prepared Statements":
        - if placeholder count is bigger than 65535, give error.
          We have only 2 bytes reserved for transferring placeholder count
          in 4.1 protocol.
        - can't add a proper error code and message in 4.1 because of
          possible merge difficulties."
      tests/client_test.c:
        A test case for Bug#5194 "Bulk Insert Failures with Prepared 
        Statements".
      d7a23067
    • unknown's avatar
      A fix and test case for bug#5399 "Wrong statement executed by MySQL · e5af92b0
      unknown authored
       server" (use my_charset_bin for stmt id hash).
      
      
      sql/sql_class.cc:
        Fix for bug#5399 "Wrong statement executed by MySQL server": 
        we hash stmt ids bytewise, need to use binary collation for it.
      tests/client_test.c:
        Test case for bug#5399 "Wrong statement executed by MySQL server":
        create number of statements returning different results, execute them
        one by one.
      e5af92b0
  15. 02 Sep, 2004 2 commits
    • unknown's avatar
      A fix and test case for Bug#4231 "Wrong result with MYSQL_TIME · 0c58737a
      unknown authored
      parameters": when unpacking binary time recieved from client, handle
      the case when length is 0: it means all MYSQL_TIME members are zero.
      
      
      include/my_time.h:
        Declaration for set_zero_time: a tiny piece of code, which I
        see no reason to not reuse.
      libmysql/libmysql.c:
        set_zero_time implementation is now shared between client and
        server.
      sql-common/my_time.c:
        set_zero_time implementation added.
      sql/sql_prepare.cc:
        A fix for Bug#4231 "Wrong result with MYSQL_TIME parameters": 
        when unpacking binary time recieved from client, handle the
        case when length is 0: it means all MYSQL_TIME members are zero.
      tests/client_test.c:
        Test case for bug#4231 "Wrong result with MYSQL_TIME parameters"
      0c58737a
    • unknown's avatar
      After merge fixes · 762bee96
      unknown authored
      mysql-test/mysql-test-run.sh:
        Export MASTER_MYSOCK (used in some tests)
      mysql-test/t/alter_table.test:
        Use MASTER_MYSOCK instead of master.sock
      762bee96
  16. 01 Sep, 2004 1 commit
  17. 26 Aug, 2004 2 commits
    • unknown's avatar
      A short fix and test case for Bug#5126 · ce91cbb8
      unknown authored
      "Mediumint and PS problem": just treat mediumint as long.
      
      
      libmysql/libmysql.c:
        A short fix for bug #5126 "Mediumint and PS problem": just
        treat mediumint as long, as it's sent just like long.
      tests/client_test.c:
        A test case for bug#5126
      ce91cbb8
    • unknown's avatar
      after merge · 82257f94
      unknown authored
      sql/item_row.cc:
        ds20 compat fix
      82257f94
  18. 05 Aug, 2004 1 commit
    • unknown's avatar
      Cleanup in libmysql. · f47a0b9f
      unknown authored
      libmysql/libmysql.c:
        Cleanup of conversion part of libmysql (prepared statements protocol):
        - now we have basic support for any conversion sequence:
          when we don't implement direct conversion of given value to requested 
          buffer type (i.e. time -> double, or the other way around) we
          first convert i.e. time -> string and then call string -> double 
          conversion.
          param->offset is now handled only in one place.
        - conversion functions renamed from send_data_{string, long, double}
          to fetch_{string,long,double}_with_conversion. Don't be confused
          with strange diff for send_data_long: I had to move send_data_string
          before all other sends as it's used inside thesm. (Shall we have
          a forward declaration instead?-)
        - a little cleanup in read_binary_{date,time,datetime} - now type of
          date value is set inside these functions, so we can be sure
          that we always return fully filled MYSQL_TIME structure to the user
        - float -> string conversion is fixed to honor param->precision. 
          This is a step forward in fixing bug#4172
      tests/client_test.c:
        test fix: now libmysql always sets MYSQL_TIME::time_type field.
        We need to set these fields in the test as later _in values are compared
        with canonical by plain memcmp.
      f47a0b9f
  19. 25 Jun, 2004 1 commit
  20. 24 Jun, 2004 2 commits
    • unknown's avatar
      - fixed test_frm_bug test to work with increased number of columns in · 57ee2443
      unknown authored
      result of SHOW TABLE STATUS
      
      
      BitKeeper/etc/ignore:
        added libmysqld/my_time.c
      57ee2443
    • 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
  21. 22 Jun, 2004 2 commits
  22. 16 Jun, 2004 1 commit
  23. 11 Jun, 2004 1 commit
  24. 08 Jun, 2004 1 commit
    • unknown's avatar
      Proposed fix for Bug#4026 "Microseconds part of TIME/DATETIME types · 27eda712
      unknown authored
      is broken (prepared statements)": fixed date handling in many places 
      of prepared statements code.
      
      
      libmysql/libmysql.c:
        Fix for Bug#4026:
        - now buffer_length is defined for any buffer type. Network buffer 
          preallocation cleaned up.
        - added constants for maximum buffer sizes necessary for MYSQL_TYPE_DATE,
          MYSQL_TYPE_TIME, MYSQL_TYPE_DATETIME types.
        - TIME/DATETIME packing/unpacking functions fixed 
        - now result set metadata is always updated from fields sent to COM_EXECUTE.
          This is necessary to make 'SELECT ?' queries work without conversions.
      sql/item.cc:
        - added implementatoin of Item_param::get_date
      sql/item.h:
        - added enum_field_types Item_param::param_type. First step for proper
          handling of placeholders.
        - added get_date() implementation to prevent date -> string -> date 
          conversions when MYSQL_TYPE_DATE/DATETIME parameter is used in temporal 
          context.
      sql/protocol.cc:
        Fix for Bug#4026:
        - PACKET_BUFFET_EXTRA_ALLOC -> PACKET_BUFFER_EXTRA_ALLOC.
          The define itself was moved to .cc as it's used only in protocol.cc
        - fixed Protocol_prep::store_time() call.
      sql/protocol.h:
        - PACKET_BUFFER_EXTRA_ALLOC moved to protocol.cc
      sql/sql_prepare.cc:
        Fix for Bug#4026:
        - MYSQL_TYPE_TIME/DATETIME handling fixed.
        - added initialization for Item_param::param_type in 
          setup_one_conversion_function
      tests/client_test.c:
        Test case for Bug#4026
      27eda712
  25. 05 Jun, 2004 1 commit
    • unknown's avatar
      mysql_stmt_field_count() · 5cc410bb
      unknown authored
      include/mysql.h:
        mysql_stmt_field_count() declaration
      libmysql/libmysql.c:
        added mysql_stmt_field_count(): 
        we need this function to ease use of mysql_stmt_result_metadata:
        if mysql_stmt_field_count() != 0 mysql_stmt_result_metadata fails
        only if OOM.
      libmysql/libmysql.def:
        declaration for mysql_stmt_field_count()
      5cc410bb
  26. 04 Jun, 2004 3 commits
  27. 31 May, 2004 1 commit
    • unknown's avatar
      Fix for Bug#3796 "Prepared statement, select concat(<parameter>,<column>), wrong · 7f130332
      unknown authored
      result": new Item_param member for use in val_str()
      
      
      sql/item.cc:
        Fix for Bug#3796:
        - return str_value_ptr from val_str to prevent modifications of parameter 
        value.
      sql/item.h:
        Fix for bug#3796:
        - Item::val_str() method semantics documented
        - new member of Item_param
      tests/client_test.c:
        Test case for bug #3796 added. A few compile-time warnings removed.
      7f130332
  28. 24 May, 2004 1 commit
    • unknown's avatar
      Support for character set conversion in binary protocol: another go · 093d6292
      unknown authored
      after Monty's review.
      - Item_param was rewritten.
      - it turns out that we can't convert string data to character set of
        connection on the fly, because they first should be written to the binary
        log.
        To support efficient conversion we need to rewrite prepared statements
        binlogging code first.
      
      
      include/my_global.h:
        Macro swap(a, b, c) was renamed to resolve name conflict with
        String::swap() method.
      include/my_sys.h:
        Added declaration of escape_string_for_mysql()
      include/mysql_com.h:
        Removed and moved back: a macro which is visible to libmysql user but
        has sence only in prepared statement protocol implementation.
      isam/_search.c:
        swap -> swap_variables
      isam/test2.c:
        swap -> swap_variables
      libmysql/libmysql.c:
        - sub_escape_string moved to mysys/charset.c to be visible in sql/
        - few cleanups
      myisam/mi_test2.c:
        swap -> swap_variables
      mysys/charset.c:
        sub_escape_string was moved from libmysql.c to be able to use it in sql/
        code.
      mysys/my_chsize.c:
        rename: swap -> swap_variables
      mysys/my_compress.c:
        swap -> swap_variables
      mysys/my_handler.c:
        swap -> swap_variables
      sql/field.cc:
        Field::store_time refactored to use TIME_to_string function from time.cc
      sql/item.cc:
        New implementation of Item_param class:
        added support for character sets conversion.
      sql/item.h:
        Item_param:
        - 'state' member introduced instead of many boolean variables.
        - put ltime, int_value and real_value into union to save space.
        - remove unimplemented members
        - set_value renamed to set_str
      sql/item_timefunc.cc:
        Refactored to use functions from time.cc
      sql/lock.cc:
        rename: swap -> swap_variables
      sql/mysql_priv.h:
        - added declarations for TIME_to_ulonglong_*, TIME_to_string functions
        - const specifiers for make_date, make_time, make_datetime arguments
      sql/opt_range.cc:
        rename: swap -> swap_variables
      sql/protocol.cc:
        - added character set conversion support to binary protocol.
        - Protocol::convert changed to point at shared buffer in THD.
          This lets us use one convert buffer for binary and simple protocol.
          The same buffer is used for client->server conversions in prepared
          statements code.
        - string conversion code refactored to Protocol::store_string_aux function.
        - few more comments
      sql/protocol.h:
        - Protocol::convert now points at THD::convert_buffer: we want to share one
          buffer between all protocol implementations.
      sql/sql_class.cc:
        - implementation of THD::convert_string using THD::convert_buffer
          (conversion of strings allocated in the system heap).
      sql/sql_class.h:
        - THD::convert_buffer is shared between THD and network Protocols and
          used for character set conversion of strings.
        - new function to convert String object from one charset to another using
          THD::convert_buffer
      sql/sql_insert.cc:
        A little fix in a comment.
      sql/sql_parse.cc:
        Shrink convert buffer in the end of each statement.
      sql/sql_prepare.cc:
          Many changes:
        - static specifier for set_param_* family of functions.
        - FIELD_TYPE -> MYSQL_TYPE
        - added set_param_binary as handler for BLOB types.
        - added character set support
        - added support for param typecode in mysql_stmt_get_longdata
          (mysql_stmt_send_long_data handler)
        - changes in Item_param deployed
        - few cleanups
      sql/sql_select.cc:
        rename: swap -> swap_variables
      sql/sql_string.cc:
        - String::append rewritten to support character set conversion for
        single-byte encodings.
        - added String::swap method to efficiently exchange two string objects.
      sql/sql_string.h:
        Declraration for String::swap().
      sql/time.cc:
        - function TIME_to_string to convert TIME to String in default MySQL format
        - family of functions TIME_to_ulonglong_*
      tests/client_test.c:
        Test for support for character set conversions in prepared statements
        (binary and text data).
      093d6292
  29. 20 May, 2004 1 commit
  30. 19 May, 2004 1 commit
    • unknown's avatar
      Portability fixes · a41883fa
      unknown authored
      Fixed wrong number of warnings/duplicates for machines with high-byte-first
      
      
      client/mysql.cc:
        Remove not used variables
      client/mysqltest.c:
        Remove double ;
      myisam/ft_nlq_search.c:
        Fix valgrind error (not fatal)
      myisam/rt_test.c:
        Portability fix
      mysql-test/r/rpl_trunc_binlog.result:
        Portability fix
      mysql-test/t/rpl_trunc_binlog.test:
        Portability fix
        (Column 23 was different on openbsd)
      sql/sql_insert.cc:
        Fixed wrong number of warnings/duplicates for machines with high-byte-first
      strings/ctype-big5.c:
        Portability fix
      strings/ctype-gbk.c:
        Portability fix
      strings/ctype-mb.c:
        Portability fix
      strings/ctype-uca.c:
        Portability fix
      tests/client_test.c:
        Portability fixes
      a41883fa
  31. 15 May, 2004 2 commits
    • unknown's avatar
      Fixes for #3371, #3372, #3374, #3375, #3376 · 05cd698f
      unknown authored
      libmysql/libmysql.c:
        code to fix #3772
        counting of field->max_length moved to mysql_store_stmt_result so
        it will work in libmysqld also
      libmysqld/lib_sql.cc:
        to fix #3771 and #3775
        stmt->affected_rows specifying added
        code getting default values changed so it will add terminating /0 to
        values
      sql/sql_parse.cc:
        to fix #3773
        silly mistake here :\
      sql/sql_prepare.cc:
        to fix #3774 and #3776
        special function for datetime values in embedded server added
        unsigned flag now specified for values in embedded server
      tests/client_test.c:
        this test fails if privilege-checking pars are disabled
        (it's the default for libmysqld)
      05cd698f
    • unknown's avatar
      Better fix for bug #3749 (bug in deleting automatic generated foreign keys) · c9667f11
      unknown authored
      mysql-test/r/func_encrypt.result:
        Update tests (left after sanjas last push)
      mysql-test/r/innodb.result:
        Added test for bug #3749 (bug in deleting automatic generated foreign keys)
      mysql-test/t/innodb.test:
        Added test for bug #3749 (bug in deleting automatic generated foreign keys)
      sql/sql_class.cc:
        Updated comment
      tests/client_test.c:
        Added missing mysql_stmt_close()
      c9667f11