• Sergey Vojtovich's avatar
    MDEV-22339 - Assertion `str_length < len' failed · dce4c0f9
    Sergey Vojtovich authored
    When acquiring SNW/SNRW/X MDL lock DDL/admin statements may abort pending
    thr lock in concurrent connection with open HANDLER (or delayed insert
    thread).
    
    This may lead to a race condition when table->alias is accessed
    concurrently by such threads. Either assertion failure or memory leak
    is a practical consequence of this race condition.
    
    Specifically HANDLER is opening a table and issuing alias.copy(), while
    DDL executing get_lock_data()/alias.c_ptr()/realloc()/realloc_raw().
    
    Fixed by perforimg table->init() before it is published via
    thd->open_tables.
    dce4c0f9
sql_base.cc 288 KB