Skip to content
  • Ole John Aske's avatar
    bf1ed8a4
    Fix for Bug#16485658 'PUSHDOWN JOIN WITH BKA PRUNED SCAN' · bf1ed8a4
    Ole John Aske authored
    The BKA implementation in mysql-5.6 has introduce the new
    member variable 'mrr_length_per_rec' in 'class ha_statistics'.
    The BKA implementation use it to predict whether the MRR buffer
    used by the BKA algorithm will become full if we batch another row.
    
    This variable was assumed to be initialized by handler::info()
    but this change was not implemented in ha_ndbcluster::info().
    
    Furthermore, the variable was not initialized by the
    ha_statistics C'tor so it contained garbage causing
    unpredictable behaviour of the 'BKA full' detection.
    
    This could cause the BKA algorithm to incorrectly detecting
    the 'full' condition after only a single row had been batched.
    Effectively disabling the entire batch logic and causing 
    excessively extra Mysql <-> NDB roundtrips. 
    bf1ed8a4
    Fix for Bug#16485658 'PUSHDOWN JOIN WITH BKA PRUNED SCAN'
    Ole John Aske authored
    The BKA implementation in mysql-5.6 has introduce the new
    member variable 'mrr_length_per_rec' in 'class ha_statistics'.
    The BKA implementation use it to predict whether the MRR buffer
    used by the BKA algorithm will become full if we batch another row.
    
    This variable was assumed to be initialized by handler::info()
    but this change was not implemented in ha_ndbcluster::info().
    
    Furthermore, the variable was not initialized by the
    ha_statistics C'tor so it contained garbage causing
    unpredictable behaviour of the 'BKA full' detection.
    
    This could cause the BKA algorithm to incorrectly detecting
    the 'full' condition after only a single row had been batched.
    Effectively disabling the entire batch logic and causing 
    excessively extra Mysql <-> NDB roundtrips. 
Loading