0
私はC SPIを使用してPostgresql関数を拡張しています。この関数は、Postgres N-Dim配列を取り込んでそこからデータを取得できる必要があります。私は1次元配列からデータを取得することができますが、N次元配列にアクセスしようとするとsegfaultを取得します。それは1次元配列に行列をフラット化が、出てきた値は、単にゴミであるかのように、単に要素にアクセスするための多次元配列を入力としてPostgresql C関数を構築する
私の最初の試みは、単に
PG_FUNCTION_INFO_V1(sum_elements);
Datum
matmul(PG_FUNCTION_ARGS)
{
ArrayType *anyArray = PG_GETARG_ARRAYTYPE_P(0);
int32 **a = (int32 **) ARR_DATA_PTR(anyArray);
PG_RETURN_INT64(a[1][1]);
}
だった私も試してみました。
ありがとうございました!