Re: Think I see a btree vacuuming bug
От | Joe Conway |
---|---|
Тема | Re: Think I see a btree vacuuming bug |
Дата | |
Msg-id | 3D72FB07.6080904@joeconway.com обсуждение исходный текст |
Ответ на | Re: Think I see a btree vacuuming bug (Bruce Momjian <pgman@candle.pha.pa.us>) |
Ответы |
Re: Think I see a btree vacuuming bug
|
Список | pgsql-hackers |
Bruce Momjian wrote: > Allow easy display of usernames in a group (pg_hba.conf uses groups now) Hows this: parts=# select * from pg_group ; groname | grosysid | grolist ---------+----------+--------------- grp | 100 | {100,101,102} grp2 | 101 | {102} (2 rows) parts=# select usename,usesysid from pg_user; usename | usesysid ----------+---------- postgres | 1 user1 | 100 user2 | 101 user3 | 102 (4 rows) CREATE FUNCTION show_group(text) RETURNS SETOF text AS ' DECLARE loginname text; low int; high int; BEGIN SELECT INTO low replace(split(array_dims(grolist),'':'',1),''['','''')::int FROM pg_group WHERE groname = $1; SELECT INTO high replace(split(array_dims(grolist),'':'',2),'']'','''')::int FROM pg_group WHERE groname = $1; FOR i IN low..high LOOP SELECT INTO loginname s.usename FROM pg_shadow s join pg_group g on s.usesysid = g.grolist[i]; RETURN NEXT loginname; END LOOP; RETURN; END; ' LANGUAGE 'plpgsql'; parts=# select * from show_group('grp'); show_group ------------ user1 user2 user3 (3 rows) parts=# select * from show_group('grp2'); show_group ------------ user1 (1 row) --Joe
В списке pgsql-hackers по дате отправления: