• unknown's avatar
    Replace the approach using Foo_thread_args + Foo_thread and manually · a163ae30
    unknown authored
    spawned threads with a reusable class Thread.
    
    This is the second idea implemented in the Alik's patch for
    BUG#22306: STOP INSTANCE can not be applied for instances in Crashed,
    Failed and Abandoned.
    Commiting separately to ease review process. 
    
    
    server-tools/instance-manager/commands.cc:
      Remove an unused header.
    server-tools/instance-manager/guardian.cc:
      Use Thread framework instead of manually spawning the Guardian thread.
      Tidy up.
    server-tools/instance-manager/guardian.h:
      Use Thread framework instead of manually spawning the Guardian thread.
    server-tools/instance-manager/instance.cc:
      Use Thread framework instead of manually spawning the instance
      monitoring thread.
    server-tools/instance-manager/listener.cc:
      Use Thread framework instead of manually spawning the 
      mysql connection thread.
    server-tools/instance-manager/listener.h:
      Use Thread framework instead of manually spawning the 
      mysql connection thread.
      Rename Listener_thread to Listener for brevity.
    server-tools/instance-manager/manager.cc:
      Change references to pointers, as per the coding style.
      Use Thread framework instead of manually spawning threads.
    server-tools/instance-manager/mysql_connection.cc:
      Get rid of Mysql_connection_thread_args. Use class Thread framework
      instead. Rename Mysql_connection_thread to Mysql_connection for brevity.
    server-tools/instance-manager/mysql_connection.h:
      Get rid of Mysql_connection_thread_args. Use class Thread framework
      instead. Rename Mysql_connection_thread to Mysql_connection for brevity.
    server-tools/instance-manager/priv.cc:
      Move set_stacksize_and_create_thread to thread_registry.cc and make it
      static: it is not used anywhere else now.
    server-tools/instance-manager/priv.h:
      No public set_stacksize_n_create_thread
    server-tools/instance-manager/thread_registry.cc:
      Implement a base Thread class to be used for all Instance Manager
      threads.
    server-tools/instance-manager/thread_registry.h:
      Implement a base Thread class to be used for all Instance Manager
      threads.
    a163ae30
thread_registry.cc 9.57 KB