Skip to content
  • Ahmad Abdullateef's avatar
    10a0c3b8
    BUG#13891058 - MYSQL SERVER SHUTDOWN WITH NAMED PIPES · 10a0c3b8
    Ahmad Abdullateef authored
    DESCRIPTION:
    When mysqld is started in Named Pipe mode with a pipe name
    which is already in used by another instance, neither of the
    instances are able to shutdown properly when a shutdown command
    is received from a TCP socket in any of the processes .
    mysqld.exe is not therefore not terminated.
    
    ANALYSIS :
    When a MySQL client sends a shutdown command using a TCP socket
    to a server which also happens to be using named Pipes shared by 
    another instance. kill_server() and close_connections() are called
    on the correct instance identified by the TCP socket. However the 
    worker thread servicing the named pipe connection is terminated on 
    the instance first launched in chronological order, which might not 
    be the same instance. This results in handle_connections_methods() 
    waiting indefinitely on COND_handler_count and the main thread 
    never exits.
    
    FIX :
    Code has been added to make sure the Named Pipe specified is
    not already in use. If it is so an error is shown and the process is
    aborted.
    10a0c3b8
    BUG#13891058 - MYSQL SERVER SHUTDOWN WITH NAMED PIPES
    Ahmad Abdullateef authored
    DESCRIPTION:
    When mysqld is started in Named Pipe mode with a pipe name
    which is already in used by another instance, neither of the
    instances are able to shutdown properly when a shutdown command
    is received from a TCP socket in any of the processes .
    mysqld.exe is not therefore not terminated.
    
    ANALYSIS :
    When a MySQL client sends a shutdown command using a TCP socket
    to a server which also happens to be using named Pipes shared by 
    another instance. kill_server() and close_connections() are called
    on the correct instance identified by the TCP socket. However the 
    worker thread servicing the named pipe connection is terminated on 
    the instance first launched in chronological order, which might not 
    be the same instance. This results in handle_connections_methods() 
    waiting indefinitely on COND_handler_count and the main thread 
    never exits.
    
    FIX :
    Code has been added to make sure the Named Pipe specified is
    not already in use. If it is so an error is shown and the process is
    aborted.
Loading