1. 14 Nov, 2020 3 commits
  2. 13 Nov, 2020 2 commits
  3. 12 Nov, 2020 12 commits
  4. 11 Nov, 2020 9 commits
  5. 10 Nov, 2020 5 commits
  6. 09 Nov, 2020 8 commits
  7. 08 Nov, 2020 1 commit
    • Tom Lane's avatar
      In INSERT/UPDATE, use the table's real tuple descriptor as target. · 8b39345a
      Tom Lane authored
      This back-patches commit 20d3fe90 into the v12 and v13 branches.
      At the time I thought that commit was not fixing any observable
      bug, but Bertrand Drouvot showed otherwise: adding a dropped column
      to the previously-considered scenario crashes v12 and v13, unless the
      dropped column happens to be an integer.  That is, of course, because
      the tupdesc we derive from the plan output tlist fails to describe
      the dropped column accurately, so that we'll do the wrong thing with
      a tuple in which that column isn't NULL.
      
      There is no bug in pre-v12 branches because they already did use
      the table's real tuple descriptor for any trigger-returned tuple.
      It seems that this set of bugs can be blamed on the changes that
      removed es_trig_tuple_slot, though I've not attempted to pin that
      down precisely.
      
      Although there's no code change needed in HEAD, update the test case
      to include a dropped column there too.
      
      Discussion: https://postgr.es/m/db5d97c8-f48a-51e2-7b08-b73d5434d425@amazon.com
      Discussion: https://postgr.es/m/16644-5da7ef98a7ac4545@postgresql.org
      8b39345a