• Nayuta Yanagisawa's avatar
    MDEV-25985 Spider handle ">=" as ">" in some cases · 0f6e170c
    Nayuta Yanagisawa authored
    The function spider_db_append_key_where_internal() converts
    HA_READ_AFTER_KEY to '>'. The conversion seems to be correct for
    single-column indexes because HA_READ_AFTER_KEY means "read the
    key after the provided value."
    
    However, how about multi-column indexes? Assume that there is a
    multi-column index on c1 and c2 and we search with the condition
    'c1 >= 100 AND c2 > 200'. The key_range.flag corresponds to the
    search condition could be HA_READ_AFTER_KEY. In such a case,
    we could not simply convert HA_READ_AFTER_KEY to '>'.
    
    The correct conversion is to convert HA_READ_AFTER_KEY to '>'
    only for the last column in key_part_map and to convert
    HA_READ_AFTER_KEY to '>=' for the other column.
    
    The similar discussion also applies to the conversion from
    key_range.flag to a sign of inequality.
    0f6e170c
spd_db_conn.cc 353 KB