Jian He created YARN-3165: ----------------------------- Summary: Possible inconsistent queue state when queue reinitialization failed Key: YARN-3165 URL: https://issues.apache.org/jira/browse/YARN-3165 Project: Hadoop YARN Issue Type: Bug Reporter: Jian He Assignee: Jian He
This came up in a discussion with [~chris.douglas]. If queue reinitialization failed in the middle, it is possible that queues are left in an inconsistent state - some queues are already updated, but some are not. One example is below code in leafQueue: {code} if (newMax.getMemory() < oldMax.getMemory() || newMax.getVirtualCores() < oldMax.getVirtualCores()) { throw new IOException( "Trying to reinitialize " + getQueuePath() + " the maximum allocation size can not be decreased!" + " Current setting: " + oldMax + ", trying to set it to: " + newMax); } {code} If exception is thrown here, the previous queues are already updated, but latter queues are not. So we should make queue reinitialization transactional. -- This message was sent by Atlassian JIRA (v6.3.4#6332)