• unknown's avatar
    Fix race condition: instance map wasn't locked for the · 0187c361
    unknown authored
    duration of the whole 'flush instances'. As a consequence,
    it was possible to query instance map, while it is in the
    inconsistent state. The patch was reworked after review.
    
    
    server-tools/instance-manager/guardian.cc:
      do not lock instance map in Guardian_thread::init()
    server-tools/instance-manager/instance_map.cc:
      Eliminate race condition: lock instance map and guardian
      for the duration of the whole "FLUSH INSTANCES" execution.
    server-tools/instance-manager/instance_map.h:
      add new method. cleanup interface. add comments.
    server-tools/instance-manager/manager.cc:
      use instance_map.flush_instances instead of instance_map.load() and guardian_thread.init()
    0187c361
guardian.cc 11.2 KB