aboutsummaryrefslogtreecommitdiff
path: root/src/backend/optimizer/path/pathkeys.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/backend/optimizer/path/pathkeys.c')
-rw-r--r--src/backend/optimizer/path/pathkeys.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/backend/optimizer/path/pathkeys.c b/src/backend/optimizer/path/pathkeys.c
index 1fa7fc99b51..18f88700981 100644
--- a/src/backend/optimizer/path/pathkeys.c
+++ b/src/backend/optimizer/path/pathkeys.c
@@ -1191,8 +1191,13 @@ partkey_is_bool_constant_for_query(RelOptInfo *partrel, int partkeycol)
PartitionScheme partscheme = partrel->part_scheme;
ListCell *lc;
- /* If the partkey isn't boolean, we can't possibly get a match */
- if (!IsBooleanOpfamily(partscheme->partopfamily[partkeycol]))
+ /*
+ * If the partkey isn't boolean, we can't possibly get a match.
+ *
+ * Partitioning currently can only use built-in AMs, so checking for
+ * built-in boolean opfamilies is good enough.
+ */
+ if (!IsBuiltinBooleanOpfamily(partscheme->partopfamily[partkeycol]))
return false;
/* Check each restriction clause for the partitioned rel */