Páginas filhas
  • 20642923 DFWKLOGIX-1410 DT LOG6000 Travamento conversores de tabelas em build HARPIA (SQLServer)


01. DADOS GERAIS

Produto:

TOTVS Framework

Linha de Produto:

Linha Logix

Segmento:

Tecnologia

Módulo:

Framework (Linha Logix) - Banco de dados

Função:Execução de conversores de tabelas SQLSERVER - LOG6000 / LOG6050
País:Brasil
Ticket:20642923
Requisito/Story/Issue (informe o requisito relacionado) :DFWKLOGIX-1410


02. SITUAÇÃO/REQUISITO

Ao utilizar build Appserver HARPIA 20.3.2.8, a execução de conversores de tabelas a partir do LOG6000, conectando o banco SQLServer tem ocorrido travamentos ou falhas na execução.

A situação foi simulada com os conversores wms00821.cnv ou cap01037.cnv, mas aparentemente pode ocorrer em outros casos mas de forma isolada para o banco SQLServer apenas, pois trata-se de uma situação de falha no build HARPIA, mas que está provocando travamento da aplicação LOG6000.

O problema não foi identificado no build AppServer 7.00.131227A (32 bits).

03. SOLUÇÃO

Para evitar o travamento do LOG6000 para banco SQLServer, foram realizadas alterações nos fontes que processam os conversores para banco SQLServer (Log6050.4gl e Log6060.4gl) visando:

    • Ajustes de queries SQL para manter o padrão de desenvolvimento, com o correto tratamento de erro, evitando travamento durante o processamento.
    • Ajuste de queries preparadas na funcao LOG6050_exec_sql() pra rodar instruções SQL de nome dinamico usando a funcao STMTNAME()
    • Checagem de objetos existentes ou inexistentes na base antes de rodar instruções que envolvam DROP ou CREATE evitando erros de SQL desnecessários nos LOGS de execução que acabam gerando muita confusão para identificar possíveis problemas durante a análise de DEBUGs pelos times de atendimento.
    • Registro de várias mensagens de LOG de DEBUG durante o processamento usando para isso o controle de chave de ativacao de debug no profile, usando a funcao interna pra processamento de conversores CNV_DebugMessage() que faz o devido registro de mensagens no arquivo de LOG do AppServer.
    • Mudança na forma de processamento de instruções SQL nativas do SQLServer que utilizam o comando EXEC sp_<comando>, como por exemplo EXEC sp_keys, EXEC sp_helpindex, EXEC sp_depends, passaram a ser executados via SQL BLOCK (SQL..END SQL) para contornar um problema que foi identificado no build Harpia apenas.

Com todos estes ajustes foi possível identificar e isolar o problema no build que deverá estar corrigido em build superior a revisão AppServer Harpia 20.3.2.12. Já para build appserver 32 bits não foi identificado o problema.


MELHORIA NA CONCLUSÃO DE PROCESSAMENTO


     Juntamente com os ajustes mencionados acima, foi liberada melhoria da conclusão de processamento de conversores do LOG6000, onde após o término de processamento de todos conversores selecionados, é apresentada mensagem de sucesso se todos conversores forem executados com sucesso ou alertará sobre a existência de erros caso tenha ocorrido problema em um ou mais conversores.
     Ao final do processamento o usuário também terá possibilidade de navegar entre todos os conversores apresentados na lista da tela, onde o STATUS DE EXECUÇÃO foi atualizado para E (Executado) ou se manteve como P (PENDENTE) caso não tenha sido selecionado ou tenha ocorrido algum erro de execução.
     Os conversores que apresentaram problemas serão os conversores que foram previamente selecionados para serem executados, mas a informação do STATUS continuará como P (PENDENTE). Acesse os botões de DETALHES ou INSTRUÇÕES para obter mais detalhes de cada conversor executado.

Futuramente essas mesmas alterações serão realizadas também nos fontes envolvidos na execução de conversores para bancos ORACLE e INFORMIX, visando a padronização e melhora na geração de LOGs de processamento.

04. DEMAIS INFORMAÇÕES


INFORMAÇÕES A RESPEITO DE CORREÇÕES NO BUILD HARPIA


Esta liberação consegue resolver o travamento durante o processamento de conversores no programa LOG6000 para banco SQLServer que ocorre apenas com build revisão Harpia 20.3.2.12

O build AppServer Harpia sofrerá ajustes para corrigir a situação para execução de instruções SQL nativas do SQLServer utilizando SQL PREPARE / EXECUTE para comandos como por exemplo EXEC sp_<comando>.

A versão corrigida do respectivo build Harpia estará disponível em revisão igual ou superior a AppServer 20.3.2.13. Confira a disponibilidade da correção acessando as notas de release do AppServer clicando AQUI.


IMPORTANTE!

Disponível a partir do pacote oficial 12.1.2411 ou Framework Fix 12.1.2407(fix01)


05. ASSUNTOS RELACIONADOS

  • Não se aplica.