23487 - Cálculo de provisão assíncrono com lentidão / locks no banco
: Ao calcular as provisões em modo assíncrono, foi verificado que o cálculo está muito lento, e gerando locks na tabela R900LCN.
Rotina / Tela: Cálculo de provisões.
Solução: Solução
: Verificamos que os locks estavam ocorrendo pois o cliente estava monitorando no VisLog várias tabelas que são alimentadas pela rotina de cálculo de provisões.
O monitoramento de tabelas através do VisLog serve para identificar possíveis alterações realizadas pelos usuários do sistema.
Não faz sentido monitorar uma tabela que é alimentada apenas pelo sistema, sem a ação de um usuário específico. A rotina de cálculo de provisões grava muitas informações nestas tabelas, e o fato delas estarem sendo monitoradas faz com que as tabelas fiquem ocupadas para gravar os registros no VisLog, e consequentemente causando locks na base, que por sua vez deixam o cálculo lento.
Não aconselhamos monitorar tabelas que são alimentadas apenas pelas rotinas internas do sistema, por isso recomendamos remover estes monitoramentos e executar a rotina de cálculo novamente.
Abaixo as tabelas que estavam sendo monitoradas e foram removidas do VisLog:
R046PRF,R046PRR,R046SLD,R104PRV,R146BAI,R146BAS,R146CLC,R146DEB,R146DEF,R146DET,R146EMP,R146PER,R146PRM,R146PRR,R146PRV e R146VIN.
Após remover estas tabelas do monitoramento do VisLog, o cálculo voltou a ser executado no tempo normal e sem locks no banco.