code: public RemoteEditLogManifest getEditLogManifest(long firstTxId) throws IOException {
      File currentDir = sd.getCurrentDir();
      List<EditLogFile> allLogFiles = matchEditLogs(
          FileUtil.listFiles(currentDir));
      if (LOG.isDebugEnabled()) {
        LOG.debug(allLogFiles);
      }
      
      List<RemoteEditLog> ret = new ArrayList<RemoteEditLog>(
          allLogFiles.size());
  
      for (EditLogFile elf : allLogFiles) {
        if (elf.isCorrupt()) continue;   
        if (elf.getFirstTxId() >= firstTxId) {
          ret.add(new RemoteEditLog(elf.firstTxId, 
              elf.lastTxId, 
              elf.isInProgress));
        } else if ((firstTxId > elf.getFirstTxId()) &&
                   (firstTxId <= elf.getLastTxId())) {
          throw new IOException("Asked for firstTxId " + firstTxId
              + " which is in the middle of file " + elf.file);
        }
      }
      Collections.sort(ret);
      return new RemoteEditLogManifest(ret);
    }
docs: Find all editlog segments starting at or above the given txid.
  Include inprogress segments. Notice that the segments do not have to be
  contiguous. JournalSet handles the holes between segments.
  
  @param fromTxId the txnid which to start looking
  @return a list of remote edit logs
  @throws IOException if edit logs cannot be listed.