Re: fixing typo in comment for restriction_is_or_clause - Mailing list pgsql-hackers
From | Japin Li |
---|---|
Subject | Re: fixing typo in comment for restriction_is_or_clause |
Date | |
Msg-id | MEYP282MB166954D2DF97D3796B81DB07B6319@MEYP282MB1669.AUSP282.PROD.OUTLOOK.COM Whole thread Raw |
In response to | fixing typo in comment for restriction_is_or_clause (Zhihong Yu <zyu@yugabyte.com>) |
Responses |
Re: fixing typo in comment for restriction_is_or_clause
|
List | pgsql-hackers |
On Tue, 25 Oct 2022 at 11:07, Zhihong Yu <zyu@yugabyte.com> wrote: > Please take a look at patch v2. Maybe we should define those functions in headers. See patch v3. -- Regrads, Japin Li. ChengDu WenWu Information Technology Co.,Ltd. diff --git a/src/backend/optimizer/util/restrictinfo.c b/src/backend/optimizer/util/restrictinfo.c index ef8df3d098..8a6812b4b1 100644 --- a/src/backend/optimizer/util/restrictinfo.c +++ b/src/backend/optimizer/util/restrictinfo.c @@ -375,41 +375,6 @@ commute_restrictinfo(RestrictInfo *rinfo, Oid comm_op) return result; } -/* - * restriction_is_or_clause - * - * Returns t iff the restrictinfo node contains an 'or' clause. - */ -bool -restriction_is_or_clause(RestrictInfo *restrictinfo) -{ - if (restrictinfo->orclause != NULL) - return true; - else - return false; -} - -/* - * restriction_is_securely_promotable - * - * Returns true if it's okay to evaluate this clause "early", that is before - * other restriction clauses attached to the specified relation. - */ -bool -restriction_is_securely_promotable(RestrictInfo *restrictinfo, - RelOptInfo *rel) -{ - /* - * It's okay if there are no baserestrictinfo clauses for the rel that - * would need to go before this one, *or* if this one is leakproof. - */ - if (restrictinfo->security_level <= rel->baserestrict_min_security || - restrictinfo->leakproof) - return true; - else - return false; -} - /* * get_actual_clauses * diff --git a/src/include/optimizer/restrictinfo.h b/src/include/optimizer/restrictinfo.h index 6d30bd5e9d..dbfbebff48 100644 --- a/src/include/optimizer/restrictinfo.h +++ b/src/include/optimizer/restrictinfo.h @@ -31,9 +31,6 @@ extern RestrictInfo *make_restrictinfo(PlannerInfo *root, Relids outer_relids, Relids nullable_relids); extern RestrictInfo *commute_restrictinfo(RestrictInfo *rinfo, Oid comm_op); -extern bool restriction_is_or_clause(RestrictInfo *restrictinfo); -extern bool restriction_is_securely_promotable(RestrictInfo *restrictinfo, - RelOptInfo *rel); extern List *get_actual_clauses(List *restrictinfo_list); extern List *extract_actual_clauses(List *restrictinfo_list, bool pseudoconstant); @@ -46,4 +43,36 @@ extern bool join_clause_is_movable_into(RestrictInfo *rinfo, Relids currentrelids, Relids current_and_outer); +/* + * restriction_is_or_clause + * + * Returns true iff the restrictinfo node contains an 'or' clause. + */ +static inline bool +restriction_is_or_clause(RestrictInfo *restrictinfo) +{ + return (restrictinfo->orclause != NULL); +} + +/* + * restriction_is_securely_promotable + * + * Returns true if it's okay to evaluate this clause "early", that is before + * other restriction clauses attached to the specified relation. + */ +static inline bool +restriction_is_securely_promotable(RestrictInfo *restrictinfo, + RelOptInfo *rel) +{ + /* + * It's okay if there are no baserestrictinfo clauses for the rel that + * would need to go before this one, *or* if this one is leakproof. + */ + if (restrictinfo->security_level <= rel->baserestrict_min_security || + restrictinfo->leakproof) + return true; + else + return false; +} + #endif /* RESTRICTINFO_H */
pgsql-hackers by date: