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
Disponível a partir do pacote oficial 12.1.2403 ou Framework Fix 12.1.2311(fix01)IMPORTANTE!
05. ASSUNTOS RELACIONADOS
- Não se aplica.