Troubleshooting: Falhas em Uploads com Transfer-Encoding: chunked
Problema
Alguns uploads de arquivos para o Object Storage da Magalu Cloud falham com comportamento inesperado quando a requisição é enviada com o cabeçalho Transfer-Encoding: chunked
.
Esse problema afeta diversos clientes utilizando SDKs e ferramentas de linha de comando que adotam essa codificação por padrão.
Sintoma
-
Requisições PUT falham silenciosamente ou com erros
403 Forbidden
,400 Bad Request
,AccessDenied
ouchunked-encoding not supported
-
Uploads iniciam, mas o arquivo não é persistido corretamente no bucket.
Causa
A Magalu Cloud não oferece suporte completo ao cabeçalho Transfer-Encoding: chunked
. SDKs e ferramentas que utilizam essa codificação por padrão precisam ser substituídos ou configurados para evitar esse comportamento.
Soluções
1. Verificar se a ferramenta/SDK utiliza chunked encoding
Identifique se a ferramenta utilizada está aplicando Transfer-Encoding: chunked
. Esse cabeçalho costuma ser utilizado quando:
-
O corpo da requisição é transmitido em blocos.
-
O
Content-Length
não é especificado.
2. Utilizar versões homologadas
A Magalu Cloud possui uma lista de versões compatíveis de ferramentas e SDKs que não utilizam chunked
por padrão. Recomenda-se utilizar as seguintes versões:
SDKs e CLIs compatíveis:
-
aws-sdk-php <= 3.335.0
-
boto3 <= 1.35.99
-
AWS CLI <= 2.13.23
-
rclone <= 1.64.2
Referências:
3. Configuração alternativa
Caso seja necessário manter uma versão mais nova de SDK ou CLI, verifique se é possível:
- Desativar o uso de
chunked
explicitamente
Essa opção é dependente de cada SDK/ferramenta e não garantida pela Magalu Cloud.
Conclusão
Uploads com Transfer-Encoding: chunked
não são suportados pela Magalu Cloud. Para garantir compatibilidade, utilize versões homologadas das ferramentas ou SDKs, conforme documentação oficial.