You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-issues@hadoop.apache.org by "ZanderXu (Jira)" <ji...@apache.org> on 2022/09/08 03:27:00 UTC

[jira] [Created] (HDFS-16764) ObserverNamenode handles addBlock rpc and throws a FileNotFoundException

ZanderXu created HDFS-16764:
-------------------------------

             Summary: ObserverNamenode handles addBlock rpc and throws a FileNotFoundException 
                 Key: HDFS-16764
                 URL: https://issues.apache.org/jira/browse/HDFS-16764
             Project: Hadoop HDFS
          Issue Type: Bug
            Reporter: ZanderXu
            Assignee: ZanderXu


ObserverNameNode currently can handle the addBlockLocation RPC, but it may throw a FileNotFoundException when it contains stale txid.
 * AddBlock is not a coordinated method, so Observer will not check the statId.
 * AddBlock does the validation with checkOperation(OperationCategory.READ)

So the observer can handle the addBlock rpc. If this observer cannot replay the edit of create file, it will throw a FileNotFoundException during doing validation.

The related code as follows:
{code:java}
checkOperation(OperationCategory.READ);
final FSPermissionChecker pc = getPermissionChecker();
FSPermissionChecker.setOperationType(operationName);
readLock();
try {
  checkOperation(OperationCategory.READ);
  r = FSDirWriteFileOp.validateAddBlock(this, pc, src, fileId, clientName,
                                        previous, onRetryBlock);
} finally {
  readUnlock(operationName);
} {code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: hdfs-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: hdfs-issues-help@hadoop.apache.org