1. 28 12月, 2005 7 次提交
    • B
      9c72df4e
    • B
      Update: · 6fa33572
      Bruce Momjian 提交于
      < * Add missing optimizer selectivities for date, r-tree, etc
      > * Add missing rtree optimizer selectivity
      6fa33572
    • B
      Add regression tests for CSV and \., and add automatic quoting of a · 87289ff3
      Bruce Momjian 提交于
      single column dump that has a \. value, so the load works properly.  I
      also added documentation describing this issue.
      87289ff3
    • B
      Done: · 1b184c99
      Bruce Momjian 提交于
      < * %Make row-wise comparisons work per SQL spec
      > * -Make row-wise comparisons work per SQL spec
      1b184c99
    • T
      Implement SQL-compliant treatment of row comparisons for < <= > >= cases · 6e077097
      Tom Lane 提交于
      (previously we only did = and <> correctly).  Also, allow row comparisons
      with any operators that are in btree opclasses, not only those with these
      specific names.  This gets rid of a whole lot of indefensible assumptions
      about the behavior of particular operators based on their names ... though
      it's still true that IN and NOT IN expand to "= ANY".  The patch adds a
      RowCompareExpr expression node type, and makes some changes in the
      representation of ANY/ALL/ROWCOMPARE SubLinks so that they can share code
      with RowCompareExpr.
      
      I have not yet done anything about making RowCompareExpr an indexable
      operator, but will look at that soon.
      
      initdb forced due to changes in stored rules.
      6e077097
    • A
      · a37422e0
      Andrew Dunstan 提交于
      Increase amount of shared buffers initdb tries to allocate to 4000,
      and add logic to try max_fsm_pages up to 200000, plus accompanying minor
      docs changes.
      a37422e0
    • B
      Our code had: · a598385f
      Bruce Momjian 提交于
                      if (c == '\\' && cstate->line_buf.len == 0)
      
      The problem with that is the because of the input and _output_
      buffering, cstate->line_buf.len could be zero even if we are not on the
      first character of a line.  In fact, for a typical line, it is zero for
      all characters on the line.  The proper solution is to introduce a
      boolean, first_char_in_line, that we set as we enter the loop and clear
      once we process a character.
      
      I have restructured the line-reading code in copy.c by:
      
              o  merging the CSV/non-CSV functions into a single function
              o  used macros to centralize and clarify the buffering code
              o  updated comments
              o  renamed client_encoding_only to encoding_embeds_ascii
              o  added a high-bit test to the encoding_embeds_ascii test for
                 performance
              o  in CSV mode, allow a backslash followed by a non-period to
                 continue being processed as a data value
      
      There should be no performance impact from this patch because it is
      functionally equivalent.  If you apply the patch you will see copy.c is
      much clearer in this area now and might suggest additional
      optimizations.
      
      I have also attached a 8.1-only patch to fix the CSV \. handling bug
      with no code restructuring.
      a598385f
  2. 27 12月, 2005 2 次提交
  3. 26 12月, 2005 3 次提交
    • P
      6840cccd
    • B
      Add: · 5c9a46f6
      Bruce Momjian 提交于
      * %Make row-wise comparisons work per SQL spec
      
        Right now, '(a, b) < (1, 2)' is processed as 'a < 1 and b < 2', but
        the SQL standard requires it to be processed as a column-by-column
        comparison, so the proper comparison is '(a < 1) OR (a = 1 AND b < 2)'.
      5c9a46f6
    • N
      Various cosmetic code cleanup for PL/Python: · 97e1535f
      Neil Conway 提交于
      - use "bool" rather than "int" for boolean variables
      
      - use "PLy_malloc" rather than "malloc" in two places
      
      - define "PLy_strdup", and use it rather than malloc() + strcpy() in
        two places (which should have been memcpy(), anyway).
      
      - remove a bunch of redundant parentheses from expressions that do not
        need the parentheses for code clarity
      97e1535f
  4. 25 12月, 2005 9 次提交
  5. 24 12月, 2005 5 次提交
  6. 23 12月, 2005 6 次提交
  7. 22 12月, 2005 2 次提交
  8. 21 12月, 2005 1 次提交
  9. 20 12月, 2005 2 次提交
  10. 18 12月, 2005 3 次提交