aboutsummaryrefslogtreecommitdiff
path: root/src/backend/access/common/heaptuple.c
diff options
context:
space:
mode:
authorAndres Freund <andres@anarazel.de>2018-03-27 21:03:10 -0700
committerAndres Freund <andres@anarazel.de>2018-03-27 21:03:10 -0700
commitf4f5845b3182ab930e525b1419bca47ac611604e (patch)
tree5cd066447b1e4f38801071d3083126004ebaea40 /src/backend/access/common/heaptuple.c
parentb4013b8e4a271816ba87aa56f46dbc04a083d962 (diff)
downloadpostgresql-f4f5845b3182ab930e525b1419bca47ac611604e.tar.gz
postgresql-f4f5845b3182ab930e525b1419bca47ac611604e.zip
Quick adaption of JIT tuple deforming to the fast default patch.
Instead using memset to set tts_isnull, call the new slot_getmissingattrs(). Also fix a bug (= instead of >=) in the code generation. Normally = is correct, but when repeatedly deforming fields not in a tuple (e.g. deform up to natts + 1 and then natts + 2) >= is needed. Discussion: https://postgr.es/m/20180328010053.i2qvsuuusst4lgmc@alap3.anarazel.de
Diffstat (limited to 'src/backend/access/common/heaptuple.c')
-rw-r--r--src/backend/access/common/heaptuple.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/backend/access/common/heaptuple.c b/src/backend/access/common/heaptuple.c
index b6ad7356718..960bbe42037 100644
--- a/src/backend/access/common/heaptuple.c
+++ b/src/backend/access/common/heaptuple.c
@@ -112,9 +112,13 @@ getmissingattr(TupleDesc tupleDesc,
}
/*
- * Fill in missing values for a TupleTableSlot
+ * Fill in missing values for a TupleTableSlot.
+ *
+ * This is only exposed because it's needed for JIT compiled tuple
+ * deforming. That exception aside, there should be no callers outside of this
+ * file.
*/
-static void
+void
slot_getmissingattrs(TupleTableSlot *slot, int startAttNum, int lastAttNum)
{
AttrMissing *attrmiss = NULL;