Thread: ERROR: cache lookup for userid 26 failed

ERROR: cache lookup for userid 26 failed

From
"Vilson farias"
Date:
Greetings,


Does anyone know what is this error?

ERROR:  cache lookup for userid 26 failed

Some system tables are inacessible in my database but I can access others. I tried to check pg_tables, but it's blocked
:

persona=> select * from pg_tables;
ERROR:  cache lookup for userid 26 failed
persona=>

The table pg_class tells me that I'm the user of the table (me, postgres user), but always I get this msg. What can be
doneto kick it out? 

persona=>  select * from pg_class
persona-> ;
             relname             | reltype | relowner | relam | relpages | reltuples | rell
ongrelid | relhasindex | relisshared | relkind | relnatts | relchecks | reltriggers | reluk
eys | relfkeys | relrefs | relhaspkey | relhasrules | relacl
---------------------------------+---------+----------+-------+----------+-----------+-----
---------+-------------+-------------+---------+----------+-----------+-------------+------
----+----------+---------+------------+-------------+--------
 pg_type                         |      71 |       26 |     0 |        2 |       122 |
       0 | t           | f           | r       |       16 |         0 |           0 |
  0 |        0 |       0 | f          | f           |
 pg_attribute                    |      75 |       26 |     0 |        6 |       461 |
       0 | t           | f           | r       |       15 |         0 |           0 |
  0 |        0 |       0 | f          | f           |
 pg_proc                         |      81 |       26 |     0 |       26 |      1083 |
       0 | t           | f           | r       |       16 |         0 |           0 |
  0 |        0 |       0 | f          | f           |

 tele_fidel_hierarq              |       0 |       26 |     0 |      176 |      6592 |
       0 | t           | f           | r       |        7 |         0 |           1 |
  0 |        0 |       0 | f          | f           |
 tipo_atendimento                |       0 |       26 |     0 |       10 |      1000 |
       0 | t           | f           | r       |        3 |         0 |           2 |
  0 |        0 |       0 | f          | f           |
(69 rows)


My linux users are ok. Postgres has 26 as user_id.

[postgres@bxsgalena postgres]$ cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
...
postgres:x:26:26:PostgreSQL Server:/home/postgres:/bin/bash


[postgres@bxsgalena postgres]$ cat /etc/group
root:x:0:root
...
postgres:x:26:


The database was working very well, but I don't know what was done to it, because another guy did the last maintenance.

That's all for now. Thanks in advance and my best regards!


Re: ERROR: cache lookup for userid 26 failed

From
Tom Lane
Date:
"Vilson farias" <vilson.farias@digitro.com.br> writes:
> Does anyone know what is this error?
> ERROR:  cache lookup for userid 26 failed

Evidently pg_shadow has no entry with usesysid 26.  Add it back...

            regards, tom lane

Still getting problems with -cache lookup for userid 26 failed-

From
"Vilson farias"
Date:
How do you mean, Tom?

> "Vilson farias" <vilson.farias@digitro.com.br> writes:
> > Does anyone know what is this error?
> > ERROR:  cache lookup for userid 26 failed
>
> Evidently pg_shadow has no entry with usesysid 26.  Add it back...
>
> regards, tom lane
>

I dont have a pg_shadow file, I use a passwd file instead. Inside passwd there is only one line :
postgres:LtOj6bwu7TF7k

My pg_hba.conf :
local        all                                           trust
host         all         127.0.0.1     255.255.255.255     trust
host         all         192.168.160.0 255.255.255.0       password     passwd
host         all         192.168.162.0 255.255.255.0       password     passwd

My /etc/passwd :
postgres:x:26:26:PostgreSQL Server:/home/postgres:/bin/bash

My /etc/group
postgres:x:26:

And if this is a passwd (pg_shadow) error, why can I access some tables and other not?


persona=>  select * from pg_class
persona-> ;
             relname             | reltype | relowner | relam | relpages | reltuples | rell
