1. 10 10月, 2008 8 次提交
  2. 09 10月, 2008 2 次提交
  3. 08 10月, 2008 4 次提交
  4. 07 10月, 2008 7 次提交
    • M
      Synced parser. · 059349be
      Michael Meskes 提交于
      059349be
    • H
      When a relation is moved to another tablespace, we can't assume that we can · fa3938fc
      Heikki Linnakangas 提交于
      use the old relfilenode in the new tablespace. There might be another relation
      in the new tablespace with the same relfilenode, so we must generate a fresh
      relfilenode in the new tablespace.
      
      The 8.3 patch to let deleted relation files linger as zero-length files until
      the next checkpoint made this more obvious: moving a relation from one table
      space another, and then back again, caused a collision with the lingering
      file.
      
      Back-patch to 8.1. The issue is present in 8.0 as well, but it doesn't seem
      worth fixing there, because we didn't have protection from OID collisions
      after OID wraparound before 8.1.
      
      Report by Guillaume Lelarge.
      fa3938fc
    • T
      Improve parser error location for cases where an INSERT or UPDATE command · 078aaf79
      Tom Lane 提交于
      supplies an expression that can't be coerced to the target column type.
      The code previously attempted to point at the target column name, which
      doesn't work at all in an INSERT with omitted column name list, and is
      also not remarkably helpful when the problem is buried somewhere in a
      long INSERT-multi-VALUES command.  Make it point at the failed expression
      instead.
      078aaf79
    • B
      Improve backend flowchart to show more detail. · a6586c0d
      Bruce Momjian 提交于
      a6586c0d
    • T
      Fix oversight in recent patch to support multiple read positions in · 34f89cb4
      Tom Lane 提交于
      tuplestore: in READFILE state tuplestore_select_read_pointer must
      save the current file seek position in the read pointer being
      deactivated.
      34f89cb4
    • T
      Fix up ruleutils.c for CTE features. The main problem was that · 742fd06d
      Tom Lane 提交于
      get_name_for_var_field didn't have enough context to interpret a reference to
      a CTE query's output.  Fixing this requires separate hacks for the regular
      deparse case (pg_get_ruledef) and for the EXPLAIN case, since the available
      context information is quite different.  It's pretty nearly parallel to the
      existing code for SUBQUERY RTEs, though.  Also, add code to make sure we
      qualify a relation name that matches a CTE name; else the CTE will mistakenly
      capture the reference when reloading the rule.
      
      In passing, fix a pre-existing problem with get_name_for_var_field not working
      on variables in targetlists of SubqueryScan plan nodes.  Although latent all
      along, this wasn't a problem until we made EXPLAIN VERBOSE try to print
      targetlists.  To do this, refactor the deparse_context_for_plan API so that
      the special case for SubqueryScan is all on ruleutils.c's side.
      742fd06d
    • T
      When expanding a whole-row Var into a RowExpr during ResolveNew(), attach · bf461538
      Tom Lane 提交于
      the column alias names of the RTE referenced by the Var to the RowExpr.
      This is needed to allow ruleutils.c to correctly deparse FieldSelect nodes
      referencing such a construct.  Per my recent bug report.
      
      Adding a field to RowExpr forces initdb (because of stored rules changes)
      so this solution is not back-patchable; which is unfortunate because 8.2
      and 8.3 have this issue.  But it only affects EXPLAIN for some pretty odd
      corner cases, so we can probably live without a solution for the back
      branches.
      bf461538
  5. 06 10月, 2008 14 次提交
  6. 05 10月, 2008 4 次提交
  7. 04 10月, 2008 1 次提交