diff options
Diffstat (limited to 'src/backend')
-rw-r--r-- | src/backend/catalog/heap.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/backend/catalog/heap.c b/src/backend/catalog/heap.c index 84049047109..ce5a5d741de 100644 --- a/src/backend/catalog/heap.c +++ b/src/backend/catalog/heap.c @@ -655,6 +655,15 @@ CheckAttributeType(const char *attname, containing_rowtypes = list_delete_last(containing_rowtypes); } + else if (att_typtype == TYPTYPE_RANGE) + { + /* + * If it's a range, recurse to check its subtype. + */ + CheckAttributeType(attname, get_range_subtype(atttypid), attcollation, + containing_rowtypes, + flags); + } else if (OidIsValid((att_typelem = get_element_type(atttypid)))) { /* |