You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-dev@hadoop.apache.org by "xuzq (Jira)" <ji...@apache.org> on 2020/07/31 01:51:00 UTC
[jira] [Created] (HDFS-15504) Bootstrap failed and return
ERR_CODE_LOGS_UNAVAILABLE
xuzq created HDFS-15504:
---------------------------
Summary: Bootstrap failed and return ERR_CODE_LOGS_UNAVAILABLE
Key: HDFS-15504
URL: https://issues.apache.org/jira/browse/HDFS-15504
Project: Hadoop HDFS
Issue Type: Bug
Reporter: xuzq
Bootstrap failed and return ERR_CODE_LOGS_UNAVAILABLE when _*dfs.ha.tail-edits.in-progress=true*_.
The Code like below and throw IOException at *_checkForGaps_* when missed edits more than
_*dfs.ha.tail-edits.qjm.rpc.max-txns*_
{code:java}
public Collection<EditLogInputStream> selectInputStreams(long fromTxId,
long toAtLeastTxId, MetaRecoveryContext recovery, boolean inProgressOk,
boolean onlyDurableTxns) throws IOException {
List<EditLogInputStream> streams = new ArrayList<EditLogInputStream>();
synchronized(journalSetLock) {
Preconditions.checkState(journalSet.isOpen(), "Cannot call " +
"selectInputStreams() on closed FSEditLog");
selectInputStreams(streams, fromTxId, inProgressOk, onlyDurableTxns);
}
try {
checkForGaps(streams, fromTxId, toAtLeastTxId, inProgressOk);
} catch (IOException e) {
if (recovery != null) {
// If recovery mode is enabled, continue loading even if we know we
// can't load up to toAtLeastTxId.
LOG.error("Exception while selecting input streams", e);
} else {
closeAllStreams(streams);
throw e;
}
}
return streams;
}{code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: hdfs-dev-unsubscribe@hadoop.apache.org
For additional commands, e-mail: hdfs-dev-help@hadoop.apache.org