• Marc Alff's avatar
    Bug#53696 Performance schema engine violates the PSEA API by calling my_error() · 4372875a
    Marc Alff authored
    This is a code cleanup.
    
    The implementation of a storage engine (subclasses of handler) is not supposed
    to call my_error() directly inside the engine implementation, 
    but only return error codes, and report errors later at the demand
    of the sql layer only (if needed), using handler::print_error().
    
    This fix removes misplaced calls to my_error(),
    and provide an implementation of print_error() instead.
    
    Given that the sql layer implementation of create table, ha_create_table(),
    does not use print_error() but returns ER_CANT_CREATE_TABLE directly,
    the return code for create table statements using the performance schema
    has changed to ER_CANT_CREATE_TABLE.
    
    Adjusted the test suite accordingly.
    4372875a
pfs_engine_table.cc 21.6 KB