[gitec] DocumentosSapl.fs crescendo vertiginosamente - impossibilidade de compactação (PACK)

Fábio Kaiser Rauber fabior em interlegis.leg.br
Terça Outubro 20 10:07:34 BRST 2015


Prezado Celso,

Parabéns pela solução e documentação do problema! Reforço a indicação do 
Jean para criação de um documento no COLAB com esse tutorial, para 
servir de referências posteriores.

Um abraço,


*Fabio Kaiser Rauber*

Analista de Informática Legislativa *
*Serviço de Infraestrutura Tecnológica
Interlegis - Senado Federal
Fone: +55 (61) 3303.2602

*www.interlegis.leg.br <http://www.interlegis.leg.br>*

Em 15-10-2015 18:02, celso magela de almeida escreveu:
> Como o problema passou pela lista, estou postando a solução que 
> resolveu todos os nossos problemas:
>
> resumo do cenário:
>
> -DocumentosSapl.fs com *90Gb*  (90431.7M); com data de criação do 
> banco sapl_documentos em 17/02/2033
> -muitos documentos no banco também com data de criação no 
> futuro(17-02-2033);
> -todo documento novo desde 2014 estavam sendo criados com essa data;
> -banco de dados efetuava pack mas não reduzia tamanho;
> -não existiam pastas BTreeFolder2;
> -sapl demorava muito para responder a cada inserção de documentos;
>
> tentamos outras opções, mas nos testes, esse processo se mostrou o 
> mais rápido deles.
>
> *primeiro*, foi possível a redução do banco com um pack setando campo 
> para -6345 dias/
> Click /pack/ to pack the Zope database, removing previous revisions of 
> objects that are older than days./
> (calculado até a data 17/02/2033)
> calculando que seriam apagados todos os temporários com data mais 
> antiga que 17-02-2033.
> *O arquivo reduziu para 7,8Gb*, facilitando qualquer possível 
> movimentação.
>
> *criamos* um novo diretorio "novo" ao lado de DocumentosSapl.fs
>
> *-*no zope.conf, criamos um novo banco:
>
> <zodb_db documentos_novo>
>     # Zodb para conter documento do sapl
>     <filestorage>
>       path 
> /var/interlegis/SAPL-2.5/instances/sapl25/var/novo/DocumentosSapl.fs
>     </filestorage>
>     mount-point /sapl/sapl_documentos_novo
> </zodb_db>
>
> via ZMI, fizemos um novo ZODB Mount Point em 
> /sapl/sapl_documentos_novo, que já estava com status pronto para 
> montagem, selecionando a opção "Create new folders..."
>
> *depois*, criamos pastas BtreeFolder2 dentro de sapl_documentos_novo 
> conforme tutorial 
> https://colab.interlegis.leg.br/wiki/ConverterSaplFolderParaBtreefolder2
> porém, alterando o script "copiar.py" para que a cópia fosse feita no 
> novo banco de dados, que possuía a data de criação atual.
>
> via ZMI, copiamos os restantes das pastas de sapl_documentos para 
> sapl_documentos_novo.
>
> Estando sapl_documentos_novo com os mesmos dados que sapl_documentos, 
> porém com todas as datas atuais, excluímos todas as pastas de 
> sapl_documentos e depois o próprio sapl_documentos.
>
> alterado zope.conf, preservando o ponto de montagem 
> /sapl/sapl_documentos_novo, reiniciando
>
> alterado novamente o zope.conf, criando o ponto de montagem 
> /sapl/sapl_documentos definitivo, reiniciando,
>
> fizemos um novo ZODB Mount Point em /sapl/sapl_documentos, que já 
> estava com status pronto para montagem, selecionando a opção "Create 
> new folders..."
>
> Via ZMI, copiamos todas as pastas novamente de sapl_documentos_novo 
> para sapl_documentos.
>
> excluido todas as pastas de sapl_documentos_novo e depois o proprio 
> sapl_documentos_novo, alteramos novamente o zope.conf mantendo apenas 
> o zodb_db documentos.
>
> Reiniciamos o SAPL que virou um raio!
>
> colocamos a nova máquina em produção!
>
>
>
> Celso Magela de Almeida
> Assessor TI
> Câmara Municipal de Poços de Caldas - MG
> www.pocosdecaldas.mg.leg.br <http://www.pocosdecaldas.mg.leg.br>
> 35 - 3729-3840 - 8805-7054
>
> Em 6 de outubro de 2015 14:59, <adriano-gomes em camaranh.rs.gov.br 
> <mailto:adriano-gomes em camaranh.rs.gov.br>> escreveu:
>
>     On Mon, Oct 05, 2015 at 03:31:47PM -0300, celso magela de almeida
>     wrote:
>
>     > Uma das soluções sugeridas foi a troca das pastas para Btreefolder2.
>
>     BTreeFolder2 é apenas uma pasta mais eficiente em armazenar documentos
>     do que a Folder original. Resolve o problema da lentidão, mas acho que
>     não tem relação com o problema das datas no futuro relatado abaixo.
>
>     > 1- Novas pastas criadas e os novos arquivos incluídos no banco
>     eram todos
>     > criados com a data 2033-02-17 (Last Modified 2033-02-17 13:30),
>     apesar da
>     > máquina estar com a data atualizada em todo o sistema. Existem
>     muitos
>     > documentos com essa data. Nós não temos a menor ideia de quando
>     essa data
>     > começou a ser usada pelo SAPL.  Apesar de termos feito outras
>     instalações à
>     > partir do zero, a data foi usada aparentemente em mais de uma
>     instalação
>     > feita.  Na máquina de testes ela também está sendo aparecendo em
>     novos
>     > documentos, inclusive nas novas pastas Btreefolder2. A única
>     coisa que
>     > essas máquinas possuem em comum é o banco.
>     >
>     > 2-Mensagens no log começaram a aparecer toda vez que o sistema
>     travava:
>     > “ CRITICAL ZODB.FileStorage
>     > /var/interlegis/SAPL-2.5/instances/sapl25/var/DocumentosSapl.fs
>     Database
>     > records 548203165 seconds in the future”. Calculei quando seria
>     esses
>     > 548.203.165 segundos no futuro e bate com a data de 17-02-2033.
>
>     Humm, isso é estranho mesmo...
>
>     Apenas um comentário, uma forma prática de calcular:
>
>     $ date -d 'now + 548203165 seconds'
>
>     ou:
>
>     $ date -d '548203165 seconds'
>
>     > Agora só precisamos descobrir porque essa data está sendo usada pelo
>     > sistema e como fazer para alterar a data dos arquivos criados
>     com a data
>     > de  17-02-2033 para uma data atual.
>
>     Talvez estes scripts possam ajudar:
>     /var/interlegis/SAPL-2.5/Zope-2.9/bin
>
>     > Acredito que o tutorial para corrigir o ContentType :
>     > https://colab.interlegis.leg.br/wiki/SaplCorrigirContentType não irá
>     > corrigir a data, mas pergunto:
>     >
>     > É possível usá-lo para alterar também a data dos documentos???
>
>     Não sei. Talvez, se houver uma forma de adaptar a seguinte linha do
>     script tipos.py para usar uma possível propriedade, se houver, que
>     represente a data do documento:
>
>     item.manage_changeProperties(REQUEST=None, content_type=mime_type)
>
>     Talvez você queira tentar isso:
>     http://www.mail-archive.com/zodb-dev@zope.org/msg03916.html
>
>     Seguido disso:
>     http://stackoverflow.com/questions/8883805/zope-zodb-filestorage-data-fs-doesnt-pack-enough
>
>     --
>     Adriano Rafael Gomes
>     Analista de Suporte
>     Câmara Municipal de Novo Hamburgo
>     --
>     Histórico do grupo:
>     http://colab.interlegis.leg.br/search/?type=thread&order=latest&list=gitec
>
>     Regras de participação:
>     http://colab.interlegis.leg.br/wiki/ComoParticiparComunidade
>
>     Para administrar ou excluir sua conta visite:
>     https://listas.interlegis.gov.br/mailman/listinfo/gitec
>
>
>
>

-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.interlegis.gov.br/pipermail/gitec/attachments/20151020/f01725dd/attachment.html>


Mais detalhes sobre a lista de discussão GITEC