Todos os produtos
Search
Central de documentação

E-MapReduce:O que fazer se o erro Reached timeout ocorrer ao usar o JindoSDK para acessar o OSS?

Última atualização: Sep 21, 2026

Este tópico descreve as causas e soluções do erro Reached timeout que pode ocorrer ao usar o JindoSDK para acessar o Object Storage Service (OSS).

Mensagem de timeout

[ErrorCode] : 25201 , [ErrorType]: OSS Op Error. [ErrorMessage]: [E1008]Reached timeout=30000ms

Métodos para identificar a causa

Nota

Não é possível identificar a causa com base apenas na mensagem de timeout. Se o servidor OSS não retornar uma resposta dentro do período de timeout especificado, verifique os logs de contexto ou a pilha de exceções.

Verifique os logs de contexto com base na pilha de exceções:

O erro Reached timeout pode ocorrer ao executar os seguintes comandos para acessar o OSS:

rename aparece na mensagem de erro da pilha de exceções

  • Exemplo de mensagem de erro

    java.io.IOException: rename src:oss://bucket.oss-cn-xxxx-internal.aliyuncs.com/user/hive/warehouse/tmp/hive/xxxx/c185ce78-f843-4104-8dca-f5b96fc9****/hive_xxxx_00-07-51_265_5593904247532586093-47957/_tmp.-mr-10006, dst:oss://bucket.oss-cn-xxxx-internal.aliyuncs.com/user/hive/warehouse/tmp/hive/xxx/c185ce78-f843-4104-8dca-f5b96fc9****/hive_xxxx-07-21_00-07-51_265_5593904247532586093-47957/_tmp.-mr-10006.moved
    ,java.io.IOException: [ErrorCode] : 25201 , [ErrorType]: OSS Op Error. [ErrorMessage]: [E1008]Reached timeout=30000ms @100.118.xx.xx:80 ERROR_CODE : 1008
  • Causa

    A operação Rename do JindoSDK é implementada com base na operação CopyObject do OSS. O erro ocorre porque a otimização de fastcopy do OSS não é concluída para a operação CopyObject, fazendo com que a operação Rename do JindoSDK expire.

  • Solução

    Entre em contato com o suporte técnico do OSS para confirme os requisitos de configuração de bucket.oss-cn-xxx-internal.aliyuncs.com e investigar a causa da falha na otimização interna de fastcopy.

    A otimização de fastcopy se aplica apenas à maioria dos objetos comuns cuja classe de armazenamento é Standard. Se a classe de armazenamento dos seus objetos OSS não for Standard ou se os objetos forem de tipos especiais, a otimização de fastcopy pode falhar, resultando em timeout da operação rename. Recomenda-se usar o JindoSDK para carregar apenas objetos comuns no OSS com a classe de armazenamento Standard. A otimização de fastcopy pode falhar nos seguintes objetos:

    • Objetos cuja classe de armazenamento não é Standard, como objetos com classe de armazenamento IA, Archive ou Cold Archive

    • Objetos do tipo AppendableObject no OSS

    • Objetos pequenos carregados por meio de uma operação diferente de MultiPart

    • Objetos que utilizam recursos como criptografia no lado do servidor

    • Objetos especiais, como objetos dos tipos LINK, SYMLINK e DELETEMARKER

InputStream ou Read aparece na mensagem de erro da pilha de exceções

  • Exemplo de mensagem de erro

    Read from oss://xxxx with error message:  [HostId]: oss-cn-zhangjiakou-internal.aliyuncs.com [ErrorMessage]: [E1008]Reached timeout=30000ms
  • Causa e solução

    • A operação SeekRead do JindoData 4.0.0 possui um defeito que pode causar o erro Reached timeout. Se você estiver usando o JindoData 4.0.0, atualize o JindoData para a versão 4,3.X ou uma versão posterior. Para mais informações, consulte Upgrade JindoSDK in EMR clusters in the new EMR console.

    • O throttling de largura de banda do OSS foi ativado. Entre em contato com o suporte técnico do OSS para identificar o motivo do throttling.

OutputStream, write ou Close aparece na mensagem de erro da pilha de exceções

  • Exemplo de mensagem de erro

    com.aliyun.emr.fs.oss.commit.magic.JindoOssMagicOutputStream.write(JindoOssMagicOutputStream.java:146)
            ... 14 more
    Caused by: java.io.IOException: ErrorCode : 25201 , ErrorMsg: OSS Op Error.  [HostId]: oss-cn-beijing-internal.aliyuncs.com [ErrorMessage]: [E1008]Reached timeout=30000ms @100.118.xx.xx:80 ERROR_CODE : 1008
            at com.alibaba.jboot.JbootFuture.get(JbootFuture.java:179)
            at com.alibaba.jboot.JbootOssWriter.write(JbootOssWriter.java:85)

    Ou

    Caused by: java.io.IOException: Close stream oss://xxx error java.io.IOException: [ErrorCode] : 25201 , [ErrorType]: OSS Op Error.  [HostId]: xxx [ErrorMessage]: [E1008]Reached timeout=30000ms @xxx ERROR_CODE : 1008
  • Causa e solução

    Esse erro geralmente ocorre porque o throttling de largura de banda do OSS foi ativado. Entre em contato com o suporte técnico do OSS para identificar o motivo do throttling.

getFileStatus aparece na mensagem de erro da pilha de exceções

  • Causa

    O versionamento está ativado para o bucket OSS.

  • Solução

    1. Confirme se o versionamento está ou já esteve ativado para o bucket. No OSS Management Console, acesse o bucket de destino. No painel de navegação à esquerda, escolha Data Security e clique em Versioning para visualize o status do versionamento. Se o status for Enabled ou Suspended, isso indica que o versionamento foi ativado para o bucket.

    2. Entre em contato com o suporte técnico do OSS para verificar se existem mais de 100.000 delete markers no bucket ou no caminho especificado. Se houver, limpe esses markers.

Comando rm

Nota

skipTrash é uma opção do comando rm. Por exemplo, execute o comando hadoop fs -rm -skipTrash oss://bucket/path para excluir objetos OSS. Os objetos excluídos não são movidos para a lixeira.

Comando ls

O comando ls é executado em duas etapas: a operação getFileStatus é chamada e, em seguida, a operação listDirectory é chamada. Se ocorrer um erro de timeout ao executar o comando ls, o erro se origina na chamada da operação getFileStatus. Para corrigir o erro de timeout, siga as instruções descritas em getFileStatus appears in the error message of the exception stack.