Todos os produtos
Search
Central de documentação

ApsaraMQ for Kafka:Por que não consigo reduzir partições após excluir um tópico?

Última atualização: Jun 27, 2026

Ao excluir um tópico do ApsaraMQ for Kafka e recriá-lo com menos partições, o sistema pode redefinir a contagem de partições para o valor original e exibir uma mensagem como: "The topic is created but the partition count cannot be smaller than the previously configured number."

Esse comportamento ocorre porque versões mais antigas da instância não removem completamente as informações de roteamento do tópico durante a exclusão. Os metadados obsoletos persistem mesmo após a atualização da instância para a versão mais recente, o que impede a definição de uma contagem menor de partições ao recriar o tópico.

Nota

O Apache Kafka permite aumentar a quantidade de partições, mas não reduzi-la. Para utilizar uma contagem diferente, exclua e recrie o tópico. O problema descrito aqui é específico de versões anteriores da instância do ApsaraMQ for Kafka, nas quais metadados de roteamento obsoletos bloqueiam esse fluxo de trabalho de exclusão e recriação.

Solução

Para limpar os metadados de roteamento obsoletos e retomar o controle sobre a contagem de partições, conclua estas duas etapas em ordem.

Etapa 1: Atualize para a versão secundária mais recente

  1. Faça login no console do ApsaraMQ for Kafka.

  2. Abra a página Instance Details da sua instância.

  3. Na aba Instance Information, verifique o campo Minor Version na seção Basic Information.

    • Se a mensagem You are on the latest minor version. for exibida, pule para a Etapa 2.

    • Se a opção Minor Version Update aparecer, clique em Minor Version Update para atualizar.

Etapa 2: Limpar metadados de roteamento obsoletos

Depois que a instância estiver executando a versão secundária mais recente, limpe as informações de roteamento residuais recriando o tópico:

  1. Acesse a página Topics.

  2. Crie um tópico com a mesma configuração (nome, contagem de partições e outras definições) do tópico excluído anteriormente.

  3. Exclua este tópico recém-criado.

  4. Crie o tópico novamente com a contagem de partições desejada.

Importante

Excluir e recriar um tópico remove todas as mensagens armazenadas. Certifique-se de que os consumidores terminaram de processar todas as mensagens antes de prosseguir. Após a recriação, os consumidores precisam se reconectar e iniciarão a partir do offset disponível mais antigo.

Verifique o resultado

Na página Topics, confirme se a contagem de partições corresponde ao valor especificado.

Como evitar esse problema

Planeje a contagem de partições considerando o throughput futuro esperado. Como o Apache Kafka não oferece suporte à redução de partições em um tópico existente, escolher uma contagem adequada desde o início evita a necessidade dessa solução alternativa posteriormente.