code: private void verifyQuotaForRename(INode[] srcInodes, INode[] dstInodes)
    throws QuotaExceededException {
      if (!ready) {
        // Do not check quota if edits log is still being processed
        return;
      }
      INode srcInode = srcInodes[srcInodes.length - 1];
      int minLength = Math.min(srcInodes.length, dstInodes.length);
      int nonCommonAncestor;
      INode.DirCounts counts = new INode.DirCounts();
      srcInode.spaceConsumedInTree(counts);
      // handle the regular file
      for (nonCommonAncestor = 0; nonCommonAncestor < minLength; nonCommonAncestor++) {
        if (srcInodes[nonCommonAncestor] != dstInodes[nonCommonAncestor]) {
          break;
        }
      }
      // Verify the NS and DS quota from the 1st nonCommonAncestor
      verifyQuota(dstInodes, nonCommonAncestor, nonCommonAncestor, dstInodes.length - 1,
          counts.getNsCount(), counts.getDsCount());
    }
docs: Verify quota for the rename operation where srcInodes[srcInodes.length-1] copies to
  dstInodes[dstInodes.length-1]
  
  @param srcInodes directory from where node is being moved.
  @param dstInodes directory to where node is moved to.
  @throws QuotaExceededException if quota limit is exceeded.