Por motivos de segurança, pg_dump (ou pg_restore) emite um comando que esvazia o search_path, então quando você restaura o processo é executado com um caminho de pesquisa vazio. Mas ele não edita o corpo do texto de sua função, mas o emite como está, portanto, não pode alterá-lo para especificar o nome totalmente qualificado da tabela. Portanto, a função não pode encontrar a tabela quando executada dentro do processo de restauração.
Você pode qualificar totalmente o nome da tabela na função ou pode definir a função com
SET search_path = public
. Ou você pode editar o arquivo de despejo para remover a parte que limpa o search_path, se não estiver preocupado com as implicações de segurança.