indexes on functions and create or replace function - Mailing list pgsql-general

From Matthew Dennis
Subject indexes on functions and create or replace function
Date
Msg-id e94d85500808272230l10cf9a81jc7dda68b9302bb9@mail.gmail.com
Whole thread Raw
Responses Re: indexes on functions and create or replace function  (Tom Lane <tgl@sss.pgh.pa.us>)
Re: indexes on functions and create or replace function  (Peter Eisentraut <peter_e@gmx.net>)
List pgsql-general
Given table T(c1 int) and function F(arg int) create an index on T using F(c1).  It appears that if you execute "create or replace function F" and provide a different implementation that the index still contains the results from the original implementation, thus if you execute something like "select * from T where F(c1)" after replacing the function that it now misses rows that should be returned.  In other words, the index isn't aware the function is now returning different values.  That's not the correct/expected behavior is it?  I would have expected that replacing the function would have caused any indexes that depend on that function to be reindexed/recreated with the new function implementation.

pgsql-general by date:

Previous
From: Tom Lane
Date:
Subject: Re: 8.3.1 query plan
Next
From: "Richard Broersma"
Date:
Subject: Feature Request: additional extension to UPDATE