private Result checkIfAnotherNodeInAnotherGroupHasWantedState(StorageNodeInfo nodeInfo) {
        SettableOptional<Result> anotherNodeHasWantedState = new SettableOptional<>();
        groupVisiting.visit(group -> {
            if (! groupContainsNode(group, nodeInfo.getNode())) {
                Result result = otherNodeInGroupHasWantedState(group);
                if (result.notAllowed()) {
                    anotherNodeHasWantedState.set(result);
                    // Have found a node that is suspended, halt the visiting
                    return false;
                }
            }

            return true;
        });

        return anotherNodeHasWantedState.asOptional().orElseGet(Result::allow);
    }
Returns a disallow-result if there is another node in another group
that has a wanted state != UP.  We disallow more than 1 suspended group at a time.
clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/NodeStateChangeChecker.java