[firebase-br] FB5 - Desempenho SELECT com VALOR IN (CAMPO, CAMPO2, ... )

Carlos H. Cantu listas em warmboot.com.br
Terça Julho 23 20:47:45 -03 2024


Isso parece ser uma regreção do otimizador!

Reporte na lista fb-devel no GoogleGroups para que os core developers possam 
analisar e se for o caso corrigir o otimizador.

[]s
Carlos H. Cantu
eBook Guia de Migração para o FB 5 - www.firebase.com.br/guiafb5.php
www.FireBase.com.br - www.firebirdnews.org - blog.firebase.com.br

FGvl> Boa noite!

FGvl> Legal ver o forum mais movimentado novamente.

FGvl> Eu também estou nos testes de migração de FB2.5 para FB5.
FGvl> Tem um recurso que uso muito no 2.5 que é

FGvl> SELECT CAMPO FROM TABELA WHERE '12345679' IN ( CAMPO1, CAMPO2)

FGvl> Esses 2 campos tem índices próprios, isto é, cada um tem um.
FGvl> No Firebird 2.5 ele usa os 2 índices para pesquisar, retorna bem rápido.
FGvl> No Firebird 5 ele não usa nenhum, fazendo um PLAN NATURAL , bem lento
FGvl> naturalmente pelo volume da tabela.
FGvl> No Firebird 5 se eu alterar a pesquisa para WHERE CAMPO1 = '12345679' OR
FGvl> CAMPO2 = '12345679' ele vai usar índice.

FGvl> Fiz um teste criando um índice com os 2 campos e mesmo assim o Firebird 5
FGvl> ainda retorna PLAN NATURAL. Alguém já passou ? Não queria ter que alterar
FGvl> uma pesquisa bem difundida na minha aplicação.

FGvl> Frederico




Mais detalhes sobre a lista de discussão lista