1. 29 Nov, 2006 1 commit
  2. 28 Nov, 2006 2 commits
    • unknown's avatar
      Merge chilla.local:/home/mydev/mysql-4.1-bug23139 · 7f5d499a
      unknown authored
      into  chilla.local:/home/mydev/mysql-5.0-bug23139
      
      
      myisam/mi_packrec.c:
        Auto merged
      7f5d499a
    • unknown's avatar
      Bug#23139 - myisamchk and mysqld crash when trying to access table · 30f83050
      unknown authored
      A corrupted compressed table could crash the server and
      myisamchk.
      
      The data file of an uncompressed table contains just the records.
      There is no header in the data file.
      
      However the data file of a compressed table has a header.
      The header describes how the table was compressed. This
      information is necessary to extract the records from the
      compressed data file.
      
      Part of the compressed data file header are the [de]code tables.
      They are numeric representations of the Huffman trees used for
      coding and decoding. A Huffman tree is a binary tree. Every
      node has two childs. A child can be a leaf or a branch. Leaves
      contain the decoded value. Branches point to another tree node.
      
      Since the [de]code table is represented as an array of childs,
      the branches need to point at a child within the same array.
      The corruption of the compressed data file from the bug report
      was a couple of branches that pointed outside their array.
      This condition had not been correctly checked.
      
      I added some checks for the pointers in the decode tables.
      This type of corruption will no longer crash the server or
      myisamchk.
      
      No test case. A corrupted compressed table is required.
      
      
      myisam/mi_packrec.c:
        Bug#23139 - myisamchk and mysqld crash when trying to access table
        Added some checks for the pointers in the decode tables.
        Added comments, DBUG prints, style fixes.
      30f83050
  3. 16 Nov, 2006 1 commit
    • unknown's avatar
      BUG# 17044 Federated Storage Engine not UTF8 clean · 16a0bdd7
      unknown authored
      - Added 'SET NAMES <charset>" upon ::open
      - Added test and results for simple UTF test
      
      federated.test:
        BUG #17044 Federated Storage Engine not UTF8 clean
        New test. Using hex - pasting various charsets in the terminal doesn't work.
      federated.result:
        BUG# 17044 Federated Storage Engine not UTF8 clean
        New test results
      ha_federated.cc:
        BUG# 17044 Federated Storage Engine not UTF8 clean
        Upon ::open, set names to table's charset
      
      
      sql/ha_federated.cc:
        BUG# 17044 Federated Storage Engine not UTF8 clean
                Upon ::open, set names to table's charset
      mysql-test/t/federated.test:
         BUG #17044 Federated Storage Engine not UTF8 clean
            New test. Using hex - pasting various charsets in the terminal doesn't work.
          federated.result:
          BUG# 17044 Federated Storage Engine not UTF8 clean
            New test results
      mysql-test/r/federated.result:
        BUG# 17044 Federated Storage Engine not UTF8 clean
                New test results
      16a0bdd7
  4. 07 Nov, 2006 2 commits
  5. 01 Nov, 2006 1 commit
    • unknown's avatar
      BUG#23312 - server hangs 'closing tables' with insert delayed,flush · 88f55bf8
      unknown authored
                  tables,alter table
      Deadlock could happen if there are delayed insert + flush tables + alter table
      running concurrently.
      
      This is fixed by removing a redundant mutex lock when killing a delayed thread.
      
      
      sql/sql_insert.cc:
        Removed redundant delayed thread mutex lock, that could result in a deadlock.
        LOCK_delayed_insert is sufficient to be sure that no other thread frees delayed
        handler.
      88f55bf8
  6. 27 Oct, 2006 4 commits
  7. 26 Oct, 2006 1 commit
  8. 25 Oct, 2006 5 commits
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.0-engines · 861d0388
      unknown authored
      into  chilla.local:/home/mydev/mysql-5.0-bug22119
      
      
      861d0388
    • unknown's avatar
      Merge chilla.local:/home/mydev/mysql-4.1-bug22119 · 45b7948f
      unknown authored
      into  chilla.local:/home/mydev/mysql-5.0-bug22119
      
      
      myisam/mi_check.c:
        Auto merged
      45b7948f
    • unknown's avatar
      Bug#22119 - Changing MI_KEY_BLOCK_LENGTH makes a wrong myisamchk · f962140f
      unknown authored
      When compiling with a default key block size greater than the
      smallest key block size used in a table, checking that table
      failed with bogus errors. The table was marked corrupt. This
      affected myisamchk and the server.
      
      The problem was that the default key block size was used at
      some places where sizes less or equal to the block size of the
      index in check was required.
      
      We do now use the key block size of the particular index
      when checking.
      
      A test case is available for later versions only.
      
      
      myisam/mi_check.c:
        Bug#22119 - Changing MI_KEY_BLOCK_LENGTH makes a wrong myisamchk
        Changed check_k_link() and chk_index_down() to use the block
        size of the index in check or MI_MIN_KEY_BLOCK_LENGTH where
        required. Formerly myisam_block_size or MYISAM_SHARE::blocksize
        was used wrongly.
      f962140f
    • unknown's avatar
      Merge mysql.com:/home/svoj/devel/mysql/BUG22053/mysql-4.1-engines · 79d9d38d
      unknown authored
      into  mysql.com:/home/svoj/devel/mysql/BUG22053/mysql-5.0-engines
      
      
      myisam/mi_dynrec.c:
        Auto merged
      79d9d38d
    • unknown's avatar
      BUG#22053 - REPAIR table can crash server for some · 0f4f1f69
      unknown authored
                  really damaged MyISAM tables
      
      When unpacking a blob column from broken row server crash
      could happen. This could rather happen when trying to repair
      a table using either REPAIR TABLE or myisamchk, though it
      also could happend when trying to access broken row using
      other SQL statements like SELECT if table is not marked as
      crashed.
      
      Fixed ulong overflow when trying to extract blob from
      broken row.
      
      Affects MyISAM only.
      
      
      myisam/mi_dynrec.c:
        Fixed ulong overflow when trying to extract blob from
        broken row. It happens when there are not enough bytes
        to store blob length in `from' buffer. In this case
        (ulong) (from_end - from) - size_length value is huge,
        close to ULONG_MAX.
      0f4f1f69
  9. 24 Oct, 2006 1 commit
  10. 21 Oct, 2006 1 commit
  11. 20 Oct, 2006 7 commits
    • unknown's avatar
      configure.in: · 71fee03e
      unknown authored
        Raised version number to 5.0.28
      
      
      configure.in:
        Raised version number to 5.0.28
      71fee03e
    • unknown's avatar
      Merge mysql.com:/Users/kent/mysql/bk/mysql-5.0.27-release · c416425e
      unknown authored
      into  mysql.com:/Users/kent/mysql/bk/mysql-5.0
      
      
      configure.in:
        Auto merged
      c416425e
    • unknown's avatar
      make_win_bin_dist: · 644dcbf2
      unknown authored
        Copy udf examples and raid.h
        Create target "include" directory before copying files to it
      CMakeLists.txt:
        Only compile in bdb if configured
      configure.in:
        Raised version number to 5.0.27
      
      
      scripts/make_win_bin_dist:
        Copy udf examples and raid.h
        Create target "include" directory before copying files to it
      CMakeLists.txt:
        Only compile in bdb if configured
      configure.in:
        Raised version number to 5.0.27
      644dcbf2
    • unknown's avatar
      Bug #23427: incompatible ABI change in 5.0.26? · a71a524e
      unknown authored
      Revert 1 June change enough to restore ABI compatibility with previous
      versions.
      
      
      include/mysql.h:
        Revert patch that breaks ABI compatibility
      libmysqld/lib_sql.cc:
        Remove useless assignment.
      a71a524e
    • unknown's avatar
      Merge dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-4.1-opt · ab133655
      unknown authored
      into  dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-5.0-opt
      
      
      sql/sql_base.cc:
        Auto merged
      sql/sql_select.cc:
        Auto merged
      ab133655
    • unknown's avatar
      Merge bk-internal:/home/bk/mysql-5.0 · 8cc48091
      unknown authored
      into  dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-5.0-opt
      
      
      mysql-test/r/myisam.result:
        Auto merged
      sql/mysql_priv.h:
        Auto merged
      sql/sql_base.cc:
        Auto merged
      sql/sql_select.cc:
        Auto merged
      8cc48091
    • unknown's avatar
      Merge bk-internal:/home/bk/mysql-4.1 · 0153d67e
      unknown authored
      into  dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-4.1-opt
      
      
      sql/sql_base.cc:
        Auto merged
      sql/sql_select.cc:
        Auto merged
      0153d67e
  12. 19 Oct, 2006 12 commits
  13. 18 Oct, 2006 2 commits
    • unknown's avatar
      Merge mysql.com:/data0/bk/mysql-5.0 · ea39ca34
      unknown authored
      into  mysql.com:/data0/bk/mysql-5.0-kt
      
      
      ea39ca34
    • unknown's avatar
      BUG#23175 - MYISAM crash/repair failed during repair · 48cf65c0
      unknown authored
      Repair table could crash a server if there is not sufficient
      memory (myisam_sort_buffer_size) to operate. Affects not only
      repair, but also all statements that use create index by sort:
      repair by sort, parallel repair, bulk insert.
      
      Return an error if there is not sufficient memory to store at
      least one key per BUFFPEK.
      
      Also fixed memory leak if thr_find_all_keys returns an error.
      
      
      myisam/sort.c:
        maxbuffer is number of BUFFPEK-s for repair. It is calculated
        as records / keys. keys is number of keys that can be stored
        in memory (myisam_sort_buffer_size). There must be sufficient
        memory to store both BUFFPEK-s and keys. It was checked
        correctly before this patch. However there is another
        requirement that wasn't checked: there must be sufficient
        memory for at least one key per BUFFPEK, otherwise repair
        by sort/parallel repair cannot operate.
        
        Return an error if there is not sufficient memory to store at
        least one key per BUFFPEK.
        
        Also fixed memory leak if thr_find_all_keys returns an error.
      mysql-test/r/repair.result:
        A test case for BUG#23175.
      mysql-test/t/repair.test:
        A test case for BUG#23175.
      48cf65c0