От съображения за сигурност pg_dump (или pg_restore) излъчва команда, която изпразва search_path, така че когато възстановите, процесът се изпълнява с празен път за търсене. Но той изобщо не редактира текстовото тяло на вашата функция, а го излъчва такъв, какъвто е, така че не може да го промени, за да посочи пълното име на таблицата. Така че функцията не може да намери таблицата, когато се изпълнява в процеса, извършващ възстановяването.
Можете напълно да квалифицирате името на таблицата във функцията или можете да дефинирате функцията с SET search_path = public
. Или можете да редактирате дъмп файла, за да премахнете частта, която изчиства search_path, ако не се притеснявате от последиците за сигурността.