]> granicus.if.org Git - postgresql/blobdiff - src/backend/utils/init/globals.c
Change memory-space accounting mechanism in tuplesort.c and tuplestore.c
[postgresql] / src / backend / utils / init / globals.c
index 2ed0c83e0b2a2e44f37e14cb0a2db83d9b290d07..51a729c49c6920e7cd513802fa0b7b14f5bbcea7 100644 (file)
@@ -1,13 +1,14 @@
 /*-------------------------------------------------------------------------
  *
- * globals.c--
+ * globals.c
  *       global variable declarations
  *
- * Copyright (c) 1994, Regents of the University of California
+ * Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
+ * Portions Copyright (c) 1994, Regents of the University of California
  *
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/utils/init/globals.c,v 1.11 1997/09/07 04:53:48 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/utils/init/globals.c,v 1.66 2002/08/12 00:36:11 tgl Exp $
  *
  * NOTES
  *       Globals used all over the place should be declared here and not
  *
  *-------------------------------------------------------------------------
  */
-#include <fcntl.h>
-#include <stdio.h>
-#include <string.h>
-#include <sys/file.h>
-#include <sys/types.h>
-#include <math.h>
-#include <unistd.h>
-
 #include "postgres.h"
-#include "miscadmin.h"                 /* where the declarations go */
 
-#include <storage/backendid.h>
-#include "access/heapam.h"
-#include "utils/tqual.h"
-#include "storage/sinval.h"
-#include "storage/sinvaladt.h"
-#include "storage/lmgr.h"
-#include "utils/elog.h"
+#include "libpq/pqcomm.h"
+#include "miscadmin.h"
+#include "storage/backendid.h"
+
+
+ProtocolVersion FrontendProtocol = PG_PROTOCOL_LATEST;
 
-#include "catalog/catname.h"
+bool           Noversion = false;
 
-int                            Portfd = -1;
-int                            Noversion = 0;
-int                            Quiet = 1;
+volatile bool InterruptPending = false;
+volatile bool QueryCancelPending = false;
+volatile bool ProcDiePending = false;
+volatile bool ImmediateInterruptOK = false;
+volatile uint32 InterruptHoldoffCount = 0;
+volatile uint32 CritSectionCount = 0;
 
-int                            MasterPid;
-char              *DataDir;
+int                    MyProcPid;
+struct Port *MyProcPort;
+long           MyCancelKey;
 
+char      *DataDir = NULL;
  /*
   * The PGDATA directory user says to use, or defaults to via environment
   * variable.  NULL if no option given and no environment variable set
   */
-Relation               reldesc;                /* current relation descriptor */
 
-char                   OutputFileName[MAXPGPATH] = "";
+char           OutputFileName[MAXPGPATH];
 
-BackendId              MyBackendId;
-BackendTag             MyBackendTag;
+char           pg_pathname[MAXPGPATH];         /* full path to postgres
+                                                                                * executable */
 
-char              *UserName = NULL;
-char              *DatabaseName = NULL;
-char              *DatabasePath = NULL;
+BackendId      MyBackendId;
 
-bool                   MyDatabaseIdIsInitialized = false;
-Oid                            MyDatabaseId = InvalidOid;
-bool                   TransactionInitWasProcessed = false;
+char      *DatabaseName = NULL;
+char      *DatabasePath = NULL;
 
-bool                   IsUnderPostmaster = false;
-bool                   IsPostmaster = false;
+Oid                    MyDatabaseId = InvalidOid;
 
-short                  DebugLvl = 0;
+bool           IsUnderPostmaster = false;
 
-int                            DateStyle = USE_POSTGRES_DATES;
-bool                   EuroDates = false;
-bool                   HasCTZSet = false;
-bool                   CDayLight = false;
-int                            CTimeZone = 0;
-char                   CTZName[MAXTZLEN + 1] = "";
+int                    DateStyle = USE_ISO_DATES;
+bool           EuroDates = false;
+bool           HasCTZSet = false;
+bool           CDayLight = false;
+int                    CTimeZone = 0;
+char           CTZName[MAXTZLEN + 1] = "";
 
-char                   DateFormat[20] = "%d-%m-%Y";    /* mjl: sizes! or better
+char           DateFormat[20] = "%d-%m-%Y";            /* mjl: sizes! or better
                                                                                                 * malloc? XXX */
-char                   FloatFormat[20] = "%f";
-
-int                            fsyncOff = 0;
-int                            SortMem = 512;
-
-char              *IndexedCatalogNames[] = {
-       AttributeRelationName,
-       ProcedureRelationName,
-       TypeRelationName,
-       RelationRelationName,
-       0
-};
+char           FloatFormat[20] = "%f";
 
-
-/* ----------------
- * we just do a linear search now so there's no requirement that the list
- * be ordered. The list is so small it shouldn't make much difference.
- * make sure the list is null-terminated
- *                             - jolly 8/19/95
- *
- * OLD COMMENT
- *             WARNING  WARNING  WARNING  WARNING      WARNING  WARNING
- *
- *             keep SharedSystemRelationNames[] in SORTED order!  A binary search
- *             is done on it in catalog.c!
- *
- *             XXX this is a serious hack which should be fixed -cim 1/26/90
- * ----------------
- */
-char              *SharedSystemRelationNames[] = {
-       DatabaseRelationName,
-       DefaultsRelationName,
-       DemonRelationName,
-       GroupRelationName,
-       HostsRelationName,
-       LogRelationName,
-       MagicRelationName,
-       ServerRelationName,
-       TimeRelationName,
-       UserRelationName,
-       VariableRelationName,
-       0
-};
+bool           enableFsync = true;
+bool           allowSystemTableMods = false;
+int                    SortMem = 1024;
+int                    VacuumMem = 8192;
+int                    NBuffers = DEF_NBUFFERS;