aboutsummaryrefslogtreecommitdiff
path: root/src/backend/utils/adt/pgstatfuncs.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/backend/utils/adt/pgstatfuncs.c')
-rw-r--r--src/backend/utils/adt/pgstatfuncs.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/backend/utils/adt/pgstatfuncs.c b/src/backend/utils/adt/pgstatfuncs.c
index c2f0ea2c829..787f0226cdc 100644
--- a/src/backend/utils/adt/pgstatfuncs.c
+++ b/src/backend/utils/adt/pgstatfuncs.c
@@ -308,14 +308,14 @@ pg_stat_get_backend_activity_start(PG_FUNCTION_ARGS)
int32 beid;
AbsoluteTime sec;
int usec;
- Timestamp result;
+ TimestampTz result;
beid = PG_GETARG_INT32(0);
- if (!superuser())
+ if ((beentry = pgstat_fetch_stat_beentry(beid)) == NULL)
PG_RETURN_NULL();
- if ((beentry = pgstat_fetch_stat_beentry(beid)) == NULL)
+ if (!superuser() && beentry->userid != GetUserId())
PG_RETURN_NULL();
sec = beentry->activity_start_sec;
@@ -341,7 +341,7 @@ pg_stat_get_backend_activity_start(PG_FUNCTION_ARGS)
date2j(1970, 1, 1)) * 86400));
#endif
- PG_RETURN_TIMESTAMP(result);
+ PG_RETURN_TIMESTAMPTZ(result);
}