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

hash

  • Clone with SSH
  • Clone with HTTPS
  • user avatar
    Tom Lane authored
    An out-of-memory error during expand_table() on a palloc-based hash table
    would leave a partially-initialized entry in the table.  This would not be
    harmful for transient hash tables, since they'd get thrown away anyway at
    transaction abort.  But for long-lived hash tables, such as the relcache
    hash, this would effectively corrupt the table, leading to crash or other
    misbehavior later.
    
    To fix, rearrange the order of operations so that table enlargement is
    attempted before we insert a new entry, rather than after adding it
    to the hash table.
    
    Problem discovered by Hitoshi Harada, though this is a bit different
    from his proposed patch.
    4e32f8cd
    History
    Name Last commit Last update
    ..