Commit 77b88bd5 authored by Peter Geoghegan's avatar Peter Geoghegan

Add assertions to _bt_update_posting().

Copy some assertions from _bt_form_posting() to its sibling function,
_bt_update_posting().

Discussion: https://postgr.es/m/CAH2-WzkPR8KMwkL0ap976kmXwBCeukTeHz6fB-U__wvuP1S9Zg@mail.gmail.com
parent ed0d8837
...@@ -688,6 +688,9 @@ _bt_update_posting(BTVacuumPosting vacposting) ...@@ -688,6 +688,9 @@ _bt_update_posting(BTVacuumPosting vacposting)
else else
newsize = keysize; newsize = keysize;
Assert(newsize <= INDEX_SIZE_MASK);
Assert(newsize == MAXALIGN(newsize));
/* Allocate memory using palloc0() (matches index_form_tuple()) */ /* Allocate memory using palloc0() (matches index_form_tuple()) */
itup = palloc0(newsize); itup = palloc0(newsize);
memcpy(itup, origtuple, keysize); memcpy(itup, origtuple, keysize);
...@@ -721,6 +724,7 @@ _bt_update_posting(BTVacuumPosting vacposting) ...@@ -721,6 +724,7 @@ _bt_update_posting(BTVacuumPosting vacposting)
Assert(ui == nhtids); Assert(ui == nhtids);
Assert(d == vacposting->ndeletedtids); Assert(d == vacposting->ndeletedtids);
Assert(nhtids == 1 || _bt_posting_valid(itup)); Assert(nhtids == 1 || _bt_posting_valid(itup));
Assert(nhtids > 1 || ItemPointerIsValid(&itup->t_tid));
/* vacposting arg's itup will now point to updated version */ /* vacposting arg's itup will now point to updated version */
vacposting->itup = itup; vacposting->itup = itup;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment