Skip to content
  • Ole John Aske's avatar
    15f42d36
    Bug#28610217 RESULT ROWS ARE MISSING WHEN ENUM COMPARISON PREDICATES ARE PUSHED · 15f42d36
    Ole John Aske authored
    Internaly in the storage engines an enum data type is represented by the
    'index' into the textual representation of values it may accept.
    Thus the SE knows nothing about which textual vales the stored enum value
    represents.
    
    As Enums are expected to be compared by their textual 'string' value,
    this comparison can't be handled by the storage engine.
    
    This patch eliminate condition pushdown of enum values when they
    are used in a precicate where they are compared '>' or '<'.
    We still allow enums to be pushed down in conditions where they
    are compared '=' or '<>' as such comparison are first converted
    from their textual to their index value.
    15f42d36
    Bug#28610217 RESULT ROWS ARE MISSING WHEN ENUM COMPARISON PREDICATES ARE PUSHED
    Ole John Aske authored
    Internaly in the storage engines an enum data type is represented by the
    'index' into the textual representation of values it may accept.
    Thus the SE knows nothing about which textual vales the stored enum value
    represents.
    
    As Enums are expected to be compared by their textual 'string' value,
    this comparison can't be handled by the storage engine.
    
    This patch eliminate condition pushdown of enum values when they
    are used in a precicate where they are compared '>' or '<'.
    We still allow enums to be pushed down in conditions where they
    are compared '=' or '<>' as such comparison are first converted
    from their textual to their index value.
Loading