• Magne Mahre's avatar
    Bug #31031 ALTER TABLE regression in 5.0 · e15708d5
    Magne Mahre authored
    An ALTER TABLE statement which added a column and added
    a non-partial index on it failed with:
                
    "ERROR 1089 (HY000): Incorrect sub part key; the used
    key part isn't a string, the used length is longer than
    the key part, or the storage engine doesn't support unique
    sub keys"
                
    In a check introduced to fix an earlier bug (no. 26794),
    to allow for indices on spatial type columns, the
    test expression was flawed (a logical OR was used instead
    of a logical AND), which led to this regression.
                
    The code in question does a sanity check on the key, and
    the flawed code mistakenly classified any index created
    in the way specified above as a partial index.  Since
    many data types does not allow partial indices, the
    statement would fail.
    e15708d5
alter_table.result 42.1 KB