Thread: Corrupted table . . .

Corrupted table . . .

From
Robert Mosher
Date:
Ok. I did some poking around where postgres sticks the databases, and
noticed that, yes, my table (info) does not exist in it's databases
directory. However there is an infoold file. Could I move/copy the
infoold file to info, so that when I tried to access info, there would be
something to access. Or could I just 'touch info' giving psql something
to delete, and then delete the table?

Or are these all just bad ideas that are likely to wreak havoc?


>In a Perl script I ended up trying to UPDATE a row in my database with a
>value that was out of the range. Now whenever I try to do something with
>the table I get the error:
>
>    ERROR:  mdopen: couldn't open tablename: No such file or directory
>
>I can't even drop the table, despite the fact that it shows up when I
>enter '\dt' in psql. I could probably run destroydb on the
>database that contains the table, but I would prefer not too (although if
>it comes to it, it wouldn't be too devastating). Is there anyway to fix
>this problem.
>
>Note: The type of the field that was out of range is int4. When I
>recreate the table I'm planning to make it of type int8, but would like
>to know if there is a type for unsigned integers?
>
>Thanks,
>Rob Mosher


Re: Corrupted table . . .

From
"Stephan Szabo"
Date:
> Ok. I did some poking around where postgres sticks the databases, and
> noticed that, yes, my table (info) does not exist in it's databases
> directory. However there is an infoold file. Could I move/copy the
> infoold file to info, so that when I tried to access info, there would be
> something to access. Or could I just 'touch info' giving psql something
> to delete, and then delete the table?
>
> Or are these all just bad ideas that are likely to wreak havoc?

Well, on a more recent version I've had success on just touching the correct
file, so I would think that'd work for you to get you into a state where you
could
deal with the table.



_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com