PostGIS 3.7.0dev-r@@SVN_REVISION@@
Loading...
Searching...
No Matches

◆ gserialized_gist_joinsel()

Datum gserialized_gist_joinsel ( PG_FUNCTION_ARGS  )

Definition at line 1177 of file gserialized_estimate.c.

1178{
1179 PlannerInfo *root = (PlannerInfo *)PG_GETARG_POINTER(0);
1180 /* Oid operator = PG_GETARG_OID(1); */
1181 List *args = (List *)PG_GETARG_POINTER(2);
1182 JoinType jointype = (JoinType) PG_GETARG_INT16(3);
1183 int mode = PG_GETARG_INT32(4);
1184
1185 POSTGIS_DEBUGF(2, "%s: entered function", __func__);
1186
1187 /* Check length of args and punt on > 2 */
1188 if (list_length(args) != 2)
1189 {
1190 POSTGIS_DEBUGF(2, "%s: got nargs == %d", __func__, list_length(args));
1191 PG_RETURN_FLOAT8(DEFAULT_ND_JOINSEL);
1192 }
1193
1194 /* Only respond to an inner join/unknown context join */
1195 if (jointype != JOIN_INNER)
1196 {
1197 POSTGIS_DEBUGF(1, "%s: jointype %d not supported", __func__, jointype);
1198 PG_RETURN_FLOAT8(DEFAULT_ND_JOINSEL);
1199 }
1200
1201 PG_RETURN_FLOAT8(gserialized_joinsel_internal(root, args, jointype, mode));
1202}
#define DEFAULT_ND_JOINSEL
float8 gserialized_joinsel_internal(PlannerInfo *root, List *args, JoinType jointype, int mode)

References DEFAULT_ND_JOINSEL, and gserialized_joinsel_internal().

Referenced by gserialized_gist_joinsel_2d(), and gserialized_gist_joinsel_nd().

Here is the call graph for this function:
Here is the caller graph for this function: