1. 28 Dec, 2005 10 commits
  2. 27 Dec, 2005 3 commits
    • Andrew Dunstan's avatar
      · a37422e0
      Andrew Dunstan authored
      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
    • Bruce Momjian's avatar
      Our code had: · a598385f
      Bruce Momjian authored
                      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
    • Bruce Momjian's avatar
  3. 26 Dec, 2005 4 commits
    • Bruce Momjian's avatar
      More uses of IS_HIGHBIT_SET() macro. · a2384d00
      Bruce Momjian authored
      a2384d00
    • Peter Eisentraut's avatar
    • Bruce Momjian's avatar
      Add: · 5c9a46f6
      Bruce Momjian authored
      * %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
    • Neil Conway's avatar
      Various cosmetic code cleanup for PL/Python: · 97e1535f
      Neil Conway authored
      - 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 Dec, 2005 2 commits
  5. 24 Dec, 2005 8 commits
  6. 23 Dec, 2005 7 commits
  7. 22 Dec, 2005 3 commits
    • Bruce Momjian's avatar
      Update item: · 2f1a78e2
      Bruce Momjian authored
      >
      >   A more complex solution would be to save multiple plans for different
      >   cardinality and use the appropriate plan based on the EXECUTE values.
      >
      2f1a78e2
    • Tom Lane's avatar
      Adjust string comparison so that only bitwise-equal strings are considered · 656beff5
      Tom Lane authored
      equal: if strcoll claims two strings are equal, check it with strcmp, and
      sort according to strcmp if not identical.  This fixes inconsistent
      behavior under glibc's hu_HU locale, and probably under some other locales
      as well.  Also, take advantage of the now-well-defined behavior to speed up
      texteq, textne, bpchareq, bpcharne: they may as well just do a bitwise
      comparison and not bother with strcoll at all.
      
      NOTE: affected databases may need to REINDEX indexes on text columns to be
      sure they are self-consistent.
      656beff5
    • Bruce Momjian's avatar
  8. 21 Dec, 2005 3 commits