[ https://issues.apache.org/jira/browse/YARN-2765?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14225262#comment-14225262 ]
Jian He commented on YARN-2765: ------------------------------- Thanks, Jason! Patch looks good. just a few minor comments. - Patch needs updated on top of YARN-2404. - we may use the following constants from the RMStateStore base class — DB_SCHEMA_VERSION_KEY -> VERSION_NODE — EPOCH_KEY -> EPOCH_NODE — RM_DT_SEQUENCE_NUMBER_KEY: use DELEGATION_TOKEN_SEQUENCE_NUMBER_PREFIX for “RMDTSequentialNumber” - this check is always true and so unnecessary, as attemptState is earlier initialized with attemptId {code} if (!attemptId.equals(attemptState.getAttemptId())) { throw new YarnRuntimeException("The database entry for " + attemptId + " contains data for " + attemptState.getAttemptId()); } {code} Some naming suggestions: - loadRMAppAttemptState-> createAttemptState - loadRMAppState(String appIdStr, byte[] data) -> createApplicationState - {{String itemName = key.substring(keyPrefix.length());}} rename itemName to attemptId, and keyPrefix to attemptNodePrefix - Question: does the levelDB client API handle retry ? > Add leveldb-based implementation for RMStateStore > ------------------------------------------------- > > Key: YARN-2765 > URL: https://issues.apache.org/jira/browse/YARN-2765 > Project: Hadoop YARN > Issue Type: Sub-task > Components: resourcemanager > Reporter: Jason Lowe > Assignee: Jason Lowe > Attachments: YARN-2765.patch, YARN-2765v2.patch > > > It would be nice to have a leveldb option to the resourcemanager recovery > store. Leveldb would provide some benefits over the existing filesystem store > such as better support for atomic operations, fewer I/O ops per state update, > and far fewer total files on the filesystem. -- This message was sent by Atlassian JIRA (v6.3.4#6332)