当前位置: 首页>>代码示例>>Java>>正文


Java RemoteEditLog.getStartTxId方法代码示例

本文整理汇总了Java中org.apache.hadoop.hdfs.server.protocol.RemoteEditLog.getStartTxId方法的典型用法代码示例。如果您正苦于以下问题:Java RemoteEditLog.getStartTxId方法的具体用法?Java RemoteEditLog.getStartTxId怎么用?Java RemoteEditLog.getStartTxId使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.apache.hadoop.hdfs.server.protocol.RemoteEditLog的用法示例。


在下文中一共展示了RemoteEditLog.getStartTxId方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: rollForwardByApplyingLogs

import org.apache.hadoop.hdfs.server.protocol.RemoteEditLog; //导入方法依赖的package包/类
static void rollForwardByApplyingLogs(
    RemoteEditLogManifest manifest,
    FSImage dstImage) throws IOException {
  NNStorage dstStorage = dstImage.storage;

  List<EditLogInputStream> editsStreams = new ArrayList<EditLogInputStream>();    
  for (RemoteEditLog log : manifest.getLogs()) {
    if (log.inProgress())
      break;
    File f = dstStorage.findFinalizedEditsFile(
        log.getStartTxId(), log.getEndTxId());
    if (log.getStartTxId() > dstImage.getLastAppliedTxId()) {
      editsStreams.add(new EditLogFileInputStream(f, log.getStartTxId(), 
                                                  log.getEndTxId(), false));
     }
  }
  dstImage.loadEdits(editsStreams);
}
 
开发者ID:rhli,项目名称:hadoop-EAR,代码行数:19,代码来源:FSImage.java

示例2: getParamStringForLog

import org.apache.hadoop.hdfs.server.protocol.RemoteEditLog; //导入方法依赖的package包/类
static String getParamStringForLog(RemoteEditLog log,
    StorageInfo remoteStorageInfo) {
  return "getedit=1&" + START_TXID_PARAM + "=" + log.getStartTxId()
      + "&" + END_TXID_PARAM + "=" + log.getEndTxId()
      + "&" + STORAGEINFO_PARAM + "=" +
        remoteStorageInfo.toColonSeparatedString();
}
 
开发者ID:naver,项目名称:hadoop,代码行数:8,代码来源:ImageServlet.java

示例3: segmentExists

import org.apache.hadoop.hdfs.server.protocol.RemoteEditLog; //导入方法依赖的package包/类
/**
 * Check if a segment of a given txid exists in the underlying storage
 * directory. Whne the reader cannot read any new data, it will
 * periodically check if there was some unclean shutdown, which results in
 * an unfinalized log.
 */
boolean segmentExists(long txid) throws IOException {
  List<RemoteEditLog> segments = getManifest();
  for (RemoteEditLog segment : segments) {
    if (segment.getStartTxId() == txid) {
      return true;
    }
  }
  return false;
}
 
开发者ID:rhli,项目名称:hadoop-EAR,代码行数:16,代码来源:ServerLogReaderTransactional.java

示例4: getParamStringForLog

import org.apache.hadoop.hdfs.server.protocol.RemoteEditLog; //导入方法依赖的package包/类
static String getParamStringForLog(RemoteEditLog log,
    StorageInfo remoteStorageInfo, boolean throttle) {
  return "getedit" + "=1&" + START_TXID_PARAM + "=" + log.getStartTxId()
      + "&" + END_TXID_PARAM + "=" + log.getEndTxId()
      + "&" + STORAGEINFO_PARAM + "=" +
        remoteStorageInfo.toColonSeparatedString()
      + "&" + THROTTLE_PARAM + "=" + throttle;
}
 
开发者ID:rhli,项目名称:hadoop-EAR,代码行数:9,代码来源:GetImageServlet.java

示例5: selectInputStreams

import org.apache.hadoop.hdfs.server.protocol.RemoteEditLog; //导入方法依赖的package包/类
/**
 * Select input streams.
 * inProgressOk should be true only for tailing, not for startup
 */
@Override
public void selectInputStreams(Collection<EditLogInputStream> streams,
    long fromTxnId, boolean inProgressOk, boolean validateInProgressSegments)
    throws IOException {

  QuorumCall<AsyncLogger, RemoteEditLogManifest> q =
      loggers.getEditLogManifest(fromTxnId);
  // we insist on getting all responses, even if they are to be exceptions
  // this will fail if we cannot get majority of successes
  Map<AsyncLogger, RemoteEditLogManifest> resps = loggers
      .waitForReadQuorumWithAllResponses(q, selectInputStreamsTimeoutMs,
          "selectInputStreams");
  
  if(LOG.isDebugEnabled()) {
    LOG.debug("selectInputStream manifests:\n" +
        Joiner.on("\n").withKeyValueSeparator(": ").join(resps));
  }
  
  final PriorityQueue<EditLogInputStream> allStreams = 
      new PriorityQueue<EditLogInputStream>(64,
          JournalSet.EDIT_LOG_INPUT_STREAM_COMPARATOR);
  for (Map.Entry<AsyncLogger, RemoteEditLogManifest> e : resps.entrySet()) {
    AsyncLogger logger = e.getKey();
    RemoteEditLogManifest manifest = e.getValue();
    
    for (RemoteEditLog remoteLog : manifest.getLogs()) {
      EditLogInputStream elis = new URLLogInputStream(logger,
          remoteLog.getStartTxId(), httpConnectReadTimeoutMs);
      if (elis.isInProgress() && !inProgressOk) {
        continue;
      }
      allStreams.add(elis);
    }
  }
  // we pass 0 as min redundance as we do not care about this here
  JournalSet.chainAndMakeRedundantStreams(
      streams, allStreams, fromTxnId, inProgressOk, 0);
}
 
开发者ID:rhli,项目名称:hadoop-EAR,代码行数:43,代码来源:QuorumJournalManager.java


注:本文中的org.apache.hadoop.hdfs.server.protocol.RemoteEditLog.getStartTxId方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。