1. 27 Mar, 2007 1 commit
    • unknown's avatar
      Bug#24985 - UTF8 ENUM primary key on MEMORY using BTREE · c664a9b5
      unknown authored
                  causes incorrect duplicate entries
      
      Keys for BTREE indexes on ENUM and SET columns of MEMORY tables
      with character set UTF8 were computed incorrectly. Many
      different column values got the same key value.
      
      Apart of possible performance problems, it made unique indexes
      of this type unusable because it rejected many different
      values as duplicates.
      
      The problem was that multibyte character detection was tried
      on the internal numeric column value. Many values were not
      identified as characters. Their key value became blank filled.
      
      Thanks to Alexander Barkov and Ramil Kalimullin for the patch,
      which sets the character set of ENUM and SET key segments to
      the pseudo binary character set.
      
      
      mysql-test/r/heap_btree.result:
        Bug#24985 - UTF8 ENUM primary key on MEMORY using BTREE
                    causes incorrect duplicate entries
        Added test result.
      mysql-test/t/heap_btree.test:
        Bug#24985 - UTF8 ENUM primary key on MEMORY using BTREE
                    causes incorrect duplicate entries
        Added test.
      sql/ha_heap.cc:
        Bug#24985 - UTF8 ENUM primary key on MEMORY using BTREE
                    causes incorrect duplicate entries
        Set key segment charset to my_charset_bin for ENUM and SET
        columns.
      c664a9b5
  2. 14 Mar, 2007 1 commit
    • unknown's avatar
      Bug#25289 - repair table causes "my_seek.c:56: · f8fd333f
      unknown authored
                  my_seek: Assertion `fd != -1' failed"
      
      In difficult optimize/repair situations the server could crash.
      Under some circumstances the server retries an optimize/repair
      with more elaborate options. But it did not check if the first
      attempt failed so badly that a second one must not be tried.
      
      This could happen when a new data file has been created
      but it was not possible to open it. In this case the
      repair leaves behind a table with closed data file.
      This must not be used for another repair attempt.
      
      We do now detect the closed data file and do not try
      another repair attempt in this situation.
      
      No test case. The required table corruption can not be
      repeated easily. There is a test program attached to
      bug 25433.
      
      
      sql/ha_myisam.cc:
        Bug#25289 - repair table causes "my_seek.c:56:
                    my_seek: Assertion `fd != -1' failed"
        Added code to detect a closed data file. It could be closed
        by a preceeding repair attempt. We must not try another
        repair then.
      f8fd333f
  3. 05 Mar, 2007 1 commit
    • unknown's avatar
      Bug#26464 - insert delayed + update + merge = corruption · 730ace19
      unknown authored
      Using INSERT DELAYED on MERGE tables could lead to table
      corruptions.
      
      The manual lists a couple of storage engines, which can be
      used with INSERT DELAYED. MERGE is not in this list.
      
      The attempt to try it anyway has not been rejected yet.
      This bug was not detected earlier as it can work under
      special circumstances. Most notable is low concurrency.
      
      To be safe, this patch rejects any attempt to use INSERT
      DELAYED on MERGE tables.
      
      
      mysql-test/r/merge.result:
        Bug#26464 - insert delayed + update + merge = corruption
        Added test result.
      mysql-test/t/merge.test:
        Bug#26464 - insert delayed + update + merge = corruption
        Added test.
      sql/ha_myisammrg.h:
        Bug#26464 - insert delayed + update + merge = corruption
        Removed HA_CAN_INSERT_DELAYED flag from table_flags().
        The insert delayed thread upgrades the lock from the first
        entry in MYSQL_LOCK::locks only. Hence it is incapable to
        handle MERGE tables, which have as many entries in this
        array as they have MyISAM sub-tables.
      730ace19
  4. 13 Feb, 2007 2 commits
  5. 12 Feb, 2007 4 commits
    • unknown's avatar
      Merge bk@192.168.21.1:mysql-4.1-opt · 7c41c226
      unknown authored
      into  mysql.com:/home/hf/work/25492/my41-25492
      
      7c41c226
    • unknown's avatar
      bug #25492 (Invalid deallocation in mysql_stmt_fetch) · 07efefd2
      unknown authored
      
      libmysqld/lib_sql.cc:
        code modified to prevent freeing of memory that wasn't malloc-ed.
        Now we check if MYSQL_STMT::result was used.
      07efefd2
    • unknown's avatar
      Merge tnurnberg@bk-internal.mysql.com:/home/bk/mysql-4.1-maint · 18dc6317
      unknown authored
      into  mysql.com:/home/tnurnberg/24660/41-24660
      
      
      sql/table.cc:
        Auto merged
      18dc6317
    • unknown's avatar
      Bug#24660: "enum" field type definition problem · 7ca628c6
      unknown authored
      ENUMs weren't allowed to have character 0xff, a perfectly good character in some locales.
      This was circumvented by mapping 0xff in ENUMs to ',', thereby prevent actual commas from
      being used. Now if 0xff makes an appearance, we find a character not used in the enum and
      use that as a separator. If no such character exists, we throw an error.
      
      Any solution would have broken some sort of existing behaviour. This solution should
      serve both fractions (those with 0xff and those with ',' in their enums), but
      WILL REQUIRE A DUMP/RESTORE CYCLE FROM THOSE WITH 0xff IN THEIR ENUMS. :-/
      That is, mysqldump with their current server, and restore when upgrading to one with
      this patch.
      
      
      mysql-test/r/type_enum.result:
        Bug#24660: "enum" field type definition problem
        
        Show that enums can now contain NAMES_SEP_CHAR (0xff, which is a perfectly respectable
        char in some locales), or ',', or both.
      mysql-test/t/type_enum.test:
        Bug#24660: "enum" field type definition problem
        
        Show that enums can now contain NAMES_SEP_CHAR (0xff, which is a perfectly respectable
        char in some locales), or ',', or both.
      sql/table.cc:
        Bug#24660: "enum" field type definition problem
        
        Revert fix for Bug#20922.
      sql/unireg.cc:
        Bug#24660: "enum" field type definition problem
        
        Use a field-separator for ENUM-values that is not part of those values. If impossible,
        throw error.
      7ca628c6
  6. 08 Feb, 2007 2 commits
  7. 07 Feb, 2007 1 commit
  8. 06 Feb, 2007 8 commits
  9. 05 Feb, 2007 2 commits
  10. 02 Feb, 2007 5 commits
  11. 01 Feb, 2007 7 commits
    • unknown's avatar
      Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1-maint · 83b29ea8
      unknown authored
      into  mysql.com:/home/ram/work/b26012/b26012.4.1
      
      
      sql/field.h:
        Auto merged
      83b29ea8
    • unknown's avatar
      Fix for bug #26012: missed Field_double::size_of() · ea2a693e
      unknown authored
      As we have Field_double::not_fixed we must have Field_double::size_of().
      
      
      sql/field.h:
        Fix for bug #26012: missed Field_double::size_of()
          - Field_double::size_of() added.
      ea2a693e
    • unknown's avatar
      Merge dev3-63.(none):/home/zhl/mysql/tree-merge/4.1/mysql-4.1-ndb-bj · c4281825
      unknown authored
      into  dev3-63.(none):/home/zhl/mysql/tree-merge/4.1/mysql-4.1-ndb
      
      c4281825
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-4.1 · 6b6acacd
      unknown authored
      into  chilla.local:/home/mydev/mysql-4.1-axmrg
      
      
      mysql-test/r/symlink.result:
        Auto merged
      mysql-test/t/symlink.test:
        Auto merged
      sql/mysqld.cc:
        Auto merged
      6b6acacd
    • unknown's avatar
      Valgrind error fixes · 6aab89c5
      unknown authored
      Notes:
      This patch doesn't fix all issues in the tree and we need jani's fix for that
      This patch shoud not be merged into 5.0
      
      
      mysql-test/r/ps.result:
        result fix
      mysql-test/r/symlink.result:
        result fix
      mysql-test/t/ps.test:
        test is moved to 'symlink' test
      mysql-test/t/symlink.test:
        test from 'ps' test
      sql/field_conv.cc:
        valgrind error fix: backport from 5.0
      sql/mysqld.cc:
        release of ssl_context
      vio/viosslfactories.c:
        release of ssl_context
      mysql-test/valgrind.supp:
        New BitKeeper file ``mysql-test/valgrind.supp''
        This file is backported from 5.0, added suppressing of OpenSSL errors
      6aab89c5
    • unknown's avatar
      Merge chilla.local:/home/mydev/mysql-4.0-axmrg · 622cbf39
      unknown authored
      into  chilla.local:/home/mydev/mysql-4.1-axmrg
      
      
      include/my_global.h:
        Auto merged
      include/my_pthread.h:
        Auto merged
      include/thr_alarm.h:
        Auto merged
      mysys/default.c:
        Auto merged
      mysys/my_pthread.c:
        Auto merged
      mysys/thr_alarm.c:
        Auto merged
      mysys/my_thr_init.c:
        Manual merged
      sql/mysqld.cc:
        Manual merged
      622cbf39
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-4.1-engines · 79fe1494
      unknown authored
      into  chilla.local:/home/mydev/mysql-4.1-axmrg
      
      79fe1494
  12. 31 Jan, 2007 6 commits
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-4.1-maint · 1113bf8d
      unknown authored
      into  zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-4.1-maint
      
      
      configure.in:
        Auto merged
      mysql-test/mysql-test-run.pl:
        Auto merged
      scripts/mysqld_multi.sh:
        Auto merged
      sql/mysqld.cc:
        Auto merged
      1113bf8d
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-4.1 · 0d59dfaa
      unknown authored
      into  zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-4.1-maint
      
      
      configure.in:
        Auto merged
      mysql-test/r/range.result:
        Auto merged
      mysql-test/t/range.test:
        Auto merged
      0d59dfaa
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-4.1-maint · 9f9772b6
      unknown authored
      into  qualinost.(none):/home/mtaylor/src/mysql-4.1-maint
      
      9f9772b6
    • unknown's avatar
      Merge mysql.com:/home/svoj/devel/bk/mysql-4.1-engines · effd1801
      unknown authored
      into  mysql.com:/home/svoj/devel/mysql/WL3567/mysql-4.1-engines
      
      effd1801
    • unknown's avatar
      WL#3567 - MERGE engine: a check for underlying table conformance · 0ab6e9f6
      unknown authored
      When a merge table is opened compare column and key definition of
      underlying tables against column and key definition of merge table.
      
      If any of underlying tables have different column/key definition
      refuse to open merge table.
      
      
      mysql-test/r/merge.result:
        A test case for WL#3456.
      mysql-test/t/merge.test:
        A test case for WL#3456.
      sql/ha_myisam.cc:
        Moved a part of code that converts TABLE object to MyISAM key and column
        definition to a separate function.
        
        Added check_definition() function that compares MyISAM table definitions.
      sql/ha_myisammrg.cc:
        Check if underlying table definition conforms to merge table definition,
        and in case underlying table definition differs, refuse to open merge
        table.
      0ab6e9f6
    • unknown's avatar
      Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1-maint · 57408106
      unknown authored
      into  mysql.com:/home/ram/work/b19690/b19690.4.1
      
      
      sql/mysql_priv.h:
        Auto merged
      sql/mysqld.cc:
        Auto merged
      57408106