cache->elems[i].datum = PointerGetDatum(cacheAlloc(ctx, size));
memcpy(DatumGetPointer(cache->elems[i].datum), DatumGetPointer(datum), size);
}
cache->elems[i].datum = PointerGetDatum(cacheAlloc(ctx, size));
memcpy(DatumGetPointer(cache->elems[i].datum), DatumGetPointer(datum), size);
}