Обсуждение: crash problem

Поиск
Список
Период
Сортировка

crash problem

От
terry@greatgulfhomes.com
Дата:
My database crashed earlier.  It's starts up fine, and I can use it, but I
cannot back it up, it reports this error:
bash$ pg_dump -t letter_tag_execute_types devtest >
bkletter_tag_execute_types
getTables(): SELECT (for TRIGGER) failed.  Explanation from backend: 'ERROR:
No
 such attribute or function 'tgdeferrable'
'.

I get the same error if I try to do dumpall.

I try looking at the triggers table and this is what I get:
devtest=# select * from pg_trigger;
ERROR:  Relation pg_trigger does not have attribute
devtest=# \d pg_trigger
           Table "pg_trigger"
   Attribute    |    Type    | Modifier
----------------+------------+----------
 tgrelid        | oid        |
 tgname         | name       |
 tgfoid         | oid        |
 tgtype         | smallint   |
 tgenabled      | boolean    |
 tgisconstraint | boolean    |
 tgconstrname   | name       |
 tgconstrrelid  | oid        |
 tginitdeferred | boolean    |
 tgnargs        | smallint   |
 tgattr         | int2vector |
 tgargs         | bytea      |
Indices: pg_trigger_tgconstrname_index,
         pg_trigger_tgconstrrelid_index,
         pg_trigger_tgrelid_index

I ran a vacuum, and it did worked, but did not fix this corruption problem.

Nothing meaningful appears in the log, just messages about the "backend
terminated unexpectedly".

What do I do now?  I was hoping to upgrade to 7.2.1 this weekend, but if I
cannot back it up again, I will loose all of todays work, which was pretty
significant, I added much tables and populated a bunch also.

Any ideas is appreciated.

Thanks

Terry Fielder
Network Engineer
Great Gulf Homes / Ashton Woods Homes
terry@greatgulfhomes.com


Re: crash problem

От
Tom Lane
Дата:
terry@greatgulfhomes.com writes:
> My database crashed earlier.  It's starts up fine, and I can use it, but I
> cannot back it up, it reports this error:
> bash$ pg_dump -t letter_tag_execute_types devtest >
> bkletter_tag_execute_types
> getTables(): SELECT (for TRIGGER) failed.  Explanation from backend: 'ERROR:
> No
>  such attribute or function 'tgdeferrable'
> '.

(1) Are you sure your pg_dump version matches your backend version?
(And exactly what version are we discussing here, anyway?)

(2) A reindex of pg_attribute might help.  See the 7.2 REINDEX man page
for a reasonably complete description of how to reindex system catalogs.
The 7.1 procedure is the same, but the docs are poorer...

            regards, tom lane

PS: this is pretty far off-topic for pgsql-docs.  Please think a little
more about where to post before posting.