Hi all,

I noticed that ExecWithoutOverlapsNotEmpty() accepts an atttypid parameter that 
isn't actually used. The function only needs typtype to distinguish between 
range and multirange types.
Currently lookup_type_cache() is called just to extract typtype, but I think 
using get_typtype() directly seems more appropriate.

```
 static void ExecWithoutOverlapsNotEmpty(Relation rel, NameData attname, Datum 
attval,
-                                                                               
char typtype, Oid atttypid);
+                                                                               
char typtype);
 
 /* ----------------------------------------------------------------
  *             ExecOpenIndices
@@ -753,11 +754,10 @@ check_exclusion_or_unique_constraint(Relation heap, 
Relation index,
                {
                        TupleDesc       tupdesc = RelationGetDescr(heap);
                        Form_pg_attribute att = TupleDescAttr(tupdesc, attno - 
1);
-                       TypeCacheEntry *typcache = 
lookup_type_cache(att->atttypid, 0);
 
                        ExecWithoutOverlapsNotEmpty(heap, att->attname,
                                                                                
values[indnkeyatts - 1],
-                                                                               
typcache->typtype, att->atttypid);
+                                                                               
get_typtype(att->atttypid));
                }
        }
 
@@ -1149,7 +1149,7 @@ index_expression_changed_walker(Node *node, Bitmapset 
*allUpdatedCols)
  * range or multirange in the given attribute.
  */
 static void
-ExecWithoutOverlapsNotEmpty(Relation rel, NameData attname, Datum attval, char 
typtype, Oid atttypid)
+ExecWithoutOverlapsNotEmpty(Relation rel, NameData attname, Datum attval, char 
typtype)
 {
        bool            isempty;
        RangeType  *r;
```

--
regards,
Man Zeng

Attachment: 0001-refactor-Simplify-ExecWithoutOverlapsNotEmpty-functi.patch
Description: Binary data

Reply via email to