1. 30 Apr, 2009 2 commits
    • Satya B's avatar
      Addition to the fix for BUG#40827 - Killing insert-select to MyISAM can cause · 49e3fe95
      Satya B authored
                                          table corruption
      
      
      Moved the testcase from the file myisam.test to the new testfile 
      mysiam_debug.test
       
      49e3fe95
    • Satya B's avatar
      Fix for BUG#40827 - Killing insert-select to MyISAM can cause table corruption · 1cdd6990
      Satya B authored
                             
      Killing the insert-select statement corrupts the MyISAM table only
      when the destination table is empty and when it has indexes. When 
      we bulk insert huge data and if the destination table is empty we 
      disable the indexes for fast inserts, data is then inserted and 
      indexes are re-enabled after bulk_insert operation
                              
      Killing the query, aborts the repair table operation during enable
      indexes phase leading to table corruption.
                            
      We now truncate the table when we detect that enable indexes is
      killed for bulk insert query.As we have an empty table before the 
      operation, we can fix by truncating the table.
      1cdd6990
  2. 29 Apr, 2009 9 commits
    • Martin Hansson's avatar
      merge · de2c4f0a
      Martin Hansson authored
      de2c4f0a
    • Vladislav Vaintroub's avatar
      merge · 33723996
      Vladislav Vaintroub authored
      33723996
    • Martin Hansson's avatar
      Bug#43737: Select query return bad result · 7d244411
      Martin Hansson authored
            
      A bug in the initialization of key segment information made it point
      to the wrong bit, since a bit index was used when its int value
      was needed. This lead to misinterpretation of bit columns
      read from MyISAM record format when a NULL bit pushed them over
      a byte boundary.
      Fixed by using the int value of the bit instead.
      7d244411
    • Vladislav Vaintroub's avatar
      Bug#43932 myisam index corruption with large index and large · 57b4295d
      Vladislav Vaintroub authored
      key_buffer_size.
      
      The cause of corruption was number overflow when multiplying 
      two ulong values, number of used keycache blocks with size
      of a single block. The result of multiplication exceeded ulong 
      range (4G) and this lead to incorrectly calculated  buffer offset
      in the key cache.
      
      The fix is to use size_t for multiplication result.
      
      This patch also fixes pointless cast in safemalloc 
      (size of allocated block to uint), that creates lot of false
      alarm warnings when using big keycache (> 4GB) in debug mode.
      57b4295d
    • Narayanan V's avatar
      Bug#44337 Select query using index merge fails with MCH3601 · f51e62cf
      Narayanan V authored
      The storage engine was not correctly handling the case in 
      which rnd_pos is executed for a handler without a preceding
      rnd_next or index read operation. As a result, an unitialized
      file handle was sometimes being passed to the QMY_READ API.
      
      The fix clears the rrnAssocHandle at the beginning of each
      read operation and then checks to see whether it has been
      set to a valid handle value before attempting to use it
      in rnd_pos. If rrnAssocHandle has not been set by a previous
      read operation, rnd_pos instead falls back to the use of the
      currently active handle.
      f51e62cf
    • Alexey Botchkov's avatar
      merging · 4edc43b7
      Alexey Botchkov authored
      4edc43b7
    • Alexey Botchkov's avatar
      merging · a594ff04
      Alexey Botchkov authored
      a594ff04
    • Alexey Botchkov's avatar
      merging · 1e53c709
      Alexey Botchkov authored
      1e53c709
    • Alexey Botchkov's avatar
      merging · 08690ef2
      Alexey Botchkov authored
      08690ef2
  3. 28 Apr, 2009 12 commits
  4. 27 Apr, 2009 1 commit
  5. 26 Apr, 2009 1 commit
    • Alfranio Correia's avatar
      Fixed rpl_innodb_mixed_ddl and rpl_000015. · 8126db7c
      Alfranio Correia authored
      Respectively, replaced "--exec diff" by "--diff_files" which is a mysqltest command to run a
      non-operating system specific diff. Removed the file rpl_000015-slave.sh as it is not
      necessary in the new MTR.
      8126db7c
  6. 24 Apr, 2009 10 commits
  7. 23 Apr, 2009 5 commits