def wait
      perform_operation do |redis|
        redis.blpop(wait_key, MAX_OP_WAIT_TIME - 3)
        redis.del(wait_key)
      end
    end
def wait
      perform_operation do |redis|
        redis.blpop(wait_key, MAX_OP_WAIT_TIME - 3)
        redis.del(wait_key)
      end
    end
Waits until something interesting happens. If the connection
 with this node dies, the blpop call will raise an error. If
 the blpop call returns without error, then this will be due to
 a graceful shutdown signaled by #wakeup or a timeout.