mirror of
https://github.com/postgres/postgres.git
synced 2025-07-27 12:41:57 +03:00
Log remote NOTICE, WARNING, and similar messages using ereport().
Previously, NOTICE, WARNING, and similar messages received from remote servers over replication, postgres_fdw, or dblink connections were printed directly to stderr on the local server (e.g., the subscriber). As a result, these messages lacked log prefixes (e.g., timestamp), making them harder to trace and correlate with other log entries. This commit addresses the issue by introducing a custom notice receiver for replication, postgres_fdw, and dblink connections. These messages are now logged via ereport(), ensuring they appear in the logs with proper formatting and context, which improves clarity and aids in debugging. Author: Vignesh C <vignesh21@gmail.com> Reviewed-by: Álvaro Herrera <alvherre@kurilemu.de> Reviewed-by: Fujii Masao <masao.fujii@gmail.com> Discussion: https://postgr.es/m/CALDaNm2xsHpWRtLm-VL_HJCsaE3+1Y_n-jDEAr3-suxVqc3xoQ@mail.gmail.com
This commit is contained in:
@ -625,6 +625,9 @@ connect_pg_server(ForeignServer *server, UserMapping *user)
|
||||
server->servername),
|
||||
errdetail_internal("%s", pchomp(PQerrorMessage(conn)))));
|
||||
|
||||
PQsetNoticeReceiver(conn, libpqsrv_notice_receiver,
|
||||
gettext_noop("received message via remote connection"));
|
||||
|
||||
/* Perform post-connection security checks. */
|
||||
pgfdw_security_check(keywords, values, user, conn);
|
||||
|
||||
|
Reference in New Issue
Block a user