Обсуждение: TUPLES <> HEAP

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

TUPLES <> HEAP

От
JT Kirkpatrick
Дата:
Hi all.  Head hanging a little low, even though system still seems to work
fine.  Here is what I did:

- update pg_class set relname = lower(relname);
- update pg_attribute set attname = lower(attname);
- (why did I do that?  Following something I read, not really having
problems in the first place and  not really knowing the effects).

Now when I vacuum I get the error messages:
NOTICE:  Index pg_class_relname_index: NUMBER OF INDEX' TUPLES (108) IS NOT
THE SAME AS HEAP' (82)
NOTICE:  Index pg_class_oid_index: NUMBER OF INDEX' TUPLES (108) IS NOT THE
SAME AS HEAP' (82)

I'd like to drop these indexes and re-create them, hoping that would solve
the problem.  But I tried to drop them and postgres wouldn't let me -
claiming they were system catalog indexes.  Would dropping and recreating
the indexes get rid of the error messages?  If so, how can I drop them and
what is the proper way to recreate them?

Newbie mistakes aren't much fun.  Thanks for helping. . .

jt


Re: [GENERAL] TUPLES <> HEAP

От
Karl DeBisschop
Дата:
Not sure that you can drop/create system indexes (I didn't notice that
when I posted earlier - sorry).  But the the same idea may apply - can
you dump and recreate the database tables.

$ pg_dump existing > existing.dump
$ psql -e secondtry < exidting.dump

BTW, do you need to cross-post to all those lists?  I'm sure hackers
is not needed, and you could probably drop interfaces and maybe some
others as well.

Hope this helps.

Karl

   From: JT Kirkpatrick <jt-kirkpatrick@mpsllc.com>

   Hi all.  Head hanging a little low, even though system still seems to work
   fine.  Here is what I did:

   - update pg_class set relname = lower(relname);
   - update pg_attribute set attname = lower(attname);
   - (why did I do that?  Following something I read, not really having
   problems in the first place and  not really knowing the effects).

   Now when I vacuum I get the error messages:
   NOTICE:  Index pg_class_relname_index: NUMBER OF INDEX' TUPLES (108) IS NOT
   THE SAME AS HEAP' (82)
   NOTICE:  Index pg_class_oid_index: NUMBER OF INDEX' TUPLES (108) IS NOT THE
   SAME AS HEAP' (82)

   I'd like to drop these indexes and re-create them, hoping that would solve
   the problem.  But I tried to drop them and postgres wouldn't let me -
   claiming they were system catalog indexes.  Would dropping and recreating
   the indexes get rid of the error messages?  If so, how can I drop them and
   what is the proper way to recreate them?

   Newbie mistakes aren't much fun.  Thanks for helping. . .

   jt