1. 26 11月, 2009 5 次提交
  2. 25 11月, 2009 2 次提交
  3. 24 11月, 2009 2 次提交
  4. 23 11月, 2009 5 次提交
  5. 22 11月, 2009 4 次提交
  6. 21 11月, 2009 2 次提交
    • T
      Refactor ecpg grammar so that it uses the core grammar's unreserved_keyword · e6c63bf6
      Tom Lane 提交于
      list, minus a few specific words that have to be treated specially.  This
      replaces a hard-wired list of keywords that would have needed manual
      maintenance, and was not getting it.  The 8.4 coding was already missing
      these words, causing ecpg to incorrectly treat them as reserved words:
      CALLED, CATALOG, DEFINER, ENUM, FOLLOWING, INVOKER, OPTIONS, PARTITION,
      PRECEDING, RANGE, SECURITY, SERVER, UNBOUNDED, WRAPPER.  In HEAD we were
      additionally missing COMMENTS, FUNCTIONS, SEQUENCES, TABLES.
      Per gripe from Bosco Rama.
      e6c63bf6
    • T
      Add a WHEN clause to CREATE TRIGGER, allowing a boolean expression to be · 7fc0f062
      Tom Lane 提交于
      checked to determine whether the trigger should be fired.
      
      For BEFORE triggers this is mostly a matter of spec compliance; but for AFTER
      triggers it can provide a noticeable performance improvement, since queuing of
      a deferred trigger event and re-fetching of the row(s) at end of statement can
      be short-circuited if the trigger does not need to be fired.
      
      Takahiro Itagaki, reviewed by KaiGai Kohei.
      7fc0f062
  7. 20 11月, 2009 1 次提交
  8. 19 11月, 2009 2 次提交
    • T
      Fix memory leak in syslogger: logfile_rotate() would leak a copy of the · b1d55dca
      Tom Lane 提交于
      output filename if CSV logging was enabled and only one of the two possible
      output files got rotated during a particular call (which would, in fact,
      typically be the case during a size-based rotation).  This would amount to
      about MAXPGPATH (1KB) per rotation, and it's been there since the CSV
      code was put in, so it's surprising that nobody noticed it before.
      Per bug #5196 from Thomas Poindessous.
      b1d55dca
    • T
      Add a hook to CREATE/ALTER ROLE to allow an external module to check the · c742b795
      Tom Lane 提交于
      strength of database passwords, and create a sample implementation of
      such a hook as a new contrib module "passwordcheck".
      
      Laurenz Albe, reviewed by Takahiro Itagaki
      c742b795
  9. 17 11月, 2009 2 次提交
    • T
      Provide a parenthesized-options syntax for VACUUM, analogous to that recently · 5e66a51c
      Tom Lane 提交于
      adopted for EXPLAIN.  This will allow additional options to be implemented
      in future without having to make them fully-reserved keywords.  The old syntax
      remains available for existing options, however.
      
      Itagaki Takahiro
      5e66a51c
    • T
      While doing the final setrefs.c pass over a plan tree, try to match up · 49ed392c
      Tom Lane 提交于
      non-Var sort/group expressions using ressortgroupref labels instead of
      depending entirely on equal()-ity of the upper node's tlist expressions
      to the lower node's.  This avoids emitting the wrong outputs in cases
      where there are textually identical volatile sort/group expressions,
      as for example
      	select distinct random(),random() from generate_series(1,10);
      Per report from Andrew Gierth.
      
      Backpatch to 8.4.  Arguably this is wrong all the way back, but the only known
      case where there's an observable problem is when using hash aggregation to
      implement DISTINCT, which is new as of 8.4.  So for the moment I'll refrain
      from backpatching further.
      49ed392c
  10. 15 11月, 2009 3 次提交
  11. 14 11月, 2009 6 次提交
  12. 13 11月, 2009 2 次提交
  13. 12 11月, 2009 4 次提交