postgres.git / summary / log / commit / refs
commit 7bec90969f70db77af2d60c839abd039cb488d5e
Author: Bruce Momjian <bruce@momjian.us>
Date: Tue May 30 13:31:01 2006 +0000
First released in: 8.2.0, 8.1.5
Prevent multiple archivers from starting. Backpatch to 8.1.X.
Simon Riggs
src/backend/catalog/pg_conversion.c | 9 ++++++++-
src/backend/postmaster/pgarch.c | 4 ++--
2 files changed, 10 insertions(+), 3 deletions(-)
diff --git a/src/backend/catalog/pg_conversion.c b/src/backend/catalog/pg_conversion.c
index d0ec8c699f4..aeab9d9ada7 100644
--- a/src/backend/catalog/pg_conversion.c
+++ b/src/backend/catalog/pg_conversion.c
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/catalog/pg_conversion.c,v 1.28 2005/10/18 01:06:23 tgl Exp $
+ * $PostgreSQL: pgsql/src/backend/catalog/pg_conversion.c,v 1.28.2.1 2006/05/30 13:31:01 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@@ -18,6 +18,7 @@
#include "catalog/dependency.h"
#include "catalog/indexing.h"
#include "catalog/pg_conversion.h"
+#include "catalog/pg_namespace.h"
#include "catalog/pg_proc.h"
#include "catalog/namespace.h"
#include "utils/builtins.h"
@@ -124,6 +125,12 @@ ConversionCreate(const char *conname, Oid connamespace,
recordDependencyOnOwner(ConversionRelationId, HeapTupleGetOid(tup),
conowner);
+ /* create dependency on namespace */
+ myself.classId = ConversionRelationId;
+ referenced.classId = NamespaceRelationId;
+ referenced.objectId = connamespace;
+ recordDependencyOn(&myself, &referenced, DEPENDENCY_NORMAL);
+
heap_freetuple(tup);
heap_close(rel, RowExclusiveLock);
diff --git a/src/backend/postmaster/pgarch.c b/src/backend/postmaster/pgarch.c
index 61019d7a5e3..73995c9043f 100644
--- a/src/backend/postmaster/pgarch.c
+++ b/src/backend/postmaster/pgarch.c
@@ -19,7 +19,7 @@
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/postmaster/pgarch.c,v 1.18 2005/10/15 02:49:23 momjian Exp $
+ * $PostgreSQL: pgsql/src/backend/postmaster/pgarch.c,v 1.18.2.1 2006/05/30 13:31:01 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@@ -352,7 +352,7 @@ pgarch_ArchiverCopyLoop(void)
* some backend will add files onto the list of those that need archiving
* while we are still copying earlier archives
*/
- while (pgarch_readyXlog(xlog))
+ while (PostmasterIsAlive(true) && pgarch_readyXlog(xlog))
{
int failures = 0;
[parent: f671bee9d053]