Back-patch addition of the ALLOCSET_FOO_SIZES macros.
authorTom Lane <[email protected]>
Fri, 12 Oct 2018 18:49:33 +0000 (14:49 -0400)
committerTom Lane <[email protected]>
Fri, 12 Oct 2018 18:49:33 +0000 (14:49 -0400)
These macros were originally added in commit ea268cdc9, and back-patched
into 9.6 before 9.6.0.  However, some extensions would like to use them
in older branches, and there seems no harm in providing them.  So add
them to all supported branches.  Per suggestions from Christoph Berg and
Andres Freund.

Discussion: https://postgr.es/m/20181012170355[email protected]

src/include/utils/memutils.h

index a0c755daf3734f1f30c5ac5560002e9209f19458..35c064e8766fbd84520d939bab63a688bb0314f5 100644 (file)
@@ -136,14 +136,26 @@ extern MemoryContext AllocSetContextCreate(MemoryContext parent,
 #define ALLOCSET_DEFAULT_MINSIZE   0
 #define ALLOCSET_DEFAULT_INITSIZE  (8 * 1024)
 #define ALLOCSET_DEFAULT_MAXSIZE   (8 * 1024 * 1024)
+#define ALLOCSET_DEFAULT_SIZES \
+   ALLOCSET_DEFAULT_MINSIZE, ALLOCSET_DEFAULT_INITSIZE, ALLOCSET_DEFAULT_MAXSIZE
 
 /*
- * Recommended alloc parameters for "small" contexts that are not expected
+ * Recommended alloc parameters for "small" contexts that are never expected
  * to contain much data (for example, a context to contain a query plan).
  */
 #define ALLOCSET_SMALL_MINSIZE  0
 #define ALLOCSET_SMALL_INITSIZE  (1 * 1024)
 #define ALLOCSET_SMALL_MAXSIZE  (8 * 1024)
+#define ALLOCSET_SMALL_SIZES \
+   ALLOCSET_SMALL_MINSIZE, ALLOCSET_SMALL_INITSIZE, ALLOCSET_SMALL_MAXSIZE
+
+/*
+ * Recommended alloc parameters for contexts that should start out small,
+ * but might sometimes grow big.
+ */
+#define ALLOCSET_START_SMALL_SIZES \
+   ALLOCSET_SMALL_MINSIZE, ALLOCSET_SMALL_INITSIZE, ALLOCSET_DEFAULT_MAXSIZE
+
 
 /*
  * Threshold above which a request in an AllocSet context is certain to be