Páginas filhas
  • 18207293 DFWKLOGIX-1064 DT Queda appserver na importação metadado FULL ou parcial


01. DADOS GERAIS

Produto:

TOTVS Framework

Linha de Produto:

Linha Logix

Segmento:

Tecnologia

Módulo:

Framework (Linha Logix) - Administração Logix

Função:Importação Metadado 
País:Brasil
Ticket:

18207293

Requisito/Story/Issue (informe o requisito relacionado) :DFWKLOGIX-1064


02. SITUAÇÃO/REQUISITO

Ao realizar importação metadado via rotina LOG00074 (Sincronizador metadado), informando o arquivo XML de metadado FULL ou então o arquivo XML incluído no pacote Logix, que contém em um arquivo único todas as mudanças metadado liberadas em um pacote Logix, o appserver build HARPIA está gerando falha e queda de serviço do AppServer durante o processamento, impedindo a carga de dados e gerando perda de dados do metadado.

03. SOLUÇÃO

O time de tecnologia da TOTVS SP foi acionado para providenciar a correção envolvendo a queda de AppServer ocorrida no cenário descrito acima e também avaliar o alto consumo de memória durante o processo de importação Metadado devido a um LEAK de memória.
O Build AppServer contendo a correção será posterior a versão 20.3.2.1 liberada oficialmente a partir do pacote Logix 12.1.2311, mas poderá ser utilizada em pacotes Logix a partir do pacote Logix 12.1.2305.
Acompanhe as notas de release das novas versões de build AppServer liberadas AQUI.


Em paralelo com os ajustes do build AppServer, o time de Framework Logix, desenvolveu uma nova rotina de importação Metadado, somente válida a partir do build HARPIA, que possui as seguintes vantagens:

    • Permite carregar um volume grande de arquivos XML em um menor tempo;
    • Permite informar uma pasta local ou um arquivos XML avulso para importação;
    • Realiza processamento distribuído em MULTI-THREAD para acelerar o processo de importação;
    • Processamento com controle transacional de banco de dados, impedindo a perda de dados em caso de falha na carga de arquivo XML;
    • Registro de log de processamento de importação de forma centralizada por usuário no servidor de aplicação, para facilitar o gerenciamento de possíveis falhas durante uma importação em grande escala;
    • Identificação de lista de arquivos importados com sucesso e falha após processamento;
    • Em caso de interrupção durante um processo de importação de um grande volume de arquivos XML, rotina permitirá continuar o processamento dos arquivos que ficaram pendentes de importação, sem a necessidade de reprocessamento de todos os arquivos inicialmente informados;
    • Ignora arquivos XML com tamanhos superiores a 500Kb, como forma de evitar transações de banco de dados com volume muito grande de LOCKs de registros e alto consumo de memória para carregar o conteúdo XML. Neste caso, a importação de metadado FULL ou parcial de pacote Logix precisará ser realizada sermpre com recursos do metadado individuais ou limitados a arquivos XML com no máximo 500Kb. Estes casos, quando identiicados arquivos durante o processamento, são ignorados e transferidos para uma pasta de arquivos ignorados (Pasta IGNORED).
    • Após o processamento, os arquivos importados com sucesso ou falha, são respectivamente transferidos para respectivas pastas indicativas no servidor de aplicação (Pasta SUCCESS para arquivos importados com sucesso e pasta ERROR para arquivos que falharam a importação).
    • É possível definir a chave de profile logix.metadata.Synchronizer.import.threads.max=<quantidade limite threads> com uma quantidade de até o limite máximo de 30 threads que serão executadas de forma paralela durante o processo de importação metadado. A quantidade inicial padrão são 3 threads, mas em caso de um volume muito grande de arquivos, sugere-se alterar esta chave no arquivo de profile para a quantidade desejada, sempre prezando por uma quantidade que não onere o mesmo appserver onde este processamento será realizado, pois estas threads irão concorrer com outros processos em execução no mesmo AppServer.
    • Todos arquivos de LOG e histórico de importação são registrados no servidor de aplicação localizados na pasta nomeada como SYNCMETADATA a partir da pasta informada na chave ROOTPATH do ambiente usado para execução da rotina no AppServer.


      DICA:
Para importar o metadado FULL ou parcial do pacote Logix 12.1.2311 ou anterior, utilizando essa nova aplicação, que somente é válida a partir do BUILD HARPIA, solicite via abertura de um novo ticket para o time de Framework, para que seja liberado um pacote contendo todos os respectivos recursos XML metadado em seu formato avulso (tabela, formulário, zoom) para pacote Logix desejado.


Para o build AppServer versão 7.00.131227A (32 bits), houveram alguns ajustes envovelvendo performance na leitura de arquivos XML durante a importação metadado e liberação de algumas alocações de memória para amenizar o impacto de aumento excessivo de memória de componentes controlados via código do produto, mantidos pelo time de Framework.


04. DEMAIS INFORMAÇÕES

NOTAS DE RELEASE - Application Server - Build Harpia


IMPORTANTE!

Disponível a partir do pacote oficial 12.1.2403 ou Framework Fix 12.1.2311(fix01)


05. ASSUNTOS RELACIONADOS

  • Não se aplica.