1. 01 Oct, 2004 21 commits
    • unknown's avatar
      Merge tulin@bk-internal.mysql.com:/home/bk/mysql-4.1 · 966b8c9d
      unknown authored
      into poseidon.ndb.mysql.com:/home/tomas/mysql-4.1
      
      
      sql/ha_ndbcluster.cc:
        Auto merged
      966b8c9d
    • unknown's avatar
      ha_innodb.cc: · f9b16928
      unknown authored
        A partial bugfix to a multibyte charset / column prefix index bug: my_charpos() does not handle right some cases, we try to mask the bug for ASCII chars < 128 in the UTF-8 charset
      
      
      sql/ha_innodb.cc:
        A partial bugfix to a multibyte charset / column prefix index bug: my_charpos() does not handle right some cases, we try to mask the bug for ASCII chars < 128 in the UTF-8 charset
      f9b16928
    • unknown's avatar
      fsp0fsp.h: · f9ebdd03
      unknown authored
        Remove accidentally pushed fsp debug code
      
      
      innobase/include/fsp0fsp.h:
        Remove accidentally pushed fsp debug code
      f9ebdd03
    • unknown's avatar
      Merge heikki@build.mysql.com:/home/bk/mysql-4.1 · 790e0729
      unknown authored
      into hundin.mysql.fi:/home/heikki/mysql-4.1
      
      
      sql/ha_innodb.cc:
        Auto merged
      790e0729
    • unknown's avatar
      Many files: · 8949b3e2
      unknown authored
        Fix bug introduced by the prefix key + multibyte charsets patch today
      
      
      sql/ha_innodb.cc:
        Fix bug introduced by the prefix key + multibyte charsets patch today
      innobase/include/data0type.h:
        Fix bug introduced by the prefix key + multibyte charsets patch today
      innobase/include/fsp0fsp.h:
        Fix bug introduced by the prefix key + multibyte charsets patch today
      innobase/data/data0type.c:
        Fix bug introduced by the prefix key + multibyte charsets patch today
      innobase/row/row0ins.c:
        Fix bug introduced by the prefix key + multibyte charsets patch today
      innobase/row/row0row.c:
        Fix bug introduced by the prefix key + multibyte charsets patch today
      innobase/row/row0sel.c:
        Fix bug introduced by the prefix key + multibyte charsets patch today
      innobase/row/row0upd.c:
        Fix bug introduced by the prefix key + multibyte charsets patch today
      8949b3e2
    • unknown's avatar
      Merge mysql.com:/home/bk/mysql-4.1 · fffa0b7a
      unknown authored
      into mysql.com:/users/kboortz/daily/work/mysql-4.1-vax
      
      fffa0b7a
    • unknown's avatar
      client_test.test: · 02bb3392
      unknown authored
        Temporarely disabled client_test test
        Use MASTER_MYSOCK to get socket path
      
      
      mysql-test/t/client_test.test:
        Temporarely disabled client_test test
      02bb3392
    • unknown's avatar
      Merge tulin@bk-internal.mysql.com:/home/bk/mysql-4.1 · 327ede3b
      unknown authored
      into poseidon.ndb.mysql.com:/home/tomas/mysql-4.1
      
      
      sql/ha_ndbcluster.cc:
        Auto merged
      sql/ha_ndbcluster.h:
        Auto merged
      327ede3b
    • unknown's avatar
      Fix for bug#5782: Don't choose the plan that accesses table with index_prev if... · b8779267
      unknown authored
      Fix for bug#5782: Don't choose the plan that accesses table with index_prev if the handler doesn't support it (see also ChangeSet@1.2039)
      
      
      b8779267
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-4.1 · 2971cd81
      unknown authored
      into mysql.com:/home/dlenev/src/mysql-4.1-ryan
      
      
      sql/field.cc:
        Auto merged
      sql/field.h:
        Auto merged
      sql/ha_innodb.cc:
        Auto merged
      sql/ha_ndbcluster.cc:
        Auto merged
      sql/sql_base.cc:
        Auto merged
      sql/sql_show.cc:
        Auto merged
      sql/sql_table.cc:
        Auto merged
      2971cd81
    • unknown's avatar
      Support for TIMESTAMP columns holding NULL values. Unlike all other · c2a25521
      unknown authored
      column types TIMESTAMP is NOT NULL by default, so in order to have 
      TIMESTAMP column holding NULL valaues you have to specify NULL as
      one of its attributes (this needed for backward compatibility).
      
      Main changes:
      Replaced TABLE::timestamp_default_now/on_update_now members with
      TABLE::timestamp_auto_set_type flag which is used everywhere
      for determining if we should auto-set value of TIMESTAMP field 
      during this operation or not. We are also use Field_timestamp::set_time()
      instead of handler::update_timestamp() in handlers.
      
      
      mysql-test/r/type_timestamp.result:
        Added test for TIMESTAMP columns which are able to store NULL values.
      mysql-test/t/type_timestamp.test:
        Added test for TIMESTAMP columns which are able to store NULL values.
      sql/field.cc:
        Added support for TIMESTAMP fields holding NULL values.
        We don't need Field_timestamp::set_timestamp_offsets() anymore.
        Instead we need Field_timestamp::get_auto_set_type() function
        which will convert TIMESTAMP auto-set type stored in Field in 
        unireg_check to value from timestamp_auto_set_type_enum.
        (We can't replace this function with additional Field_timestamp member
        and some code in constructor because then we will have troubles
        with Field::new_field() method).
        We should also set field to not null in Field_timestamp::set_time() now.
      sql/field.h:
        Added support for TIMESTAMP fields holding NULL values.
        We don't need Field_timestamp::set_timestamp_offsets() anymore.
        Instead we need Field_timestamp::get_auto_set_type() function,
        which will convert TIMESTAMP auto-set type stored in Field in 
        unireg_check to value from timestamp_auto_set_type_enum.
        We also have to support NULL values in Field_timestamp::get_timestamp()
        function.
      sql/field_conv.cc:
        Added comment clarifying behavior in case of TIMESTAMP fields which are
        able to store NULL values.
      sql/ha_berkeley.cc:
        Now we use TABLE::timestamp_field_type instead of 
        TABLE::timestamp_default_now/on_update_now for determining 
        if we should auto-set value of TIMESTAMP field during this operation.
        We are also use Field_timestamp::set_time() instead of 
        handler::update_timestamp().
      sql/ha_heap.cc:
        Now we use TABLE::timestamp_field_type instead of 
        TABLE::timestamp_default_now/on_update_now for determining 
        if we should auto-set value of TIMESTAMP field during this operation.
        We are also use Field_timestamp::set_time() instead of 
        handler::update_timestamp().
      sql/ha_innodb.cc:
        Now we use TABLE::timestamp_field_type instead of 
        TABLE::timestamp_default_now/on_update_now for determining 
        if we should auto-set value of TIMESTAMP field during this operation.
        We are also use Field_timestamp::set_time() instead of 
        handler::update_timestamp().
      sql/ha_isam.cc:
        Now we use TABLE::timestamp_field_type instead of 
        TABLE::timestamp_default_now/on_update_now for determining 
        if we should auto-set value of TIMESTAMP field during this operation.
        We are also use Field_timestamp::set_time() instead of 
        handler::update_timestamp().
      sql/ha_isammrg.cc:
        Now we use TABLE::timestamp_field_type instead of 
        TABLE::timestamp_default_now/on_update_now for determining 
        if we should auto-set value of TIMESTAMP field during this operation.
        We are also use Field_timestamp::set_time() instead of 
        handler::update_timestamp().
      sql/ha_myisam.cc:
        Now we use TABLE::timestamp_field_type instead of 
        TABLE::timestamp_default_now/on_update_now for determining 
        if we should auto-set value of TIMESTAMP field during this operation.
        We are also use Field_timestamp::set_time() instead of 
        handler::update_timestamp().
      sql/ha_myisammrg.cc:
        Now we use TABLE::timestamp_field_type instead of 
        TABLE::timestamp_default_now/on_update_now for determining 
        if we should auto-set value of TIMESTAMP field during this operation.
        We are also use Field_timestamp::set_time() instead of 
        handler::update_timestamp().
      sql/ha_ndbcluster.cc:
        Now we use TABLE::timestamp_field_type instead of 
        TABLE::timestamp_default_now/on_update_now for determining 
        if we should auto-set value of TIMESTAMP field during this operation.
        We are also use Field_timestamp::set_time() instead of 
        handler::update_timestamp().
      sql/handler.cc:
        handler::update_timestamp() is no longer needed since now we use
        Field_timestamp::set_time() instead.
        (we can't use handler::update_timestamp() anyway since field position
        only is not enough for TIMESTAMP fields which are able to store NULLs)
      sql/handler.h:
        handler::update_timestamp() is no longer needed since now we use
        Field_timestamp::set_time() instead.
      sql/item_timefunc.cc:
        Since now TIMESTAMP fields can hold NULL values we should take this into
        account.
      sql/sql_base.cc:
        Now we use TABLE::timestamp_field_type instead of 
        TABLE::timestamp_default_now/on_update_now. 
        (Here we use Field_timestamp::get_auto_set_type() to setup its value
         before further statement execution).
      sql/sql_insert.cc:
        Now we use TABLE::timestamp_field_type instead of 
        TABLE::timestamp_default_now/on_update_now.
      sql/sql_load.cc:
        Now we use TABLE::timestamp_field_type instead of 
        TABLE::timestamp_default_now/on_update_now.
      sql/sql_parse.cc:
        Added support for TIMESTAMP fields holding NULL values.
        We should distinguish NULL default values and non-specified default
        values for such fields (because latter could mean DEFAULT NOW()
        ON UPDATE NOW() in some cases).
      sql/sql_show.cc:
        Added support for TIMESTAMP fields holding NULL values.
        Unlike all other fields these are NOT NULL by default
        so we have to specify NULL attribute explicitly for them.
      sql/sql_table.cc:
        Now we use TABLE::timestamp_field_type instead of 
        TABLE::timestamp_default_now/on_update_now.
      sql/sql_update.cc:
        Now we use TABLE::timestamp_field_type instead of 
        TABLE::timestamp_default_now/on_update_now.
      sql/sql_yacc.yy:
        Added support for TIMESTAMP fields holding NULL values.
        Unlike all other fields these are NOT NULL by default
        (so we have to set NOT_NULL_FLAG properly for them).
      sql/table.h:
        Added timestamp_auto_set_type enum which values are used for indicating
        during which operations we should automatically set TIMESTAPM field
        value to current timestamp.
        TABLE: Replaced timestamp_default_now/on_update_now members with
        timestamp_auto_set_type flag (Now when TIMESTAMP field are able to 
        store NULL values, single position of field in record is not enough 
        for updating this field anyway).
      c2a25521
    • unknown's avatar
      Merge mskold@build.mysql.com:/home/bk/mysql-4.1 · 8b671a92
      unknown authored
      into mysql.com:/usr/local/home/marty/MySQL/test/mysql-4.1
      
      8b671a92
    • unknown's avatar
      Added index cardinality check · b8f0b6f3
      unknown authored
      b8f0b6f3
    • unknown's avatar
      Changed test to be independent on scan order · 36d3f48c
      unknown authored
      36d3f48c
    • unknown's avatar
      Merge marko@build.mysql.com:/home/bk/mysql-4.1 · 362046d7
      unknown authored
      into hundin.mysql.fi:/home/marko/j/mysql-4.1
      
      
      innobase/btr/btr0btr.c:
        Auto merged
      innobase/lock/lock0lock.c:
        Auto merged
      innobase/row/row0ins.c:
        Auto merged
      innobase/row/row0row.c:
        Auto merged
      innobase/row/row0sel.c:
        Auto merged
      innobase/row/row0upd.c:
        Auto merged
      sql/ha_innodb.cc:
        Auto merged
      sql/ha_innodb.h:
        Auto merged
      sql/mysql_priv.h:
        Auto merged
      362046d7
    • unknown's avatar
      bug#5349 ALTER TABLE corrupts TEXT (and blob?) · 67d884e0
      unknown authored
      67d884e0
    • unknown's avatar
      Added more comments on the code and made some code polishing. · aaad0704
      unknown authored
      
      sql/ha_innodb.cc:
        Added more comments and some polishing.
      aaad0704
    • unknown's avatar
      Merge mskold@build.mysql.com:/home/bk/mysql-4.1 · cd44553c
      unknown authored
      into mysql.com:/usr/local/home/marty/MySQL/test/mysql-4.1
      
      
      sql/ha_ndbcluster.cc:
        Auto merged
      sql/ha_ndbcluster.h:
        Auto merged
      cd44553c
    • unknown's avatar
      InnoDB: quote identifiers according to MySQL settings (Bug #5292) · ea30886c
      unknown authored
      
      innobase/btr/btr0btr.c:
        Add parameter to ut_print_name() and dict_index_name_print() calls
      innobase/btr/btr0cur.c:
        Add parameter to dict_index_name_print() calls
      innobase/buf/buf0buf.c:
        Add parameter to dict_index_name_print() calls
      innobase/dict/dict0crea.c:
        Add parameter to ut_print_name() calls
      innobase/dict/dict0dict.c:
        Add parameter to ut_print_name() calls
        Update documentation links to http://dev.mysql.com
      innobase/dict/dict0load.c:
        Add parameter to ut_print_name() calls
      innobase/fil/fil0fil.c:
        Use ut_print_filename()
        Update links to documentation to http://dev.mysql.com
      innobase/ibuf/ibuf0ibuf.c:
        Replaced printf(...) with fprintf(stderr,...)
      innobase/include/dict0dict.h:
        Added trx parameters
      innobase/include/row0row.h:
        Added trx parameter
      innobase/include/row0sel.h:
        Added trx parameter
      innobase/include/row0upd.h:
        Added trx parameters
      innobase/include/row0upd.ic:
        Added trx parameter for dict_index_name_print()
      innobase/include/trx0rec.h:
        Added trx parameter
      innobase/include/ut0ut.h:
        Added ut_print_filename()
        Added trx parameter to ut_print_name() and ut_print_namel()
      innobase/lock/lock0lock.c:
        Added parameter to dict_index_name_print() and ut_print_name() calls
      innobase/page/page0page.c:
        Added parameter to dict_index_name_print() calls
      innobase/pars/pars0opt.c:
        Added parameter to dict_index_name_print() call
      innobase/pars/pars0pars.c:
        Added parameter to upd_field_set_field_no() call
      innobase/row/row0ins.c:
        Added trx parameters
      innobase/row/row0mysql.c:
        Added trx parameters
      innobase/row/row0purge.c:
        Added trx parameter
      innobase/row/row0row.c:
        Added trx parameter
      innobase/row/row0sel.c:
        Added trx parameters
      innobase/row/row0umod.c:
        Added trx parameters
      innobase/row/row0upd.c:
        Added trx parameters
      innobase/trx/trx0rec.c:
        Added trx parameters
      innobase/trx/trx0roll.c:
        Added parameter to ut_print_name() calls
      innobase/ut/ut0ut.c:
        Added ut_print_filename()
        Added trx parameter to ut_print_namel() and ut_print_name() calls
      sql/ha_innodb.cc:
        Added trx parameters
        Rewrote mysql_get_identifier_quote_char()
      sql/mysql_priv.h:
        Added get_quote_char_for_identifier()
      sql/sql_show.cc:
        Added get_quote_char_for_identifier()
        Removed append_quoted_simple_identifier()
        Make append_identifier() use get_quote_char_for_identifier()
      ea30886c
    • unknown's avatar
      Merge jlindstrom@build.mysql.com:/home/bk/mysql-4.1 · f3fb37f6
      unknown authored
      into hundin.mysql.fi:/home/jan/mysql-4.1
      
      f3fb37f6
    • unknown's avatar
      restore of auto increment bug#5786 · 1adc00ac
      unknown authored
      1adc00ac
  2. 30 Sep, 2004 9 commits
    • unknown's avatar
      client_test.test: · da599f9b
      unknown authored
        Use TESTS_BINDIR to point out bin dir for "client_test"
      mysql-test-run.sh:
        Export TESTS_BINDIR to be used from --exec
      
      
      mysql-test/mysql-test-run.sh:
        Export TESTS_BINDIR to be used from --exec
      mysql-test/t/client_test.test:
        Use TESTS_BINDIR to point out bin dir for "client_test"
      da599f9b
    • unknown's avatar
      bug#5782 · 214d20a6
      unknown authored
      214d20a6
    • unknown's avatar
      bug#5824 · e7c74356
      unknown authored
      e7c74356
    • unknown's avatar
      Merge mysql.com:/home/bk/mysql-4.1 · 68a7e0a2
      unknown authored
      into mysql.com:/users/kboortz/daily/work/mysql-4.1-vax
      
      68a7e0a2
    • unknown's avatar
      mysql_protocols.test: · 74d83445
      unknown authored
        --exec now checks return code, make all command lines succeed
      
      
      mysql-test/t/mysql_protocols.test:
        --exec now checks return code, make all command lines succeed
      74d83445
    • unknown's avatar
      InnoDB: implement innodb_max_purge_lag · f8eee7ca
      unknown authored
      
      innobase/include/srv0srv.h:
        Added srv_max_purge_lag and srv_dml_needed_delay
      innobase/include/trx0sys.h:
        Added trx_sys->rseg_history_len
      innobase/row/row0mysql.c:
        Added row_mysql_delay_if_needed()
      innobase/srv/srv0srv.c:
        Added srv_max_purge_lag and srv_dml_needed_delay
      innobase/trx/trx0purge.c:
        Update trx_sys->rseg_history_len.
        Calculate srv_dml_needed_delay from srv_max_purge_lag
        and trx_sys->rseg_history_len.
      innobase/trx/trx0rseg.c:
        Initialize trx_sys->rseg_history_len
      sql/ha_innodb.h:
        Add srv_max_purge_lag
      sql/mysqld.cc:
        Add parameter innodb_max_purge_lag
      sql/set_var.cc:
        Add global variable innodb_max_purge_lag
      f8eee7ca
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-4.1 · 420ff3fc
      unknown authored
      into mysql.com:/home/dlenev/src/mysql-4.1-bg4302
      
      
      sql/item.cc:
        Auto merged
      420ff3fc
    • unknown's avatar
      Final solution for bug# 4302 "Ambiguos order by when renamed column is · 570923eb
      unknown authored
      identical to another in result"
      According to SQL standard queries like 
      "select t1.a as col from t1, t2 order by a" should return an error if
      both tables contain field a.
      
      
      mysql-test/r/order_by.result:
        Updated test to conform SQL-standard.
      mysql-test/t/order_by.test:
        Updated test to conform SQL-standard.
      sql/item.cc:
        find_item_in_list() has now one more out parameter which is not used
        in item.cc functions.
      sql/mysql_priv.h:
        find_item_in_list(): Added boolean out parameter "unaliased" which
        indicates that we have found field by its original name and not by
        its alias in item (select) list.
      sql/sql_base.cc:
        find_item_in_list(): Added boolean out parameter "unaliased" which
        indicates that we have found field by its original name and not by
        its alias in item (select) list. This means that additional check is
        required to ensure there will be no ambiguity if we would search for this
        field in all tables.
      sql/sql_select.cc:
        find_order_in_list(): If we have found field in select list by its
        original name and not by its alias then we should perform additional
        check to ensure that there will be no ambiguity if we will search for
        this field in all tables. Also small cleanup.
      570923eb
    • unknown's avatar
      Made innodb_autoextend_increment accessible as a global variable. · 9e9fb4f8
      unknown authored
      
      sql/ha_innodb.cc:
        Removed variable innobase_auto_extend_increment
        (access srv_auto_extend_increment directly)
      sql/ha_innodb.h:
        Removed variable innobase_auto_extend_increment
        (access srv_auto_extend_increment directly)
      sql/mysqld.cc:
        Moved innodb_autoextend_increment to alphabetically correct position.
        Replaced innobase_auto_extend_increment with srv_auto_extend_increment.
      sql/set_var.cc:
        Added innodb_autoextend_increment
      9e9fb4f8
  3. 29 Sep, 2004 1 commit
  4. 28 Sep, 2004 9 commits
    • unknown's avatar
      Some of the recently pushed prepared statements · 7da6b608
      unknown authored
      tests were disabled due to failures caused by floating point conversion
      issues on optimized builds).
      
      
      mysql-test/include/ps_conv.inc:
        Disable some of the tests for the test suite to pass on an optimized 
        build (floating point issues...).
      mysql-test/include/ps_query.inc:
        Disable some of the tests for the test suite to pass on an optimized 
        build (floating point issues...).
      mysql-test/r/ps_2myisam.result:
        Fix test results.
      mysql-test/r/ps_3innodb.result:
        Fix test results.
      mysql-test/r/ps_4heap.result:
        Fix test results.
      mysql-test/r/ps_5merge.result:
        Fix test results.
      mysql-test/r/ps_6bdb.result:
        Fix test results.
      mysql-test/r/ps_7ndb.result:
        Fix test results.
      7da6b608
    • unknown's avatar
      Merge mysql.com:/home/bk/mysql-4.1 · 3afbb330
      unknown authored
      into mysql.com:/users/kboortz/daily/work/mysql-4.1-vax
      
      3afbb330
    • unknown's avatar
      Merge tulin@bk-internal.mysql.com:/home/bk/mysql-4.1 · 2d41b8e0
      unknown authored
      into poseidon.ndb.mysql.com:/home/tomas/mysql-4.1-ndb
      
      2d41b8e0
    • unknown's avatar
      ha_ndbcluster.cc: · a90cb70c
      unknown authored
        typo
      
      
      sql/ha_ndbcluster.cc:
        typo
      a90cb70c
    • unknown's avatar
      set correct lockmode in all reads... · 51d1a6b3
      unknown authored
          move lockmode from scan operation to operation
          added read tuple with lock mode
      
      
      ndb/include/ndbapi/NdbIndexOperation.hpp:
        added read tuple with lock mode
      ndb/include/ndbapi/NdbOperation.hpp:
        move lockmode from scan operation to operation
      ndb/include/ndbapi/NdbScanOperation.hpp:
        move lockmode from scan operation to operation
      ndb/src/ndbapi/NdbIndexOperation.cpp:
        added read tuple with lock mode
      ndb/src/ndbapi/NdbOperationDefine.cpp:
        added read tuple with lock mode
      sql/ha_ndbcluster.cc:
        set correct lockmode in all reads...
        moved lockmode from scan operatoin to operation
      51d1a6b3
    • unknown's avatar
      mysql-test-run.sh: · db2ab496
      unknown authored
        Make timer an option
      
      
      mysql-test/mysql-test-run.sh:
        Make timer an option
      db2ab496
    • unknown's avatar
      Merge mysql.com:/home/bk/mysql-4.1 · dd9c1329
      unknown authored
      into mysql.com:/users/kboortz/daily/work/mysql-4.1-vax
      
      
      client/mysqltest.c:
        Auto merged
      mysql-test/mysql-test-run.sh:
        Auto merged
      dd9c1329
    • unknown's avatar
      Merge tulin@bk-internal.mysql.com:/home/bk/mysql-4.1 · fa582213
      unknown authored
      into poseidon.ndb.mysql.com:/home/tomas/mysql-4.1-ndb
      
      fa582213
    • unknown's avatar
      client_test.test: · c7a18f63
      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
      c7a18f63