Em 28 de junho de 2017 22:57, Ronaldo Bernardes Pereira < ronaldobernar...@gmail.com> escreveu:
> --=========== Como acredito que você irá resolver seu problema, seque > considerações > > O problema encontrado é que o PostgreSQL fez um CAST da coluna (gn) > (Filter: ((gn)::text = '9000000'::text)) para atender o tipo de argumento > da FUNCTION que era do tipo text e no caso a coluna que ele comparava era > do tipo char. Como o tamanho do campo tipo text pode ser muito maior do que > um campo tipo char, houve então o CAST implícito pelo PostgreSQL e com > isso única alternativa que ele tinha nesse caso era fazer um seq scan, pois > o índice não atendia para esse caso. > > --=========== -->> Sugestões: > > 1 - Qual o tipo da coluna nfce_chave_acesso_fk e chave_acesso para > entender melhor o problema? > Ambas são VARCHAR(44), esta é a chave de acesso de uma Nota Fiscal Eletrônica (NFe e NFCe). > 2 - Colocar o tipo do argumento da FUNCTION com o mesmo tipo da coluna, > para não ocorrer CAST implícito das colunas nfce_chave_acesso_fk ou > chave_acesso > Vamos fazer esta alteração, a procedure "sp_importa_xml_nfce" é nova e ainda não está em produção. > 3 - Caso não tenha como mudar (...) > 4 - Executar e nos passar o resultado > Sim, testei aqui na "sp_teste" e funcionou. Muito obrigado! Em breve vamos retomar o desenvolvimento do aplicativo Golang que consome a "sp_importa_xml_nfce" e poderemos dar um retorno mais preciso. -- Atenciosamente, Alexsander da Rosa
_______________________________________________ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral