• Annamalai Gurusami's avatar
    Bug #14007649 65111: INNODB SOMETIMES FAILS TO UPDATE ROWS INSERTED · b76a59f5
    Annamalai Gurusami authored
    BY A CONCURRENT TRANSACTIO
    
    The member function QUICK_RANGE_SELECT::init_ror_merged_scan() performs
    a table handler clone. Innodb does not provide a clone operation.  
    The ha_innobase::clone() is not there. The handler::clone() does not 
    take care of the ha_innobase->prebuilt->select_lock_type.  Because of 
    this what happens is that for one index we do a locking read, and 
    for the other index we were doing a non-locking (consistent) read. 
    The patch introduces ha_innobase::clone() member function.  
    It is implemented similar to ha_myisam::clone().  It calls the 
    base class handler::clone() and then does any additional operation 
    required.  I am setting the ha_innobase->prebuilt->select_lock_type 
    correctly. 
    
    rb://1060 approved by Marko
    b76a59f5
ha_innodb.cc 269 KB