Hi, w.r.t. the while loop in findNotNullConstraintAttnum(): + if (multiple == NULL) + break;
I think `pfree(arr)` should be called before breaking. + if (constraint->cooked_expr != NULL) + return tryExtractNotNullFromNode(stringToNode(constraint->cooked_expr), rel); + else + return tryExtractNotNullFromNode(constraint->raw_expr, rel); nit: the `else` keyword is not needed. + if (isnull) + elog(ERROR, "null conbin for constraint %u", conForm->oid); It would be better to expand `conbin` so that the user can better understand the error. Cheers >