Como resolver uma compactação principal travada no Apache Cassandra?


14

Eu tenho um cluster Cassandra de um nó que está atualmente preso em um grande processo de compactação. Depois de executar um nodetool compact, iniciou a compactação e vejo os arquivos tmp-sstable com um tamanho de 0 bytes. Mas é só isso. Nenhum progresso por horas.

Eu já parei o serviço Cassandra, mas, após uma reinicialização, continuou a compactação novamente sem progresso. A nodetool compactionstatsmostra 0,00% de progresso e um tempo restante de seis minutos. Mas eu já esperei 24 horas. Enquanto isso, parei todos os leitores e escritores sem ver nenhuma diferença.

A versão que eu uso é 2.1.2. Eu já tentei com o OpenJDK 7 e com o Java 7 da Oracle, mas não há diferença.

Os logs não mostram indicação de OOM ou qualquer outra exceção ou aviso.

Não tenho certeza se é de alguma ajuda, mas atualmente migro para longe do Cassandra, pois ele não se encaixa nas minhas necessidades. Então, eu apago muitos dados que foram migrados. Existem muitas linhas com várias centenas até alguns milhares de colunas. Mas existem algumas linhas com um milhão de colunas. Agora eles têm muitas lápides, devido ao processo de migração (exclusão).

Qualquer ajuda em como depurar o problema é bem-vinda.


apenas uma idéia, você já viu / var / log / syslog ou onde seria registrado algo como muitos arquivos abertos / VM maxmem?
Antony Gibbs

@AntonyGibbs Nada disso. É um servidor físico sobrecarregado. Outros serviços funcionam sem problemas ao lado de Cassandra.
mailq

1
Você verificou se o processo está vinculado à CPU, vinculado à E / S ou bloqueado, aguardando outra coisa?
kasperd

1
quais são as configurações da máquina virtual java lançada? pode ser um servidor poderoso, se a instância java for limitada a 128M, ela não receberá mais. O som de nada nos logs me faz pensar limites de memória ...
Antony Gibbs

1
saída de ulimit -aum console do usuário Cassandra pode ser útil.
Antony Gibbs

Respostas:


1

Não sou especialista em cassandra, mas você tentou parar a compactação e definir um limite para compactação (setcompactionthreshold para 0), para que o sistema não tente novamente


nodetool stop - COMPACÇÃO Não ajudou. Os trabalhos ainda estão acontecendo.
Jigar Shah

@JigarShah Mesma pergunta que o OP? talvez você deva fazer uma nova pergunta para atrair novas respostas. Como talvez minha solução não o ajude, mas ajudou o OP
yagmoth555
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.