{"record":{"id":"f9f60fe4e68dcbde","repo":"apache/hadoop","slug":"blob-copy-progress-wait-time-exceeded-for-source","errorCode":null,"errorMessage":"Blob copy progress wait time exceeded for source: %s and destination: %s","messagePattern":"Blob copy progress wait time exceeded for source: (.+?) and destination: (.+?)","errorType":"exception","errorClass":"TimeoutException","httpStatus":null,"severity":"error","filePath":"hadoop-tools/hadoop-azure/src/main/java/org/apache/hadoop/fs/azurebfs/services/BlobRenameHandler.java","lineNumber":491,"sourceCode":"            tracingContext, null, false);\n        final String srcCopyPath = ROOT_PATH + getAbfsClient().getFileSystem()\n            + src.toUri().getPath();\n        if (dstPathStatus != null && dstPathStatus.getResult() != null\n            && (srcCopyPath.equals(getDstSource(dstPathStatus)))) {\n          return;\n        }\n      }\n      throw ex;\n    }\n    final long pollWait = getAbfsClient().getAbfsConfiguration()\n        .getBlobCopyProgressPollWaitMillis();\n    final long maxWait = getAbfsClient().getAbfsConfiguration()\n        .getBlobCopyProgressMaxWaitMillis();\n    long startTime = System.currentTimeMillis();\n    while (handleCopyInProgress(dst, tracingContext, copyId)\n        == BlobCopyProgress.PENDING) {\n      if (System.currentTimeMillis() - startTime > maxWait) {\n        throw new TimeoutException(\n            String.format(\"Blob copy progress wait time exceeded \"\n                + \"for source: %s and destination: %s\", src, dst));\n      }\n      try {\n        Thread.sleep(pollWait);\n      } catch (InterruptedException ignored) {\n\n      }\n    }\n  }\n\n  /** Gets the source path of the copy operation.\n   *\n   * @param dstPathStatus server response for the GetBlobProperties API on the\n   * destination path.\n   *\n   * @return source path of the copy operation\n   */","sourceCodeStart":473,"sourceCodeEnd":509,"githubUrl":"https://github.com/apache/hadoop/blob/2add9630210752f88ceb1bb74eb65e37bf41da8e/hadoop-tools/hadoop-azure/src/main/java/org/apache/hadoop/fs/azurebfs/services/BlobRenameHandler.java#L473-L509","documentation":"Error \"Blob copy progress wait time exceeded for source: %s and destination: %s\" thrown in apache/hadoop.","triggerScenarios":"Server-side blob copy during a rename does not complete within the configured wait time.","commonSituations":"See trigger scenarios.","solutions":["Increase the copy wait timeout configuration or retry the rename.","Check storage service health; large blob copies can exceed default wait times."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"2add9630210752f88ceb1bb74eb65e37bf41da8e","analyzedAt":"2026-08-22T19:55:07.957Z","schemaVersion":2},"datasetVersion":"2026-08-22T20:17:22.307Z"}