@Override
    public ApplicationInstanceStatus getApplicationInstanceStatus(ApplicationInstanceReference reference) {
        try {
            Stat statOrNull = curator.framework().checkExists().forPath(
                    applicationInstanceSuspendedPath(reference));

            return (statOrNull == null) ? ApplicationInstanceStatus.NO_REMARKS : ApplicationInstanceStatus.ALLOWED_TO_BE_DOWN;
        } catch (Exception e) {
            throw new RuntimeException(e);
        }
    }
1) locks the status service for an application instance.
 2) fails all operations in this thread when the session is lost,
    since session loss might cause the lock to be lost.
    Since it only fails operations in this thread,
    all operations depending on a lock, including the locking itself, must be done in this thread.
    Note that since it is the thread that fails, all status operations in this thread will fail
    even if they're not supposed to be guarded by this lock
    (i.e. the request is for another applicationInstanceReference)
orchestrator/src/main/java/com/yahoo/vespa/orchestrator/status/ZkStatusService.java