1. 08 Jul, 2007 1 commit
    • unknown's avatar
      Bug#29310: An InnoDB table was updated when the data wasn't actually changed. · 801b85b9
      unknown authored
      When a table is being updated it has two set of fields - fields required for
      checks of conditions and fields to be updated. A storage engine is allowed
      not to retrieve columns marked for update. Due to this fact records can't
      be compared to see whether the data has been changed or not. This makes the
      server always update records independently of data change.
      
      Now when an auto-updatable timestamp field is present and server sees that
      a table handle isn't going to retrieve write-only fields then all of such
      fields are marked as to be read to force the handler to retrieve them.
      
      
      mysql-test/r/innodb_mysql.result:
        Added a test case for the bug#29310: An InnoDB table was updated when the data wasn't actually changed.
      mysql-test/include/mix1.inc:
        Added a test case for the bug#29310: An InnoDB table was updated when the data wasn't actually changed.
      sql/sql_update.cc:
        Bug#29310: An InnoDB table was updated when the data wasn't actually changed.
        Now the mysql_update function when an auto-updatable timestamp field is
        present marks write-only fields as to be read to force the table handler
        to retrieve them.
      sql/sql_insert.cc:
        Bug#29310: An InnoDB table was updated when the data wasn't actually changed.
        Now the write_record function can compare records when fileds to be written is
        a subset of the fields to be read while updating a record.
      801b85b9
  2. 04 Jul, 2007 7 commits
  3. 03 Jul, 2007 14 commits
    • unknown's avatar
      loaddata.result, loaddata.test: · 3d974217
      unknown authored
        Updated test case for bug #29294.
      
      
      mysql-test/t/loaddata.test:
        Updated test case for bug #29294.
      mysql-test/r/loaddata.result:
        Updated test case for bug #29294.
      3d974217
    • unknown's avatar
      Merge gleb.loc:/home/uchum/work/bk/4.1-opt · d8c60b95
      unknown authored
      into  gleb.loc:/home/uchum/work/bk/5.0-opt
      
      
      sql/sql_class.cc:
        Auto merged
      sql/sql_class.h:
        Auto merged
      sql/sql_load.cc:
        Auto merged
      mysql-test/r/loaddata.result:
        Merge with 4.1-opt.
      mysql-test/t/loaddata.test:
        Merge with 4.1-opt.
      d8c60b95
    • unknown's avatar
      Merge gshchepa@bk-internal.mysql.com:/home/bk/mysql-4.1-opt · 2cfb62a2
      unknown authored
      into  gleb.loc:/home/uchum/work/bk/4.1-opt
      
      2cfb62a2
    • unknown's avatar
      loaddata.result, loaddata.test: · c30e513b
      unknown authored
        Test case update for bug #29294.
      
      
      mysql-test/t/loaddata.test:
        Test case update for bug #29294.
      mysql-test/r/loaddata.result:
        Test case update for bug #29294.
      c30e513b
    • unknown's avatar
      sql_class.cc: · a4c295f3
      unknown authored
        Windows compilation error fix.
      
      
      sql/sql_class.cc:
        Windows compilation error fix.
      a4c295f3
    • unknown's avatar
      Fixed bug #29294. · 36bb14d6
      unknown authored
      The `SELECT 'r' INTO OUTFILE ... FIELDS ENCLOSED BY 'r' ' statement
      encoded the 'r' string to a 4 byte string of value x'725c7272'
      (sequence of 4 characters: r\rr).
      The LOAD DATA statement decoded this string to a 1 byte string of
      value x'0d' (ASCII Carriage Return character) instead of the original
      'r' character.
      The same error also happened with the FIELDS ENCLOSED BY clause
      followed by special characters: 'n', 't', 'r', 'b', '0', 'Z' and 'N'.
      
      NOTE 1: This is a result of the undocumented feature: the LOAD DATA INFILE
      recognises 2-byte input sequences like \n, \t, \r and \Z in addition
      to documented 2-byte sequences: \0 and \N. This feature should be
      documented (here backspace character is a default ESCAPED BY character,
      in the real-life example it may be any ESCAPED BY character).
      
      NOTE 2, changed behaviour:
      Now the `SELECT INTO OUTFILE' statement with the `FIELDS ENCLOSED BY'
      clause followed by one of: 'n', 't', 'r', 'b', '0', 'Z' or 'N' characters
      encodes this special character itself by doubling it ('r' --> 'rr'),
      not by prepending it with an escape character.
      
      
      sql/sql_class.h:
        Fixed bug #29294.
        The ESCAPE_CHARS macro constant is defined to enumerate
        symbolic names of espace-sequences like  '\n', '\t' etc.
        The select_export::is_ambiguous_field_sep field has been added
        to distinguish special values of the field_sep field from
        another values (see ESCAPE_CHARS).
      sql/sql_class.cc:
        Fixed bug #29294.
        The select_export::send_data method has been modified to
        encode special values of the field_sep field by
        doubling of those values instead of prepending them with a
        value of the escape_char field.
        Example: The SELECT 'r' INTO OUTFILE FIELDS ENCLOSED BY 'r'
        now produces the 'rr' output string instead of x'5c72'
        (i.e. instead of sequence of 2 bytes: \ and r).
      sql/sql_load.cc:
        Fixed bug #29294.
        Added commentary for the READ_INFO::unescape method.
      mysql-test/t/loaddata.test:
        Updated test case for bug #29294.
      mysql-test/r/loaddata.result:
        Updated test case for bug #29294.
      36bb14d6
    • unknown's avatar
      Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-new-ndb · 8a09b19c
      unknown authored
      into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-new-rpl
      
      
      storage/ndb/test/run-test/daily-basic-tests.txt:
        Auto merged
      8a09b19c
    • unknown's avatar
      Merge mysql.com:/home/bar/mysql-work/mysql-5.0.b27345 · 60346d19
      unknown authored
      into  mysql.com:/home/bar/mysql-work/mysql-5.1-new-rpl
      
      
      strings/ctype-uca.c:
        Auto merged
      strings/ctype-mb.c:
        After merge fix.
      strings/ctype-ucs2.c:
        After merge fix.
      60346d19
    • unknown's avatar
      Merge abarkov@bk-internal.mysql.com:/home/bk/mysql-5.0-rpl · 482b7444
      unknown authored
      into  mysql.com:/home/bar/mysql-work/mysql-5.0.b27345
      
      482b7444
    • unknown's avatar
      Merge gkodinov@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · b94c9fa8
      unknown authored
      into  magare.gmz:/home/kgeorge/mysql/autopush/B28983-2-5.0-opt
      
      b94c9fa8
    • unknown's avatar
      Bug #28983: 'reset master' in multiple threads and innodb tables · 545cb426
      unknown authored
      asserts debug binary
      
      We can't reliably check if the binary log is opened without 
      acquiring its mutex. 
      Fixed by removing this check.
      
      
      sql/log.cc:
        Bug #28983: 
        can't reliably check if bin_log is open outside of its mutex
      545cb426
    • unknown's avatar
      Merge perch.ndb.mysql.com:/home/jonas/src/51-telco-gca · f19dec39
      unknown authored
      into  perch.ndb.mysql.com:/home/jonas/src/mysql-5.1-new-ndb
      
      
      storage/ndb/src/kernel/blocks/dblqh/DblqhMain.cpp:
        Auto merged
      f19dec39
    • unknown's avatar
      Merge perch.ndb.mysql.com:/home/jonas/src/50-work · 45b76315
      unknown authored
      into  perch.ndb.mysql.com:/home/jonas/src/51-telco-gca
      
      
      storage/ndb/src/kernel/blocks/dblqh/DblqhMain.cpp:
        Auto merged
      45b76315
    • unknown's avatar
      ndb - bug#29354 - Incorrect handling of replica REDO during SR (5.0) · 6fa046d1
      unknown authored
        Not very clever fix for DIH incorrect REDO handling
        - Dont report GCP_SAVE_CONF until first LCP has been complete during NR
      
      
      ndb/src/kernel/blocks/dblqh/DblqhMain.cpp:
        Not very clever fix for DIH incorrect REDO handling
          - Dont report GCP_SAVE_CONF until first LCP has been complete during NR
      6fa046d1
  4. 02 Jul, 2007 16 commits
  5. 01 Jul, 2007 2 commits
    • unknown's avatar
      Fixed bug #25798. · 47b98f01
      unknown authored
      This bug may manifest itself not only with the queries for which
      the index-merge access method is chosen. It also may display
      itself for queries with DISTINCT.
      
      The bug was in how the Unique::get method used the merge_buffers
      function. To compare elements in the the queue employed by
      merge_buffers() it must use the buffpek_compare function rather
      than the function for binary comparison. 
      
      
      mysql-test/r/innodb_mysql.result:
        Added a test case for bug #25798.
      mysql-test/t/innodb_mysql.test:
        Added a test case for bug #25798.
      sql/filesort.cc:
        Fixed bug #25798.
        The function merge_buffers() when called from the Uniques::get method
        must use function buffpek_compare to compare elements in the queue it
        employs. The pointer to buffpek_compare and the info for the function
        that compares sorted records are passed to merge_buffers through certain 
        designated fields of the SORTPARAM structure.
      sql/sql_sort.h:
        Fixed bug #25798.
        Added fields to the SORTPARAM structure to be used in the function 
        merge_buffers when called by the Uniques::get method.
      sql/uniques.cc:
        Fixed bug 25798.
        The function merge_buffers() when called from the Uniques::get method
        must use function buffpek_compare to compare elements in the queue it
        employes.
      47b98f01
    • unknown's avatar
      Merge bodhi.(none):/opt/local/work/mysql-5.0-runtime · 002ee981
      unknown authored
      into  bodhi.(none):/opt/local/work/mysql-5.1-runtime
      
      
      sql/sql_class.h:
        Auto merged
      sql/sql_parse.cc:
        Auto merged
      002ee981