{
HeapTuple stats_tuple;
float4 *floatptr;
- int32 table_oid = PG_GETARG_INT32(0);
- int32 attr_num = PG_GETARG_INT32(1);
+ Oid table_oid = PG_GETARG_INT32(0);
+ int16 attr_num = PG_GETARG_INT32(1);
Datum geom_datum = PG_GETARG_DATUM(2);
int rv;
GBOX gbox;
elog(ERROR, "Unable to calculate search box from geometry");
/* First pull the stats tuple */
- stats_tuple = SearchSysCache2(STATRELATT, Int32GetDatum(table_oid), Int32GetDatum(attr_num));
+ stats_tuple = SearchSysCache2(STATRELATT, ObjectIdGetDatum(table_oid), Int16GetDatum(attr_num));
if ( ! stats_tuple )
elog(ERROR, "Unable to retreive stats tuple for oid(%d) attrnum(%d)", table_oid, attr_num);
LANGUAGE 'c';
-- Availability: 2.1.0
-CREATE OR REPLACE FUNCTION geometry_gist_read_selectivity(relid integer, attnum integer, geom geometry)
+CREATE OR REPLACE FUNCTION geometry_gist_read_selectivity(relid oid, attnum int2, geom geometry)
RETURNS float8
AS 'MODULE_PATHNAME', 'geometry_gist_read_selectivity'
LANGUAGE 'c';
DECLARE
selectivity float8;
BEGIN
- SELECT geometry_gist_read_selectivity(r.oid::integer, a.attnum::integer, 'SRID=4326;LINESTRING(0 0, 1 1)'::geometry)
+ SELECT geometry_gist_read_selectivity(r.oid, a.attnum, 'SRID=4326;LINESTRING(0 0, 1 1)'::geometry)
INTO selectivity
FROM pg_class r
JOIN pg_attribute a ON (r.oid = a.attrelid)