On Tue, 14 Nov 2006 21:26:02 +0200, Igor Shevchenko wrote:
>> I'd think starting a standalone backend and issuing a "reindex database"
>> should be enough to get him started. Now, the problem is figuring _how_
>> the index got in that state; or even _what_ index is the problematic
>> one. (I think it would be possible to find out by setting the
>> "log_error_verbosity" parameter to "verbose").
>
> The problem is, it won't start even in the standalone mode. It prints the same
> error message and dies. I was trying to start it connected to my main db,
> template0, template1 and postgres, no change. The index corruption (assuming
> this IS an index corruption) must've happened with system table(s). Is there
> any way to diagose that ? Maybe reindex a specific table without starting
> postmaster, or remove certain index files physically (e.g. for pg_class,
> etc) ?
I think you want to use -P to ignore the indexes on startup:
postgres -D /usr/local/pgsql/data -P my_database
Does that help - then you might get the chance to do a REINDEX?
Regards
John