Árvore de páginas

Melhoria - Performance em abertura, posicionamento e leitura de tabelas com banco de dados Oracle

Esta build contém uma melhoria de performance significativa nas rotinas de abertura, posicionamento e leitura de dados de tabelas quando utilizado o TOTVSDBAccess com o banco de dados Oracle.

Abrangência ERP 10

Situação

Abertura de tabelas, operação de DBGoTop()/DBGoBottom() e navegação/leitura na tabela utilizando DBSkip().
 

Ocorrência

A query executada pelo TOTVSDBAccess para determinar e ler os primeiros registros da tabela sob uma determinada ordem de índice, mesmo sem filtro na tabela, poderia apresentar problemas de performance com tabelas grandes.

As queries de navegação em tabela, quando habilitado uso de hint de índice, colocavam o hint inclusive em tabelas filtradas.

Melhorias

  • As queries dinâmicas do TOTVSDBAccess para as operações de DBGoTop() e DBGoBottom() foram re-escritas, para utilizar hints diferenciados e opções de otimização do banco de dados, suportadas a partir do Oracle 9.x, obtendo ganhos significativos de performance nesta operação.
     
  • As queries dinâmicas de navegação, quando utilizarem o hint de limite de registros FIRST_ROWS, passam a informar na query o número de registros esperado.
     
  • As queries dinâmincas de navegação, quando configuradas para uso de hint de índice (padrão = ativo), não vão mais acrescentar o hint caso a tabela esteja filtrada.

Informação adicional

  • Melhoria realizada mediante análise e feedback de uso da ferramenta.

 

  • Sem rótulos