mirror of
https://github.com/postgres/postgres.git
synced 2025-06-13 07:41:39 +03:00
Make use of in-core query id added by commit 5fd9dfa5f5
Use the in-core query id computation for pg_stat_activity, log_line_prefix, and EXPLAIN VERBOSE. Similar to other fields in pg_stat_activity, only the queryid from the top level statements are exposed, and if the backends status isn't active then the queryid from the last executed statements is displayed. Add a %Q placeholder to include the queryid in log_line_prefix, which will also only expose top level statements. For EXPLAIN VERBOSE, if a query identifier has been computed, either by enabling compute_query_id or using a third-party module, display it. Bump catalog version. Discussion: https://postgr.es/m/20210407125726.tkvjdbw76hxnpwfi@nol Author: Julien Rouhaud Reviewed-by: Alvaro Herrera, Nitin Jadhav, Zhihong Yu
This commit is contained in:
@ -569,7 +569,7 @@ pg_stat_get_progress_info(PG_FUNCTION_ARGS)
|
||||
Datum
|
||||
pg_stat_get_activity(PG_FUNCTION_ARGS)
|
||||
{
|
||||
#define PG_STAT_GET_ACTIVITY_COLS 29
|
||||
#define PG_STAT_GET_ACTIVITY_COLS 30
|
||||
int num_backends = pgstat_fetch_stat_numbackends();
|
||||
int curr_backend;
|
||||
int pid = PG_ARGISNULL(0) ? -1 : PG_GETARG_INT32(0);
|
||||
@ -914,6 +914,10 @@ pg_stat_get_activity(PG_FUNCTION_ARGS)
|
||||
values[27] = BoolGetDatum(false); /* GSS Encryption not in
|
||||
* use */
|
||||
}
|
||||
if (beentry->st_queryid == 0)
|
||||
nulls[29] = true;
|
||||
else
|
||||
values[29] = DatumGetUInt64(beentry->st_queryid);
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -941,6 +945,7 @@ pg_stat_get_activity(PG_FUNCTION_ARGS)
|
||||
nulls[26] = true;
|
||||
nulls[27] = true;
|
||||
nulls[28] = true;
|
||||
nulls[29] = true;
|
||||
}
|
||||
|
||||
tuplestore_putvalues(tupstore, tupdesc, values, nulls);
|
||||
|
Reference in New Issue
Block a user