mirror of https://github.com/postgres/postgres
That allows to still run event_trigger test in parallel with oidjoins test, and save ~50ms of tests runtime. Discussion: https://postgr.es/m/202310271047.mnwkql6nhbwi%40alvherre.pgsql Author: Alvaro Herrera, Alexander Korotkovpull/145/head
parent
c6cf6d353c
commit
8b62b441ff
@ -0,0 +1,45 @@ |
|||||||
|
-- Login event triggers |
||||||
|
CREATE TABLE user_logins(id serial, who text); |
||||||
|
GRANT SELECT ON user_logins TO public; |
||||||
|
CREATE FUNCTION on_login_proc() RETURNS event_trigger AS $$ |
||||||
|
BEGIN |
||||||
|
INSERT INTO user_logins (who) VALUES (SESSION_USER); |
||||||
|
RAISE NOTICE 'You are welcome!'; |
||||||
|
END; |
||||||
|
$$ LANGUAGE plpgsql; |
||||||
|
CREATE EVENT TRIGGER on_login_trigger ON login EXECUTE PROCEDURE on_login_proc(); |
||||||
|
ALTER EVENT TRIGGER on_login_trigger ENABLE ALWAYS; |
||||||
|
\c |
||||||
|
NOTICE: You are welcome! |
||||||
|
SELECT COUNT(*) FROM user_logins; |
||||||
|
count |
||||||
|
------- |
||||||
|
1 |
||||||
|
(1 row) |
||||||
|
|
||||||
|
\c |
||||||
|
NOTICE: You are welcome! |
||||||
|
SELECT COUNT(*) FROM user_logins; |
||||||
|
count |
||||||
|
------- |
||||||
|
2 |
||||||
|
(1 row) |
||||||
|
|
||||||
|
-- Check dathasloginevt in system catalog |
||||||
|
SELECT dathasloginevt FROM pg_database WHERE datname= :'DBNAME'; |
||||||
|
dathasloginevt |
||||||
|
---------------- |
||||||
|
t |
||||||
|
(1 row) |
||||||
|
|
||||||
|
-- Cleanup |
||||||
|
DROP TABLE user_logins; |
||||||
|
DROP EVENT TRIGGER on_login_trigger; |
||||||
|
DROP FUNCTION on_login_proc(); |
||||||
|
\c |
||||||
|
SELECT dathasloginevt FROM pg_database WHERE datname= :'DBNAME'; |
||||||
|
dathasloginevt |
||||||
|
---------------- |
||||||
|
f |
||||||
|
(1 row) |
||||||
|
|
@ -0,0 +1,25 @@ |
|||||||
|
-- Login event triggers |
||||||
|
CREATE TABLE user_logins(id serial, who text); |
||||||
|
GRANT SELECT ON user_logins TO public; |
||||||
|
CREATE FUNCTION on_login_proc() RETURNS event_trigger AS $$ |
||||||
|
BEGIN |
||||||
|
INSERT INTO user_logins (who) VALUES (SESSION_USER); |
||||||
|
RAISE NOTICE 'You are welcome!'; |
||||||
|
END; |
||||||
|
$$ LANGUAGE plpgsql; |
||||||
|
CREATE EVENT TRIGGER on_login_trigger ON login EXECUTE PROCEDURE on_login_proc(); |
||||||
|
ALTER EVENT TRIGGER on_login_trigger ENABLE ALWAYS; |
||||||
|
\c |
||||||
|
SELECT COUNT(*) FROM user_logins; |
||||||
|
\c |
||||||
|
SELECT COUNT(*) FROM user_logins; |
||||||
|
|
||||||
|
-- Check dathasloginevt in system catalog |
||||||
|
SELECT dathasloginevt FROM pg_database WHERE datname= :'DBNAME'; |
||||||
|
|
||||||
|
-- Cleanup |
||||||
|
DROP TABLE user_logins; |
||||||
|
DROP EVENT TRIGGER on_login_trigger; |
||||||
|
DROP FUNCTION on_login_proc(); |
||||||
|
\c |
||||||
|
SELECT dathasloginevt FROM pg_database WHERE datname= :'DBNAME'; |
Loading…
Reference in new issue