Pergunta
· Set. 9, 2021

Purge padrão não apaga as Streams

Olá comunidade!

Estou enfrentando um problema de crescimento da base, que está sendo gerado por um processo e por uma característica do Ensemble.

Ao executar o processo de limpeza das filas de mensagens o Ensemble “preserva” as Streams que fizeram parte dessas mensagens apagando somente o Header e Body. Desta forma a base de dados (de um dos namespaces) tem crescido cerca de 60GB por dia, o que vem estourando a capacidade do disco.

A InterSystems informou que isso se trata de uma característica e que está explicado nos documentos abaixo mencionados.

https://community.intersystems.com/post/ensemble-orphaned-messages

E também nesta parte da documentação: https://cedocs.intersystems.com/ens201812/csp/docbook/DocBook.UI.Page.cl...

Penso que o procedimento é implementar a remoção desses objetos tipo stream no método %OnDelete() da classe referente a essa mensagem, porém a complexidade dessa mensagem faz com que essa propriedade específica não seja alcançada pelo purge padrão. A stream não é exatamente o que tem no conteúdo, pois dentro dele você pode ter campos do tipo Stream, GlobalCharacterStream, etc.

São esses campos que ele não apaga e ele deveria apagar. Pelo que entendi os dados ficam dentro de uma global chamada ^CacheStream e de lá elas nunca são apagadas.

Com isso estou tendo dificuldades em saber o que tem dentro dela, o que é de cada interface e o que ainda está sendo usado. Tendo em vista que ela não tem ligação direta com as classes de Stream.

Alguém já teve um problema assim que possa me auxiliar?

Desde já agradeço,

Guilherme Koerber.

Product version: Ensemble 2018.1
Discussão (3)1
Entre ou crie uma conta para continuar