Skip to content
Snippets Groups Projects
Select Git revision
  • benchmark-tools
  • postgres-lambda
  • master default
  • REL9_4_25
  • REL9_5_20
  • REL9_6_16
  • REL_10_11
  • REL_11_6
  • REL_12_1
  • REL_12_0
  • REL_12_RC1
  • REL_12_BETA4
  • REL9_4_24
  • REL9_5_19
  • REL9_6_15
  • REL_10_10
  • REL_11_5
  • REL_12_BETA3
  • REL9_4_23
  • REL9_5_18
  • REL9_6_14
  • REL_10_9
  • REL_11_4
23 results

spi

  • Clone with SSH
  • Clone with HTTPS
  • user avatar
    Tom Lane authored
    Add PlaceHolderVar wrappers as needed to make UNION ALL sub-select output
    expressions appear non-constant and distinct from each other.  This makes
    the world safe for add_child_rel_equivalences to do what it does.  Before,
    it was possible for that function to add identical expressions to different
    EquivalenceClasses, which logically should imply merging such ECs, which
    would be wrong; or to improperly add a constant to an EquivalenceClass,
    drastically changing its behavior.  Per report from Teodor Sigaev.
    
    The only currently known consequence of this bug is "MergeAppend child's
    targetlist doesn't match MergeAppend" planner failures in 9.1 and later.
    I am suspicious that there may be other failure modes that could affect
    older release branches; but in the absence of any hard evidence, I'll
    refrain from back-patching further than 9.1.
    57664ed2
    History
    Name Last commit Last update
    ..