mirror of
https://github.com/postgres/postgres.git
synced 2025-07-28 23:42:10 +03:00
First phase of memory management rewrite (see backend/utils/mmgr/README
for details). It doesn't really do that much yet, since there are no short-term memory contexts in the executor, but the infrastructure is in place and long-term contexts are handled reasonably. A few long- standing bugs have been fixed, such as 'VACUUM; anything' in a single query string crashing. Also, out-of-memory is now considered a recoverable ERROR, not FATAL. Eliminate a large amount of crufty, now-dead code in and around memory management. Fix problem with holding off SIGTRAP, SIGSEGV, etc in postmaster and backend startup.
This commit is contained in:
@ -8,7 +8,7 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $Header: /cvsroot/pgsql/src/backend/utils/init/postinit.c,v 1.59 2000/05/30 00:49:56 momjian Exp $
|
||||
* $Header: /cvsroot/pgsql/src/backend/utils/init/postinit.c,v 1.60 2000/06/28 03:32:43 tgl Exp $
|
||||
*
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
@ -40,8 +40,6 @@
|
||||
#include "mb/pg_wchar.h"
|
||||
#endif
|
||||
|
||||
void BaseInit(void);
|
||||
|
||||
static void ReverifyMyDatabase(const char *name);
|
||||
static void InitCommunication(void);
|
||||
|
||||
@ -222,8 +220,6 @@ InitCommunication()
|
||||
* Be very careful with the order of calls in the InitPostgres function.
|
||||
* --------------------------------
|
||||
*/
|
||||
extern int NBuffers;
|
||||
|
||||
int lockingOff = 0; /* backend -L switch */
|
||||
|
||||
/*
|
||||
@ -405,21 +401,6 @@ InitPostgres(const char *dbname)
|
||||
void
|
||||
BaseInit(void)
|
||||
{
|
||||
|
||||
/*
|
||||
* Turn on the exception handler. Note: we cannot use elog, Assert,
|
||||
* AssertState, etc. until after exception handling is on.
|
||||
*/
|
||||
EnableExceptionHandling(true);
|
||||
|
||||
/*
|
||||
* Memory system initialization - we may call palloc after
|
||||
* EnableMemoryContext()). Note that EnableMemoryContext() must
|
||||
* happen before EnablePortalManager().
|
||||
*/
|
||||
EnableMemoryContext(true); /* initializes the "top context" */
|
||||
EnablePortalManager(true); /* memory for portal/transaction stuff */
|
||||
|
||||
/*
|
||||
* Attach to shared memory and semaphores, and initialize our
|
||||
* input/output/debugging file descriptors.
|
||||
@ -427,4 +408,6 @@ BaseInit(void)
|
||||
InitCommunication();
|
||||
DebugFileOpen();
|
||||
smgrinit();
|
||||
|
||||
EnablePortalManager(); /* memory for portal/transaction stuff */
|
||||
}
|
||||
|
Reference in New Issue
Block a user