PG-221: Use alternate of GetUserID function in error hook.

pull/99/head
Ibrar Ahmed 2021-08-31 14:55:53 +00:00
parent aee45ebe52
commit 3d3ece2f99
3 changed files with 23 additions and 18 deletions

View File

@ -1489,9 +1489,10 @@ pgss_store(uint64 queryid,
return; return;
Assert(query != NULL); Assert(query != NULL);
if (kind == PGSS_ERROR)
GetUserIdAndSecContext((unsigned int *)&userid, &con); GetUserIdAndSecContext((unsigned int *)&userid, &con);
if (userid == 0) else
return; userid = GetUserId();
comments = extract_query_comments(query); comments = extract_query_comments(query);

View File

@ -20,19 +20,23 @@ BEGIN
RAISE WARNING 'warning message'; RAISE WARNING 'warning message';
END $$; END $$;
WARNING: warning message WARNING: warning message
SELECT query, elevel, sqlcode, message FROM pg_stat_monitor ORDER BY query COLLATE "C"; SELECT query, elevel, sqlcode, message FROM pg_stat_monitor ORDER BY query COLLATE "C",elevel;
query | elevel | sqlcode | message query | elevel | sqlcode | message
-----------------------------------------------------------------------------------------+--------+---------+----------------------------------- ------------------------------------------------------------------------------------------------+--------+---------+-----------------------------------
ELECET * FROM unknown; | 20 | 42601 | syntax error at or near "ELECET" ELECET * FROM unknown; | 20 | 42601 | syntax error at or near "ELECET"
SELECT * FROM unknown; | 20 | 42P01 | relation "unknown" does not exist SELECT * FROM unknown; | 20 | 42P01 | relation "unknown" does not exist
SELECT 1/0; | 20 | 22012 | division by zero SELECT 1/0; | 20 | 22012 | division by zero
SELECT pg_stat_monitor_reset(); | 0 | | SELECT pg_stat_monitor_reset(); | 0 | |
SELECT query, elevel, sqlcode, message FROM pg_stat_monitor ORDER BY query COLLATE "C"; | 0 | | SELECT query, elevel, sqlcode, message FROM pg_stat_monitor ORDER BY query COLLATE "C",elevel; | 0 | |
do $$ +| 0 | |
BEGIN +| | |
RAISE WARNING 'warning message'; +| | |
END $$; | | |
do $$ +| 19 | 01000 | warning message do $$ +| 19 | 01000 | warning message
BEGIN +| | | BEGIN +| | |
RAISE WARNING 'warning message'; +| | | RAISE WARNING 'warning message'; +| | |
END $$; | | | END $$; | | |
(6 rows) (7 rows)
SELECT pg_stat_monitor_reset(); SELECT pg_stat_monitor_reset();
pg_stat_monitor_reset pg_stat_monitor_reset

View File

@ -9,6 +9,6 @@ BEGIN
RAISE WARNING 'warning message'; RAISE WARNING 'warning message';
END $$; END $$;
SELECT query, elevel, sqlcode, message FROM pg_stat_monitor ORDER BY query COLLATE "C"; SELECT query, elevel, sqlcode, message FROM pg_stat_monitor ORDER BY query COLLATE "C",elevel;
SELECT pg_stat_monitor_reset(); SELECT pg_stat_monitor_reset();
DROP EXTENSION pg_stat_monitor; DROP EXTENSION pg_stat_monitor;