• Magne Mahre's avatar
    Bug#11765237 - 58179: CANNOT START MYSQLD WITH APP VERIFIER · 48126a57
    Magne Mahre authored
    Bug#11763065 - 55730: KILL_SERVER() CALLS SETEVENT ON A NULL 
                   HANDLE, SMEM_EVENT_CONNECT_REQUEST
          
    Application Verifier is a Microsoft tool used for
    detecting certain classes of programming errors.
    In particular, MS Windows OS resource usage is
    monitored for wrong usage (handles, thread local
    storage, critical sections, ...)
          
    In MySQL 5.5.x, an error was introduced where an
    object on thread local storage was used before the
    TLS and the object was created.
          
    The fix has been to move the mysys initialization
    to an earlier stage in the boot process when built for
    Windows.  For non-win builds, the init already happens
    early.
    
    Some un-tangling of calls to my_init(), my_basic_init()
    and my_thread_global_init() was done.  There is no
    longer a need to do init in steps, so the full my_init()
    is called instead of my_init_basic().
          
    In addition,  Bug#11763065 was fixed.  The event handle
    'smem_event_connect_request' is only created if
    'opt_enable_shared_memory' is set.  When killing the
    server, an event was flagged on the handle
    unconditionally.  Added a test, so it will only be
    flagged if created.
    48126a57
my_pthread.h 31 KB