Thread: Functions not dropped.
I was a little surprised today when I tried to move a production database on to my test server. The test server already had a copy of the database so I did psql -Uadmin template1 drop database admin; create database admin; When I tried to reload the production database dump, I got a series of errors relating to functions. I repeated the exercise but this time did a \df prior to trying to load the database. In the public schema for the newly created admin database where all the functions from the old one. It seems that the drop database doesn't drop all of the functions. Is it supposed to ? I am using 7.4.2 on FC2. If it isn't is there a way to clean them all out before the load ? -- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= Glen and Rosanne Eustace, GodZone Internet Services, a division of AGRE Enterprises Ltd., P.O. Box 8020, Palmerston North, New Zealand 5301 Ph/Fax: +64 6 357 8168, Mob: +64 27 5 424 015, Web: www.godzone.net.nz "A Ministry specialising in providing low-cost professional Internet Services to NZ Christian Churches, Ministries and Organisations"
On 1 Nov 2004 at 20:45, Glen Eustace wrote: > When I tried to reload the production database dump, I got a series of > errors relating to functions. I repeated the exercise but this time did > a \df prior to trying to load the database. In the public schema for the > newly created admin database where all the functions from the old one. > It seems that the drop database doesn't drop all of the functions. Is it > supposed to ? I am using 7.4.2 on FC2. > > If it isn't is there a way to clean them all out before the load ? > It's more likely that the functions are defined in the template1 database and so get copied to every new database. You should remove them from there if you don't want this behaviour. Cheers, Gary.
I would check the template1 database to see if you had the functions defined there as well. Any functions/structures/data... in template1 will be moved to the new database. Then when you try to restore the old one it will conflict. Thank You Sim Zacks IT Manager CompuLab 04-829-0145 - Office 04-832-5251 - Fax ________________________________________________________________________________ I was a little surprised today when I tried to move a production database on to my test server. The test server already had a copy of the database so I did psql -Uadmin template1 drop database admin; create database admin; When I tried to reload the production database dump, I got a series of errors relating to functions. I repeated the exercise but this time did a \df prior to trying to load the database. In the public schema for the newly created admin database where all the functions from the old one. It seems that the drop database doesn't drop all of the functions. Is it supposed to ? I am using 7.4.2 on FC2. If it isn't is there a way to clean them all out before the load ? -- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= Glen and Rosanne Eustace, GodZone Internet Services, a division of AGRE Enterprises Ltd., P.O. Box 8020, Palmerston North, New Zealand 5301 Ph/Fax: +64 6 357 8168, Mob: +64 27 5 424 015, Web: www.godzone.net.nz "A Ministry specialising in providing low-cost professional Internet Services to NZ Christian Churches, Ministries and Organisations" ---------------------------(end of broadcast)--------------------------- TIP 4: Don't 'kill -9' the postmaster
On Mon, 2004-11-01 at 21:14, Sim Zacks wrote: > I would check the template1 database to see if you had the functions > defined there as well. > Any functions/structures/data... in template1 will be moved to the new > database. Then when you try to restore the old one it will conflict. Thanks you. That is exactly what had happened. I recall on a previous exercise loading the database but forgetting to created the admin db first and it loading the whole lot into template1. I remember cleaning out all the tables etc, I must have forgotten the functions. Time to re-init the installation.