1. 30 Apr, 2009 1 commit
    • 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
  8. 21 Apr, 2009 1 commit
    • Alfranio Correia's avatar
      BUG#44378 rpl_binlog_corruption fails with warning messages in Valgrind · c27566ae
      Alfranio Correia authored
            
      The rpl_binlog_corruption test case was inject failures, specifically,
      incidents with invalid numbers to see if the replication was failing
      gracefully. However, this test was causing the following warning message
      in Valgrind: "Conditional jump or move depends on uninitialised value(s)"
            
      The patch fixes the problem by correctly initializing the m_inicident 
      number.
      c27566ae