Greetings,
At http://www.postgresql.org/docs/8.2/static/sql-set-role.html, we
claim that 'SESSION and LOCAL modifiers act the same as for the
regular SET command', but I don't think that's actually right...
networx=3D> set role postgres;
SET
networx*=3D# show role;
role=20=20=20
----------
postgres
(1 row)
networx*=3D# reset role;
RESET
networx*=3D> set session role postgres;
SET
networx*=3D# show role;
role=20=20=20
----------
postgres
(1 row)
networx*=3D# reset role;
RESET
networx*=3D> set local role postgres;
SET
networx*=3D> show role;
role=20
------
none
(1 row)
networx*=3D> reset role;
RESET
networx*=3D>=20
Seems like we ignore requests to 'SET LOCAL ROLE blah'. Note that
above it's all in one transaction (indicated by the '*'). Might be
something I'm misunderstanding tho, I suppose... :/ I checked, and
after the 'set local role' I don't seem to have the permissions of
that user (and still have the permissions of my prior user) too.
My inclination is that the documentation is wrong, honestly... I was
originally looking into this area of the documentation to suggest that
we explicitly mention somehow under 'reset all' that 'reset role' isn't
done, and similairly that the documentation under 'set' doesn't apply
for 'set role'.
Thanks,
Stephen