ongrelid | relhasindex | relisshared | relkind | relnatts | relchecks | reltriggers | reluk
eys | relfkeys | relrefs | relhaspkey | relhasrules | relacl
---------------------------------+---------+----------+-------+----------+-----------+-----
---------+-------------+-------------+---------+----------+-----------+-------------+------
----+----------+---------+------------+-------------+--------
 pg_type                         |      71 |       26 |     0 |        2 |       122 |
       0 | t           | f           | r       |       16 |         0 |           0 |
  0 |        0 |       0 | f          | f           |
 pg_attribute                    |      75 |       26 |     0 |        6 |       461 |
       0 | t           | f           | r       |       15 |         0 |           0 |
  0 |        0 |       0 | f          | f           |
 pg_proc                         |      81 |       26 |     0 |       26 |      1083 |
       0 | t           | f           | r       |       16 |         0 |           0 |
  0 |        0 |       0 | f          | f           |

 tele_fidel_hierarq              |       0 |       26 |     0 |      176 |      6592 |
       0 | t           | f           | r       |        7 |         0 |           1 |
  0 |        0 |       0 | f          | f           |
 tipo_atendimento                |       0 |       26 |     0 |       10 |      1000 |
       0 | t           | f           | r       |        3 |         0 |           2 |
  0 |        0 |       0 | f          | f           |
(69 rows)

Regards,

José Vilson de Mello de Farias
Dígitro Tecnologia Ltda - Brazil


----- Original Message -----
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Vilson farias <vilson.farias@digitro.com.br>
Cc: <pgsql-general@postgresql.org>
Sent: Segunda-feira, 18 de Junho de 2001 16:57
Subject: Re: [GENERAL] ERROR: cache lookup for userid 26 failed


Re: Still getting problems with -cache lookup for userid 26 failed-

From
Tom Lane
Date:
"Vilson farias" <vilson.farias@digitro.com.br> writes:
>> Evidently pg_shadow has no entry with usesysid 26.  Add it back...

> I dont have a pg_shadow file, I use a passwd file instead.

Yes, you do have a pg_shadow table.  If you think you can have PG users
who aren't listed in pg_shadow, you've just found out differently.

            regards, tom lane

Re: Still getting problems with -cache lookup for userid 26 failed- (PART 2)

From
"Vilson farias"
Date:
Sorry, I do have a pg_shadow file, but it's empty.

I have a pg_pwd too with this text inside :
[postgres@bxsgalena data]$ cat pg_pwd
postgres        0       x       x       x       x       1       \N

What is it used for? I couldn't find info about this file in html docs. I have another postgre installed here and in
thatmachine (working very well) pg_pwd is empty. 

Regards.

> How do you mean, Tom?
>
> > "Vilson farias" <vilson.farias@digitro.com.br> writes:
> > > Does anyone know what is this error?
> > > ERROR:  cache lookup for userid 26 failed
> >
> > Evidently pg_shadow has no entry with usesysid 26.  Add it back...
> >
> > regards, tom lane
> >
>
> I dont have a pg_shadow file, I use a passwd file instead. Inside passwd there is only one line :
> postgres:LtOj6bwu7TF7k
>
> My pg_hba.conf :
> local        all                                           trust
> host         all         127.0.0.1     255.255.255.255     trust
> host         all         192.168.160.0 255.255.255.0       password     passwd
> host         all         192.168.162.0 255.255.255.0       password     passwd
>
> My /etc/passwd :
> postgres:x:26:26:PostgreSQL Server:/home/postgres:/bin/bash
>
> My /etc/group
> postgres:x:26:
>
> And if this is a passwd (pg_shadow) error, why can I access some tables and other not?
>
>
> persona=>  select * from pg_class
> persona-> ;
>              relname             | reltype | relowner | relam | relpages | reltuples | rell
> ongrelid | relhasindex | relisshared | relkind | relnatts | relchecks | reltriggers | reluk
> eys | relfkeys | relrefs | relhaspkey | relhasrules | relacl
> ---------------------------------+---------+----------+-------+----------+-----------+-----
> ---------+-------------+-------------+---------+----------+-----------+-------------+------
> ----+----------+---------+------------+-------------+--------
>  pg_type                         |      71 |       26 |     0 |        2 |       122 |
>        0 | t           | f           | r       |       16 |         0 |           0 |
>   0 |        0 |       0 | f          | f           |
>  pg_attribute                    |      75 |       26 |     0 |        6 |       461 |
>        0 | t           | f           | r       |       15 |         0 |           0 |
>   0 |        0 |       0 | f          | f           |
>  pg_proc                         |      81 |       26 |     0 |       26 |      1083 |
>        0 | t           | f           | r       |       16 |         0 |           0 |
>   0 |        0 |       0 | f          | f           |
>
>  tele_fidel_hierarq              |       0 |       26 |     0 |      176 |      6592 |
>        0 | t           | f           | r       |        7 |         0 |           1 |
>   0 |        0 |       0 | f          | f           |
>  tipo_atendimento                |       0 |       26 |     0 |       10 |      1000 |
>        0 | t           | f           | r       |        3 |         0 |           2 |
>   0 |        0 |       0 | f          | f           |
> (69 rows)
>
> Regards,
>
> José Vilson de Mello de Farias
> Dígitro Tecnologia Ltda - Brazil
>
>
> ----- Original Message -----
> From: Tom Lane <tgl@sss.pgh.pa.us>
> To: Vilson farias <vilson.farias@digitro.com.br>
> Cc: <pgsql-general@postgresql.org>
> Sent: Segunda-feira, 18 de Junho de 2001 16:57
> Subject: Re: [GENERAL] ERROR: cache lookup for userid 26 failed
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 1: subscribe and unsubscribe commands go to majordomo@postgresql.org
>


"Vilson farias" <vilson.farias@digitro.com.br> writes:
> I have a pg_pwd too with this text inside :
> [postgres@bxsgalena data]$ cat pg_pwd
> postgres        0       x       x       x       x       1       \N

> What is it used for?

pg_pwd is a plain-ASCII dump of the pg_shadow table.  It's used by the
postmaster (since the postmaster can't read database tables by itself).
AFAIR it's only used if you specify password auth based on the pg_shadow
password.

However, you need to have pg_shadow entries for all your PG users
regardless of what your connection authorization setup may be.
relowner and so forth are supposed to be references to pg_shadow rows.

            regards, tom lane

Greetings again,

  I'm still getting problems, could you give me some more info about how can I change pg_shadow?

persona=> insert into pg_shadow values('postgres', 26, 't', 't', 't', 't', '', NULL);
ERROR:  pg_shadow: Permission denied.

persona=> select * from pg_shadow;
ERROR:  pg_shadow: Permission denied.

persona=> select * from pg_user;
ERROR:  cache lookup for userid 26 failed

persona=> alter user postgres CREATEUSER;
ERROR:  ALTER USER: permission denied


After all that errors, I killed postmaster and started a single postgres process, with -O activated and still nothing.

[postgres@bxsgalena postgres]$  postgres -d $PGDATA -O persona
010619.15:47:26.088     [0] DEBUG:  Data Base System is starting up at Tue Jun 19 15:47:26 2001
010619.15:47:26.088     [0] DEBUG:  Data Base System was interrupted being in production at Tue Jun 19 15:46:46 2001
010619.15:47:26.110     [0] DEBUG:  Data Base System is in production state at Tue Jun 19 15:47:26 2001

POSTGRES backend interactive interface
$Revision: 1.155.2.1 $ $Date: 2000/08/30 21:19:32 $

backend> select * from pg_shadow
010619.15:47:42.213     [0] ERROR:  pg_shadow: Permission denied.
010619.15:47:42.213     [0] ERROR:  pg_shadow: Permission denied.
backend>

Regards,

José Vilson de Mello de Farias
Dígitro Tecnologia Ltda - Brazil

----- Original Message -----
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Vilson farias <vilson.farias@digitro.com.br>
Cc: <pgsql-general@postgresql.org>
Sent: Terça-feira, 19 de Junho de 2001 12:48
Subject: Re: [GENERAL] Re: Still getting problems with -cache lookup for userid 26 failed- (PART 2)


> "Vilson farias" <vilson.farias@digitro.com.br> writes:
> > I have a pg_pwd too with this text inside :
> > [postgres@bxsgalena data]$ cat pg_pwd
> > postgres        0       x       x       x       x       1       \N
>
> > What is it used for?
>
> pg_pwd is a plain-ASCII dump of the pg_shadow table.  It's used by the
> postmaster (since the postmaster can't read database tables by itself).
> AFAIR it's only used if you specify password auth based on the pg_shadow
> password.
>
> However, you need to have pg_shadow entries for all your PG users
> regardless of what your connection authorization setup may be.
> relowner and so forth are supposed to be references to pg_shadow rows.
>
> regards, tom lane
>
> ---------------------------(end of broadcast)---------------------------
> TIP 3: if posting/reading through Usenet, please send an appropriate
> subscribe-nomail command to majordomo@postgresql.org so that your
> message can get through to the mailing list cleanly
>


Cache lookup problems dont go away

From
"Vilson farias"
Date:
Greetings again,

  I'm still getting problems, could you give me some more info about how can I change pg_shadow? I tried lots of ways
andnothing works, because it seens to be unaccessible. 

 persona=> insert into pg_shadow values('postgres', 26, 't', 't', 't', 't', '', NULL);
 ERROR:  pg_shadow: Permission denied.

 persona=> select * from pg_shadow;
 ERROR:  pg_shadow: Permission denied.

 persona=> select * from pg_user;
 ERROR:  cache lookup for userid 26 failed

 persona=> alter user postgres CREATEUSER;
 ERROR:  ALTER USER: permission denied


 After all that errors, I killed postmaster and started a single postgres process, with -O activated and still nothing.

 [postgres@bxsgalena postgres]$  postgres -d $PGDATA -O persona
 010619.15:47:26.088     [0] DEBUG:  Data Base System is starting up at Tue Jun 19 15:47:26 2001
 010619.15:47:26.088     [0] DEBUG:  Data Base System was interrupted being in production at Tue Jun 19 5:46:46 2001
 010619.15:47:26.110     [0] DEBUG:  Data Base System is in production state at Tue Jun 19 15:47:26 2001
 > POSTGRES backend interactive interface
 $Revision: 1.155.2.1 $ $Date: 2000/08/30 21:19:32 $

 backend> select * from pg_shadow
 010619.15:47:42.213     [0] ERROR:  pg_shadow: Permission denied.
 010619.15:47:42.213     [0] ERROR:  pg_shadow: Permission denied.
 backend>

 Regards,

 José Vilson de Mello de Farias
 Dígitro Tecnologia Ltda - Brazil

> ----- Original Message -----
> From: Tom Lane <tgl@sss.pgh.pa.us>
> To: Vilson farias <vilson.farias@digitro.com.br>
> Cc: <pgsql-general@postgresql.org>
> Sent: Terça-feira, 19 de Junho de 2001 12:48
> Subject: Re: [GENERAL] Re: Still getting problems with -cache lookup for userid 26 failed- (PART 2)
>
>
> > "Vilson farias" <vilson.farias@digitro.com.br> writes:
> > > I have a pg_pwd too with this text inside :
> > > [postgres@bxsgalena data]$ cat pg_pwd
> > > postgres        0       x       x       x       x       1       \N
> >
> > > What is it used for?
> >
> > pg_pwd is a plain-ASCII dump of the pg_shadow table.  It's used by the
> > postmaster (since the postmaster can't read database tables by itself).
> > AFAIR it's only used if you specify password auth based on the pg_shadow
> > password.
> >
> > However, you need to have pg_shadow entries for all your PG users
> > regardless of what your connection authorization setup may be.
> > relowner and so forth are supposed to be references to pg_shadow rows.
> >
> > regards, tom lane
> >
> > ---------------------------(end of broadcast)---------------------------
> > TIP 3: if posting/reading through Usenet, please send an appropriate
> > subscribe-nomail command to majordomo@postgresql.org so that your
> > message can get through to the mailing list cleanly
> >
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 3: if posting/reading through Usenet, please send an appropriate
> subscribe-nomail command to majordomo@postgresql.org so that your
> message can get through to the mailing list cleanly
>