PostGIS  3.1.6dev-r@@SVN_REVISION@@

◆ gserialized_gist_joinsel()

Datum gserialized_gist_joinsel ( PG_FUNCTION_ARGS  )

Definition at line 1336 of file gserialized_estimate.c.

1337 {
1338  PlannerInfo *root = (PlannerInfo *) PG_GETARG_POINTER(0);
1339  /* Oid operator = PG_GETARG_OID(1); */
1340  List *args = (List *) PG_GETARG_POINTER(2);
1341  JoinType jointype = (JoinType) PG_GETARG_INT16(3);
1342  int mode = PG_GETARG_INT32(4);
1343 
1344  POSTGIS_DEBUGF(2, "%s: entered function", __func__);
1345 
1346  /* Check length of args and punt on > 2 */
1347  if (list_length(args) != 2)
1348  {
1349  POSTGIS_DEBUGF(2, "%s: got nargs == %d", __func__, list_length(args));
1350  PG_RETURN_FLOAT8(DEFAULT_ND_JOINSEL);
1351  }
1352 
1353  /* Only respond to an inner join/unknown context join */
1354  if (jointype != JOIN_INNER)
1355  {
1356  POSTGIS_DEBUGF(1, "%s: jointype %d not supported", __func__, jointype);
1357  PG_RETURN_FLOAT8(DEFAULT_ND_JOINSEL);
1358  }
1359 
1360  PG_RETURN_FLOAT8(gserialized_joinsel_internal(root, args, jointype, mode));
1361 }
#define DEFAULT_ND_JOINSEL
float8 gserialized_joinsel_internal(PlannerInfo *root, List *args, JoinType jointype, int mode)
args
Definition: ovdump.py:45

References ovdump::args, 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: