* Portions Copyright (c) 1996-2003, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $PostgreSQL: pgsql/src/backend/access/transam/xlog.c,v 1.126 2003/11/29 19:51:40 pgsql Exp $
+ * $PostgreSQL: pgsql/src/backend/access/transam/xlog.c,v 1.127 2003/12/12 18:45:08 petere Exp $
*
*-------------------------------------------------------------------------
*/
* This must be called ONCE during postmaster or standalone-backend shutdown
*/
void
-ShutdownXLOG(void)
+ShutdownXLOG(int code, Datum arg)
{
ereport(LOG,
(errmsg("shutting down")));
* Portions Copyright (c) 1994, Regents of the University of California
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/bootstrap/bootstrap.c,v 1.169 2003/12/01 22:15:37 tgl Exp $
+ * $PostgreSQL: pgsql/src/backend/bootstrap/bootstrap.c,v 1.170 2003/12/12 18:45:08 petere Exp $
*
*-------------------------------------------------------------------------
*/
proc_exit(0); /* done */
case BS_XLOG_SHUTDOWN:
- ShutdownXLOG();
- DumpFreeSpaceMap();
+ ShutdownXLOG(0, 0);
+ DumpFreeSpaceMap(0, 0);
proc_exit(0); /* done */
default:
* Portions Copyright (c) 1994, Regents of the University of California
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/catalog/namespace.c,v 1.59 2003/11/29 19:51:45 pgsql Exp $
+ * $PostgreSQL: pgsql/src/backend/catalog/namespace.c,v 1.60 2003/12/12 18:45:08 petere Exp $
*
*-------------------------------------------------------------------------
*/
static void recomputeNamespacePath(void);
static void InitTempTableNamespace(void);
static void RemoveTempRelations(Oid tempNamespaceId);
-static void RemoveTempRelationsCallback(void);
+static void RemoveTempRelationsCallback(int code, Datum arg);
static void NamespaceCallback(Datum arg, Oid relid);
/* These don't really need to appear in any header file */
* Callback to remove temp relations at backend exit.
*/
static void
-RemoveTempRelationsCallback(void)
+RemoveTempRelationsCallback(int code, Datum arg)
{
if (OidIsValid(myTempNamespace)) /* should always be true */
{
* Portions Copyright (c) 1994, Regents of the University of California
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/commands/async.c,v 1.105 2003/11/29 19:51:47 pgsql Exp $
+ * $PostgreSQL: pgsql/src/backend/commands/async.c,v 1.106 2003/12/12 18:45:08 petere Exp $
*
*-------------------------------------------------------------------------
*/
static void Async_UnlistenAll(void);
-static void Async_UnlistenOnExit(void);
+static void Async_UnlistenOnExit(int code, Datum arg);
static void ProcessIncomingNotify(void);
static void NotifyMyFrontEnd(char *relname, int32 listenerPID);
static bool AsyncExistsPendingNotify(const char *relname);
*--------------------------------------------------------------
*/
static void
-Async_UnlistenOnExit(void)
+Async_UnlistenOnExit(int code, Datum arg)
{
/*
* We need to start/commit a transaction for the unlisten, but if
* Portions Copyright (c) 1996-2003, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $PostgreSQL: pgsql/src/backend/libpq/pqcomm.c,v 1.167 2003/11/29 19:51:49 pgsql Exp $
+ * $PostgreSQL: pgsql/src/backend/libpq/pqcomm.c,v 1.168 2003/12/12 18:45:08 petere Exp $
*
*-------------------------------------------------------------------------
*/
#include "storage/ipc.h"
-static void pq_close(void);
+static void pq_close(int code, Datum arg);
#ifdef HAVE_UNIX_SOCKETS
static int Lock_AF_UNIX(unsigned short portNumber, char *unixSocketName);
* --------------------------------
*/
static void
-pq_close(void)
+pq_close(int code, Datum arg)
{
if (MyProcPort != NULL)
{
*/
#ifdef HAVE_UNIX_SOCKETS
static void
-StreamDoUnlink(void)
+StreamDoUnlink(int code, Datum arg)
{
Assert(sock_path[0]);
unlink(sock_path);
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/port/ipc_test.c,v 1.11 2003/11/29 19:51:54 pgsql Exp $
+ * $PostgreSQL: pgsql/src/backend/port/ipc_test.c,v 1.12 2003/12/12 18:45:09 petere Exp $
*
*-------------------------------------------------------------------------
*/
static struct ONEXIT
{
- void (*function) ();
+ void (*function) (int code, Datum arg);
Datum arg;
} on_proc_exit_list[MAX_ON_EXITS], on_shmem_exit_list[MAX_ON_EXITS];
}
void
- on_shmem_exit(void (*function) (), Datum arg)
+on_shmem_exit(void (*function) (int code, Datum arg), Datum arg)
{
if (on_shmem_exit_index >= MAX_ON_EXITS)
elog(FATAL, "out of on_shmem_exit slots");
* Portions Copyright (c) 1994, Regents of the University of California
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/storage/file/fd.c,v 1.103 2003/11/29 19:51:56 pgsql Exp $
+ * $PostgreSQL: pgsql/src/backend/storage/file/fd.c,v 1.104 2003/12/12 18:45:09 petere Exp $
*
* NOTES:
*
static File fileNameOpenFile(FileName fileName, int fileFlags, int fileMode);
static char *filepath(const char *filename);
static long pg_nofile(void);
-static void AtProcExit_Files(void);
+static void AtProcExit_Files(int code, Datum arg);
static void CleanupTempFiles(bool isProcExit);
* Here, we want to clean up *all* temp files including interXact ones.
*/
static void
-AtProcExit_Files(void)
+AtProcExit_Files(int code, Datum arg)
{
CleanupTempFiles(true);
}
* Portions Copyright (c) 1994, Regents of the University of California
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/storage/freespace/freespace.c,v 1.26 2003/11/29 19:51:56 pgsql Exp $
+ * $PostgreSQL: pgsql/src/backend/storage/freespace/freespace.c,v 1.27 2003/12/12 18:45:09 petere Exp $
*
*
* NOTES:
* forma --- if anyone else is still accessing FSM, there's a problem.
*/
void
-DumpFreeSpaceMap(void)
+DumpFreeSpaceMap(int code, Datum arg)
{
FILE *fp;
char cachefilename[MAXPGPATH];
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/storage/ipc/ipc.c,v 1.86 2003/11/29 19:51:56 pgsql Exp $
+ * $PostgreSQL: pgsql/src/backend/storage/ipc/ipc.c,v 1.87 2003/12/12 18:45:09 petere Exp $
*
*-------------------------------------------------------------------------
*/
static struct ONEXIT
{
- void (*function) ();
+ void (*function) (int code, Datum arg);
Datum arg;
} on_proc_exit_list[MAX_ON_EXITS], on_shmem_exit_list[MAX_ON_EXITS];
* ----------------------------------------------------------------
*/
void
- on_proc_exit(void (*function) (), Datum arg)
+on_proc_exit(void (*function) (int code, Datum arg), Datum arg)
{
if (on_proc_exit_index >= MAX_ON_EXITS)
ereport(FATAL,
* ----------------------------------------------------------------
*/
void
- on_shmem_exit(void (*function) (), Datum arg)
+on_shmem_exit(void (*function) (int code, Datum arg), Datum arg)
{
if (on_shmem_exit_index >= MAX_ON_EXITS)
ereport(FATAL,
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/storage/lmgr/proc.c,v 1.139 2003/12/01 21:59:25 momjian Exp $
+ * $PostgreSQL: pgsql/src/backend/storage/lmgr/proc.c,v 1.140 2003/12/12 18:45:09 petere Exp $
*
*-------------------------------------------------------------------------
*/
static struct timeval statement_fin_time;
-static void ProcKill(void);
-static void DummyProcKill(void);
+static void ProcKill(int code, Datum arg);
+static void DummyProcKill(int code, Datum arg);
static bool CheckStatementTimeout(void);
* this process. Release any of its held LW locks.
*/
static void
-ProcKill(void)
+ProcKill(int code, Datum arg)
{
/* use volatile pointer to prevent code rearrangement */
volatile PROC_HDR *procglobal = ProcGlobal;
* as not-in-use.
*/
static void
-DummyProcKill(void)
+DummyProcKill(int code, Datum arg)
{
PGPROC *dummyproc;
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/storage/smgr/smgr.c,v 1.66 2003/11/29 19:51:57 pgsql Exp $
+ * $PostgreSQL: pgsql/src/backend/storage/smgr/smgr.c,v 1.67 2003/12/12 18:45:09 petere Exp $
*
*-------------------------------------------------------------------------
*/
#include "utils/memutils.h"
-static void smgrshutdown(void);
+static void smgrshutdown(int code, Datum arg);
typedef struct f_smgr
{
}
static void
-smgrshutdown(void)
+smgrshutdown(int code, Datum arg)
{
int i;
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/utils/init/postinit.c,v 1.130 2003/11/29 19:52:01 pgsql Exp $
+ * $PostgreSQL: pgsql/src/backend/utils/init/postinit.c,v 1.131 2003/12/12 18:45:09 petere Exp $
*
*
*-------------------------------------------------------------------------
static void ReverifyMyDatabase(const char *name);
static void InitCommunication(void);
-static void ShutdownPostgres(void);
+static void ShutdownPostgres(int code, Datum arg);
static bool ThereIsAtLeastOneUser(void);
* cleanup fails.
*/
static void
-ShutdownPostgres(void)
+ShutdownPostgres(int code, Datum arg)
{
/*
* These operations are really just a minimal subset of
* Portions Copyright (c) 1996-2003, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $PostgreSQL: pgsql/src/include/access/xlog.h,v 1.45 2003/11/29 22:40:55 pgsql Exp $
+ * $PostgreSQL: pgsql/src/include/access/xlog.h,v 1.46 2003/12/12 18:45:10 petere Exp $
*/
#ifndef XLOG_H
#define XLOG_H
extern void XLOGPathInit(void);
extern void BootStrapXLOG(void);
extern void StartupXLOG(void);
-extern void ShutdownXLOG(void);
+extern void ShutdownXLOG(int code, Datum arg);
extern void CreateCheckPoint(bool shutdown, bool force);
extern void SetThisStartUpID(void);
extern void XLogPutNextOid(Oid nextOid);
* Portions Copyright (c) 1996-2003, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $PostgreSQL: pgsql/src/include/storage/freespace.h,v 1.14 2003/11/29 22:41:13 pgsql Exp $
+ * $PostgreSQL: pgsql/src/include/storage/freespace.h,v 1.15 2003/12/12 18:45:10 petere Exp $
*
*-------------------------------------------------------------------------
*/
extern void PrintFreeSpaceMapStatistics(int elevel);
-extern void DumpFreeSpaceMap(void);
+extern void DumpFreeSpaceMap(int code, Datum arg);
extern void LoadFreeSpaceMap(void);
#ifdef FREESPACE_DEBUG
* Portions Copyright (c) 1996-2003, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $PostgreSQL: pgsql/src/include/storage/ipc.h,v 1.62 2003/11/29 22:41:13 pgsql Exp $
+ * $PostgreSQL: pgsql/src/include/storage/ipc.h,v 1.63 2003/12/12 18:45:10 petere Exp $
*
*-------------------------------------------------------------------------
*/
extern void proc_exit(int code);
extern void shmem_exit(int code);
-extern void on_proc_exit(void (*function) (), Datum arg);
-extern void on_shmem_exit(void (*function) (), Datum arg);
+extern void on_proc_exit(void (*function) (int code, Datum arg), Datum arg);
+extern void on_shmem_exit(void (*function) (int code, Datum arg), Datum arg);
extern void on_exit_reset(void);
/* ipci.c */