cube.diff
text/plain
Patch
Same data as JSON:
GET /api/v1/attachments/:id/patch
the parsed metadata as JSON — format, series position, per-file stats; never the diff bytes.
API reference →
Format: context
| File | + | − |
|---|---|---|
| contrib/cube/cube.c | 17 | 0 |
*** a/contrib/cube/cube.c
--- b/contrib/cube/cube.c
***************
*** 73,78 **** PG_FUNCTION_INFO_V1(g_cube_penalty);
--- 73,79 ----
PG_FUNCTION_INFO_V1(g_cube_picksplit);
PG_FUNCTION_INFO_V1(g_cube_union);
PG_FUNCTION_INFO_V1(g_cube_same);
+ PG_FUNCTION_INFO_V1(g_cube_distance);
Datum g_cube_consistent(PG_FUNCTION_ARGS);
Datum g_cube_compress(PG_FUNCTION_ARGS);
***************
*** 81,86 **** Datum g_cube_penalty(PG_FUNCTION_ARGS);
--- 82,88 ----
Datum g_cube_picksplit(PG_FUNCTION_ARGS);
Datum g_cube_union(PG_FUNCTION_ARGS);
Datum g_cube_same(PG_FUNCTION_ARGS);
+ Datum g_cube_distance(PG_FUNCTION_ARGS);
/*
** B-tree support functions
***************
*** 649,654 **** g_cube_same(PG_FUNCTION_ARGS)
--- 651,671 ----
}
/*
+ ** Distance method
+ */
+ Datum
+ g_cube_distance(PG_FUNCTION_ARGS)
+ {
+ GISTENTRY *entry = (GISTENTRY *) PG_GETARG_POINTER(0);
+ NDBOX *query = PG_GETARG_NDBOX(1);
+ double distance;
+
+ distance = DatumGetFloat8(DirectFunctionCall2(cube_distance, entry->key, PointerGetDatum(query)));
+
+ PG_RETURN_FLOAT8(distance);
+ }
+
+ /*
** SUPPORT ROUTINES
*/
bool