Java Code Examples for org.apache.hadoop.yarn.server.records.Version#isCompatibleTo()

The following examples show how to use org.apache.hadoop.yarn.server.records.Version#isCompatibleTo() . You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: NMLeveldbStateStoreService.java    From hadoop with Apache License 2.0 6 votes vote down vote up
/**
 * 1) Versioning scheme: major.minor. For e.g. 1.0, 1.1, 1.2...1.25, 2.0 etc.
 * 2) Any incompatible change of state-store is a major upgrade, and any
 *    compatible change of state-store is a minor upgrade.
 * 3) Within a minor upgrade, say 1.1 to 1.2:
 *    overwrite the version info and proceed as normal.
 * 4) Within a major upgrade, say 1.2 to 2.0:
 *    throw exception and indicate user to use a separate upgrade tool to
 *    upgrade NM state or remove incompatible old state.
 */
private void checkVersion() throws IOException {
  Version loadedVersion = loadVersion();
  LOG.info("Loaded NM state version info " + loadedVersion);
  if (loadedVersion.equals(getCurrentVersion())) {
    return;
  }
  if (loadedVersion.isCompatibleTo(getCurrentVersion())) {
    LOG.info("Storing NM state version info " + getCurrentVersion());
    storeVersion();
  } else {
    throw new IOException(
      "Incompatible version for NM state: expecting NM state version " 
          + getCurrentVersion() + ", but loading version " + loadedVersion);
  }
}
 
Example 2
Source File: RMStateStore.java    From hadoop with Apache License 2.0 6 votes vote down vote up
/**
 * 1) Versioning scheme: major.minor. For e.g. 1.0, 1.1, 1.2...1.25, 2.0 etc.
 * 2) Any incompatible change of state-store is a major upgrade, and any
 *    compatible change of state-store is a minor upgrade.
 * 3) If theres's no version, treat it as CURRENT_VERSION_INFO.
 * 4) Within a minor upgrade, say 1.1 to 1.2:
 *    overwrite the version info and proceed as normal.
 * 5) Within a major upgrade, say 1.2 to 2.0:
 *    throw exception and indicate user to use a separate upgrade tool to
 *    upgrade RM state.
 */
public void checkVersion() throws Exception {
  Version loadedVersion = loadVersion();
  LOG.info("Loaded RM state version info " + loadedVersion);
  if (loadedVersion != null && loadedVersion.equals(getCurrentVersion())) {
    return;
  }
  // if there is no version info, treat it as CURRENT_VERSION_INFO;
  if (loadedVersion == null) {
    loadedVersion = getCurrentVersion();
  }
  if (loadedVersion.isCompatibleTo(getCurrentVersion())) {
    LOG.info("Storing RM state version info " + getCurrentVersion());
    storeVersion();
  } else {
    throw new RMStateVersionIncompatibleException(
      "Expecting RM state version " + getCurrentVersion()
          + ", but loading version " + loadedVersion);
  }
}
 
Example 3
Source File: LeveldbTimelineStore.java    From hadoop with Apache License 2.0 6 votes vote down vote up
/**
 * 1) Versioning timeline store: major.minor. For e.g. 1.0, 1.1, 1.2...1.25, 2.0 etc.
 * 2) Any incompatible change of TS-store is a major upgrade, and any
 *    compatible change of TS-store is a minor upgrade.
 * 3) Within a minor upgrade, say 1.1 to 1.2:
 *    overwrite the version info and proceed as normal.
 * 4) Within a major upgrade, say 1.2 to 2.0:
 *    throw exception and indicate user to use a separate upgrade tool to
 *    upgrade timeline store or remove incompatible old state.
 */
private void checkVersion() throws IOException {
  Version loadedVersion = loadVersion();
  LOG.info("Loaded timeline store version info " + loadedVersion);
  if (loadedVersion.equals(getCurrentVersion())) {
    return;
  }
  if (loadedVersion.isCompatibleTo(getCurrentVersion())) {
    LOG.info("Storing timeline store version info " + getCurrentVersion());
    dbStoreVersion(CURRENT_VERSION_INFO);
  } else {
    String incompatibleMessage = 
        "Incompatible version for timeline store: expecting version " 
            + getCurrentVersion() + ", but loading version " + loadedVersion;
    LOG.fatal(incompatibleMessage);
    throw new IOException(incompatibleMessage);
  }
}
 
Example 4
Source File: LeveldbTimelineStateStore.java    From hadoop with Apache License 2.0 6 votes vote down vote up
/**
 * 1) Versioning timeline state store:
 * major.minor. For e.g. 1.0, 1.1, 1.2...1.25, 2.0 etc.
 * 2) Any incompatible change of TS-store is a major upgrade, and any
 * compatible change of TS-store is a minor upgrade.
 * 3) Within a minor upgrade, say 1.1 to 1.2:
 * overwrite the version info and proceed as normal.
 * 4) Within a major upgrade, say 1.2 to 2.0:
 * throw exception and indicate user to use a separate upgrade tool to
 * upgrade timeline store or remove incompatible old state.
 */
private void checkVersion() throws IOException {
  Version loadedVersion = loadVersion();
  LOG.info("Loaded timeline state store version info " + loadedVersion);
  if (loadedVersion.equals(getCurrentVersion())) {
    return;
  }
  if (loadedVersion.isCompatibleTo(getCurrentVersion())) {
    LOG.info("Storing timeline state store version info " + getCurrentVersion());
    storeVersion(CURRENT_VERSION_INFO);
  } else {
    String incompatibleMessage =
        "Incompatible version for timeline state store: expecting version "
            + getCurrentVersion() + ", but loading version " + loadedVersion;
    LOG.fatal(incompatibleMessage);
    throw new IOException(incompatibleMessage);
  }
}
 
Example 5
Source File: ShuffleHandler.java    From hadoop with Apache License 2.0 6 votes vote down vote up
/**
 * 1) Versioning scheme: major.minor. For e.g. 1.0, 1.1, 1.2...1.25, 2.0 etc.
 * 2) Any incompatible change of DB schema is a major upgrade, and any
 *    compatible change of DB schema is a minor upgrade.
 * 3) Within a minor upgrade, say 1.1 to 1.2:
 *    overwrite the version info and proceed as normal.
 * 4) Within a major upgrade, say 1.2 to 2.0:
 *    throw exception and indicate user to use a separate upgrade tool to
 *    upgrade shuffle info or remove incompatible old state.
 */
private void checkVersion() throws IOException {
  Version loadedVersion = loadVersion();
  LOG.info("Loaded state DB schema version info " + loadedVersion);
  if (loadedVersion.equals(getCurrentVersion())) {
    return;
  }
  if (loadedVersion.isCompatibleTo(getCurrentVersion())) {
    LOG.info("Storing state DB schedma version info " + getCurrentVersion());
    storeVersion();
  } else {
    throw new IOException(
      "Incompatible version for state DB schema: expecting DB schema version " 
          + getCurrentVersion() + ", but loading version " + loadedVersion);
  }
}
 
Example 6
Source File: HistoryServerLeveldbStateStoreService.java    From hadoop with Apache License 2.0 6 votes vote down vote up
/**
 * 1) Versioning scheme: major.minor. For e.g. 1.0, 1.1, 1.2...1.25, 2.0 etc.
 * 2) Any incompatible change of state-store is a major upgrade, and any
 *    compatible change of state-store is a minor upgrade.
 * 3) Within a minor upgrade, say 1.1 to 1.2:
 *    overwrite the version info and proceed as normal.
 * 4) Within a major upgrade, say 1.2 to 2.0:
 *    throw exception and indicate user to use a separate upgrade tool to
 *    upgrade state or remove incompatible old state.
 */
private void checkVersion() throws IOException {
  Version loadedVersion = loadVersion();
  LOG.info("Loaded state version info " + loadedVersion);
  if (loadedVersion.equals(getCurrentVersion())) {
    return;
  }
  if (loadedVersion.isCompatibleTo(getCurrentVersion())) {
    LOG.info("Storing state version info " + getCurrentVersion());
    storeVersion();
  } else {
    throw new IOException(
      "Incompatible version for state: expecting state version "
          + getCurrentVersion() + ", but loading version " + loadedVersion);
  }
}
 
Example 7
Source File: NMLeveldbStateStoreService.java    From big-c with Apache License 2.0 6 votes vote down vote up
/**
 * 1) Versioning scheme: major.minor. For e.g. 1.0, 1.1, 1.2...1.25, 2.0 etc.
 * 2) Any incompatible change of state-store is a major upgrade, and any
 *    compatible change of state-store is a minor upgrade.
 * 3) Within a minor upgrade, say 1.1 to 1.2:
 *    overwrite the version info and proceed as normal.
 * 4) Within a major upgrade, say 1.2 to 2.0:
 *    throw exception and indicate user to use a separate upgrade tool to
 *    upgrade NM state or remove incompatible old state.
 */
private void checkVersion() throws IOException {
  Version loadedVersion = loadVersion();
  LOG.info("Loaded NM state version info " + loadedVersion);
  if (loadedVersion.equals(getCurrentVersion())) {
    return;
  }
  if (loadedVersion.isCompatibleTo(getCurrentVersion())) {
    LOG.info("Storing NM state version info " + getCurrentVersion());
    storeVersion();
  } else {
    throw new IOException(
      "Incompatible version for NM state: expecting NM state version " 
          + getCurrentVersion() + ", but loading version " + loadedVersion);
  }
}
 
Example 8
Source File: RMStateStore.java    From big-c with Apache License 2.0 6 votes vote down vote up
/**
 * 1) Versioning scheme: major.minor. For e.g. 1.0, 1.1, 1.2...1.25, 2.0 etc.
 * 2) Any incompatible change of state-store is a major upgrade, and any
 *    compatible change of state-store is a minor upgrade.
 * 3) If theres's no version, treat it as CURRENT_VERSION_INFO.
 * 4) Within a minor upgrade, say 1.1 to 1.2:
 *    overwrite the version info and proceed as normal.
 * 5) Within a major upgrade, say 1.2 to 2.0:
 *    throw exception and indicate user to use a separate upgrade tool to
 *    upgrade RM state.
 */
public void checkVersion() throws Exception {
  Version loadedVersion = loadVersion();
  LOG.info("Loaded RM state version info " + loadedVersion);
  if (loadedVersion != null && loadedVersion.equals(getCurrentVersion())) {
    return;
  }
  // if there is no version info, treat it as CURRENT_VERSION_INFO;
  if (loadedVersion == null) {
    loadedVersion = getCurrentVersion();
  }
  if (loadedVersion.isCompatibleTo(getCurrentVersion())) {
    LOG.info("Storing RM state version info " + getCurrentVersion());
    storeVersion();
  } else {
    throw new RMStateVersionIncompatibleException(
      "Expecting RM state version " + getCurrentVersion()
          + ", but loading version " + loadedVersion);
  }
}
 
Example 9
Source File: LeveldbTimelineStore.java    From big-c with Apache License 2.0 6 votes vote down vote up
/**
 * 1) Versioning timeline store: major.minor. For e.g. 1.0, 1.1, 1.2...1.25, 2.0 etc.
 * 2) Any incompatible change of TS-store is a major upgrade, and any
 *    compatible change of TS-store is a minor upgrade.
 * 3) Within a minor upgrade, say 1.1 to 1.2:
 *    overwrite the version info and proceed as normal.
 * 4) Within a major upgrade, say 1.2 to 2.0:
 *    throw exception and indicate user to use a separate upgrade tool to
 *    upgrade timeline store or remove incompatible old state.
 */
private void checkVersion() throws IOException {
  Version loadedVersion = loadVersion();
  LOG.info("Loaded timeline store version info " + loadedVersion);
  if (loadedVersion.equals(getCurrentVersion())) {
    return;
  }
  if (loadedVersion.isCompatibleTo(getCurrentVersion())) {
    LOG.info("Storing timeline store version info " + getCurrentVersion());
    dbStoreVersion(CURRENT_VERSION_INFO);
  } else {
    String incompatibleMessage = 
        "Incompatible version for timeline store: expecting version " 
            + getCurrentVersion() + ", but loading version " + loadedVersion;
    LOG.fatal(incompatibleMessage);
    throw new IOException(incompatibleMessage);
  }
}
 
Example 10
Source File: LeveldbTimelineStateStore.java    From big-c with Apache License 2.0 6 votes vote down vote up
/**
 * 1) Versioning timeline state store:
 * major.minor. For e.g. 1.0, 1.1, 1.2...1.25, 2.0 etc.
 * 2) Any incompatible change of TS-store is a major upgrade, and any
 * compatible change of TS-store is a minor upgrade.
 * 3) Within a minor upgrade, say 1.1 to 1.2:
 * overwrite the version info and proceed as normal.
 * 4) Within a major upgrade, say 1.2 to 2.0:
 * throw exception and indicate user to use a separate upgrade tool to
 * upgrade timeline store or remove incompatible old state.
 */
private void checkVersion() throws IOException {
  Version loadedVersion = loadVersion();
  LOG.info("Loaded timeline state store version info " + loadedVersion);
  if (loadedVersion.equals(getCurrentVersion())) {
    return;
  }
  if (loadedVersion.isCompatibleTo(getCurrentVersion())) {
    LOG.info("Storing timeline state store version info " + getCurrentVersion());
    storeVersion(CURRENT_VERSION_INFO);
  } else {
    String incompatibleMessage =
        "Incompatible version for timeline state store: expecting version "
            + getCurrentVersion() + ", but loading version " + loadedVersion;
    LOG.fatal(incompatibleMessage);
    throw new IOException(incompatibleMessage);
  }
}
 
Example 11
Source File: ShuffleHandler.java    From big-c with Apache License 2.0 6 votes vote down vote up
/**
 * 1) Versioning scheme: major.minor. For e.g. 1.0, 1.1, 1.2...1.25, 2.0 etc.
 * 2) Any incompatible change of DB schema is a major upgrade, and any
 *    compatible change of DB schema is a minor upgrade.
 * 3) Within a minor upgrade, say 1.1 to 1.2:
 *    overwrite the version info and proceed as normal.
 * 4) Within a major upgrade, say 1.2 to 2.0:
 *    throw exception and indicate user to use a separate upgrade tool to
 *    upgrade shuffle info or remove incompatible old state.
 */
private void checkVersion() throws IOException {
  Version loadedVersion = loadVersion();
  LOG.info("Loaded state DB schema version info " + loadedVersion);
  if (loadedVersion.equals(getCurrentVersion())) {
    return;
  }
  if (loadedVersion.isCompatibleTo(getCurrentVersion())) {
    LOG.info("Storing state DB schedma version info " + getCurrentVersion());
    storeVersion();
  } else {
    throw new IOException(
      "Incompatible version for state DB schema: expecting DB schema version " 
          + getCurrentVersion() + ", but loading version " + loadedVersion);
  }
}
 
Example 12
Source File: HistoryServerLeveldbStateStoreService.java    From big-c with Apache License 2.0 6 votes vote down vote up
/**
 * 1) Versioning scheme: major.minor. For e.g. 1.0, 1.1, 1.2...1.25, 2.0 etc.
 * 2) Any incompatible change of state-store is a major upgrade, and any
 *    compatible change of state-store is a minor upgrade.
 * 3) Within a minor upgrade, say 1.1 to 1.2:
 *    overwrite the version info and proceed as normal.
 * 4) Within a major upgrade, say 1.2 to 2.0:
 *    throw exception and indicate user to use a separate upgrade tool to
 *    upgrade state or remove incompatible old state.
 */
private void checkVersion() throws IOException {
  Version loadedVersion = loadVersion();
  LOG.info("Loaded state version info " + loadedVersion);
  if (loadedVersion.equals(getCurrentVersion())) {
    return;
  }
  if (loadedVersion.isCompatibleTo(getCurrentVersion())) {
    LOG.info("Storing state version info " + getCurrentVersion());
    storeVersion();
  } else {
    throw new IOException(
      "Incompatible version for state: expecting state version "
          + getCurrentVersion() + ", but loading version " + loadedVersion);
  }
}
 
Example 13
Source File: ShuffleHandler.java    From tez with Apache License 2.0 6 votes vote down vote up
/**
 * 1) Versioning scheme: major.minor. For e.g. 1.0, 1.1, 1.2...1.25, 2.0 etc.
 * 2) Any incompatible change of DB schema is a major upgrade, and any
 *    compatible change of DB schema is a minor upgrade.
 * 3) Within a minor upgrade, say 1.1 to 1.2:
 *    overwrite the version info and proceed as normal.
 * 4) Within a major upgrade, say 1.2 to 2.0:
 *    throw exception and indicate user to use a separate upgrade tool to
 *    upgrade shuffle info or remove incompatible old state.
 */
private void checkVersion() throws IOException {
  Version loadedVersion = loadVersion();
  LOG.info("Loaded state DB schema version info " + loadedVersion);
  if (loadedVersion.equals(getCurrentVersion())) {
    return;
  }
  if (loadedVersion.isCompatibleTo(getCurrentVersion())) {
    LOG.info("Storing state DB schedma version info " + getCurrentVersion());
    storeVersion();
  } else {
    throw new IOException(
      "Incompatible version for state DB schema: expecting DB schema version "
          + getCurrentVersion() + ", but loading version " + loadedVersion);
  }
}