From 6ef5ab2d30b13e9ac93486738a57ce02bbeda024 Mon Sep 17 00:00:00 2001
From: Takuma Hoshiai <takuma.hoshiai@gmail.com>
Date: Fri, 17 Jan 2020 16:04:14 +0900
Subject: [PATCH v25 03/15] Add new deptype option 'm' in pg_depend system
 catalog

The deptype option 'm' mean specific database obejects referenced Incrementally
Maintainable Materialized View(IMMV). If set NO DATA flag to IMVM, these
database objects must be dropped.
---
 src/backend/catalog/dependency.c | 2 ++
 src/include/catalog/dependency.h | 3 ++-
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/backend/catalog/dependency.c b/src/backend/catalog/dependency.c
index ab9e42d7d1..c7d074d8e6 100644
--- a/src/backend/catalog/dependency.c
+++ b/src/backend/catalog/dependency.c
@@ -598,6 +598,7 @@ findDependentObjects(const ObjectAddress *object,
 			case DEPENDENCY_NORMAL:
 			case DEPENDENCY_AUTO:
 			case DEPENDENCY_AUTO_EXTENSION:
+			case DEPENDENCY_IMMV:
 				/* no problem */
 				break;
 
@@ -915,6 +916,7 @@ findDependentObjects(const ObjectAddress *object,
 				subflags = DEPFLAG_AUTO;
 				break;
 			case DEPENDENCY_INTERNAL:
+			case DEPENDENCY_IMMV:
 				subflags = DEPFLAG_INTERNAL;
 				break;
 			case DEPENDENCY_PARTITION_PRI:
diff --git a/src/include/catalog/dependency.h b/src/include/catalog/dependency.h
index 344482ec87..b4578610ea 100644
--- a/src/include/catalog/dependency.h
+++ b/src/include/catalog/dependency.h
@@ -36,7 +36,8 @@ typedef enum DependencyType
 	DEPENDENCY_PARTITION_PRI = 'P',
 	DEPENDENCY_PARTITION_SEC = 'S',
 	DEPENDENCY_EXTENSION = 'e',
-	DEPENDENCY_AUTO_EXTENSION = 'x'
+	DEPENDENCY_AUTO_EXTENSION = 'x',
+	DEPENDENCY_IMMV = 'm'
 } DependencyType;
 
 /*
-- 
2.17.1

