On 10/05/2011 05:27 PM, Alexander Farber wrote:
Thank you Michael, but no -

On Wed, Oct 5, 2011 at 5:24 PM, Michael Glaesemann <grzm@seespotcode.net> wrote:
psql:pref-2011-10-05-a.sql:339: ERROR:  function "pref_update_match"
already exists with same argument types
ALTER FUNCTION
Likely someone mistakenly added the functions to template1 of the machine you're restoring onto and they're getting added to the new database when it's created.
# psql -U postgres -W template1
Password for user postgres:
psql (8.4.7)
Type "help" for help.

template1=# \df
                       List of functions
 Schema | Name | Result data type | Argument data types | Type
--------+------+------------------+---------------------+------
(0 rows)
What is your process for creating the database?
Did you run your script once and then run it again after failure? It does not run in a transaction, unless you ask it to, so if it failed on something and you want to run it again, you should drop the database and create it again.