bool
var_is_nonnullable(PlannerInfo *root, Var *var, bool use_rel_info)
{
- Relids notnullattnums = NULL;
+ Bitmapset *notnullattnums = NULL;
Assert(IsA(var, Var));
typedef struct NotnullHashEntry
{
Oid relid; /* OID of the relation */
- Relids notnullattnums; /* attnums of NOT NULL columns */
+ Bitmapset *notnullattnums; /* attnums of NOT NULL columns */
} NotnullHashEntry;
Oid relid = RelationGetRelid(relation);
NotnullHashEntry *hentry;
bool found;
- Relids notnullattnums = NULL;
+ Bitmapset *notnullattnums = NULL;
/* bail out if the relation has no not-null constraints */
if (relation->rd_att->constr == NULL ||
* Searches the hash table and returns the column not-null constraint
* information for a given relation.
*/
-Relids
+Bitmapset *
find_relation_notnullatts(PlannerInfo *root, Oid relid)
{
NotnullHashEntry *hentry;
extern void get_relation_notnullatts(PlannerInfo *root, Relation relation);
-extern Relids find_relation_notnullatts(PlannerInfo *root, Oid relid);
+extern Bitmapset *find_relation_notnullatts(PlannerInfo *root, Oid relid);
extern List *infer_arbiter_indexes(PlannerInfo *root);