mirror of
https://github.com/postgres/postgres.git
synced 2026-04-21 14:19:26 -04:00
current commands; instead, store current-status information in shared memory. This substantially reduces the overhead of stats_command_string and also ensures that pg_stat_activity is fully up to date at all times. Per my recent proposal.
41 lines
1.3 KiB
C
41 lines
1.3 KiB
C
/*-------------------------------------------------------------------------
|
|
*
|
|
* procarray.h
|
|
* POSTGRES process array definitions.
|
|
*
|
|
*
|
|
* Portions Copyright (c) 1996-2006, PostgreSQL Global Development Group
|
|
* Portions Copyright (c) 1994, Regents of the University of California
|
|
*
|
|
* $PostgreSQL: pgsql/src/include/storage/procarray.h,v 1.9 2006/06/19 01:51:22 tgl Exp $
|
|
*
|
|
*-------------------------------------------------------------------------
|
|
*/
|
|
#ifndef PROCARRAY_H
|
|
#define PROCARRAY_H
|
|
|
|
#include "storage/lock.h"
|
|
|
|
|
|
extern Size ProcArrayShmemSize(void);
|
|
extern void CreateSharedProcArray(void);
|
|
extern void ProcArrayAdd(PGPROC *proc);
|
|
extern void ProcArrayRemove(PGPROC *proc);
|
|
|
|
extern bool TransactionIdIsInProgress(TransactionId xid);
|
|
extern bool TransactionIdIsActive(TransactionId xid);
|
|
extern TransactionId GetOldestXmin(bool allDbs);
|
|
|
|
extern PGPROC *BackendPidGetProc(int pid);
|
|
extern int BackendXidGetPid(TransactionId xid);
|
|
extern bool IsBackendPid(int pid);
|
|
extern bool DatabaseHasActiveBackends(Oid databaseId, bool ignoreMyself);
|
|
|
|
extern int CountActiveBackends(void);
|
|
extern int CountDBBackends(Oid databaseid);
|
|
extern int CountUserBackends(Oid roleid);
|
|
|
|
extern void XidCacheRemoveRunningXids(TransactionId xid,
|
|
int nxids, TransactionId *xids);
|
|
|
|
#endif /* PROCARRAY_H */
|