PostGIS  3.0.6dev-r@@SVN_REVISION@@

◆ gserialized_gist_joinsel()

Datum gserialized_gist_joinsel ( PG_FUNCTION_ARGS  )

Definition at line 1317 of file gserialized_estimate.c.

1318 {
1319  PlannerInfo *root = (PlannerInfo *) PG_GETARG_POINTER(0);
1320  /* Oid operator = PG_GETARG_OID(1); */
1321  List *args = (List *) PG_GETARG_POINTER(2);
1322  JoinType jointype = (JoinType) PG_GETARG_INT16(3);
1323  int mode = PG_GETARG_INT32(4);
1324 
1325  POSTGIS_DEBUGF(2, "%s: entered function", __func__);
1326 
1327  /* Check length of args and punt on > 2 */
1328  if (list_length(args) != 2)
1329  {
1330  POSTGIS_DEBUGF(2, "%s: got nargs == %d", __func__, list_length(args));
1331  PG_RETURN_FLOAT8(DEFAULT_ND_JOINSEL);
1332  }
1333 
1334  /* Only respond to an inner join/unknown context join */
1335  if (jointype != JOIN_INNER)
1336  {
1337  POSTGIS_DEBUGF(1, "%s: jointype %d not supported", __func__, jointype);
1338  PG_RETURN_FLOAT8(DEFAULT_ND_JOINSEL);
1339  }
1340 
1341  PG_RETURN_FLOAT8(gserialized_joinsel_internal(root, args, jointype, mode));
1342 }
#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: