Thanks for the response Doug. I am frightened to upgrade the linux
machine to 8.0.3 at the moment because the server is live and I want to
make sure that 8.0.3 will fix it. I have extracted the relevant parts of
the restore as follows:
1. The restore command
pg_restore.exe -i -h 10.202.6.195 -p 5432 -U postgres -d export -l
"backup9.backup"
2. The first error in the output.
pg_restore: creating FUNCTION dex_init(text)
pg_restore: [archiver (db)] Error while PROCESSING TOC:
pg_restore: [archiver (db)] Error from TOC entry 25; 1255 72303
FUNCTION dex_init(text) postgres
pg_restore: [archiver (db)] could not execute query: ERROR: unsafe
use of INTERNAL pseudo-type
DETAIL: A function returning "internal" must have at least one
"internal" argument.
Command was: CREATE FUNCTION dex_init(text) RETURNS internal
AS '$libdir/tsearch2', 'dex_init'
LANGUAGE c;
This was intalled to a clean database on XP with no tsearch2 installed.
To me it looks as if there has been some modification in the use of
INTERNAL from 8.0.1 to 8.0.3.
FYI here is a dump of that tsearch2 function:
CREATE OR REPLACE FUNCTION dex_init(text)
RETURNS internal AS
'$libdir/tsearch2', 'dex_init'
LANGUAGE 'c' VOLATILE;
ALTER FUNCTION dex_init(text) OWNER TO postgres;
Is it possible to change that function to be compatible with both 8.0.1
and 8.0.3 - or am I looking in the wrong place?
Howard
www.selestial.com
I would suggest upgrading to 8.0.3 on the linux machine, just to make
sure you get all pg_dump bugfixes, then retrying the dump/restore.
AFAIK there's no reason it shouldn't work. If you still have trouble,
post the exact dump and restore commands you're using and the exact
error message you get.
-Doug
---------------------------(end of broadcast)---------------------------
TIP 5: Have you checked our extensive FAQ?
http://www.postgresql.org/docs/faq
---------------------------(end of broadcast)---------------------------
TIP 9: the planner will ignore your desire to choose an index scan if your
joining column's datatypes do not match