1. 12 9月, 2011 1 次提交
    • P
      Remove many -Wcast-qual warnings · 1b81c2fe
      Peter Eisentraut 提交于
      This addresses only those cases that are easy to fix by adding or
      moving a const qualifier or removing an unnecessary cast.  There are
      many more complicated cases remaining.
      1b81c2fe
  2. 11 9月, 2011 4 次提交
  3. 10 9月, 2011 3 次提交
    • T
      Try to un-break MSVC build. · 5a8de2f2
      Tom Lane 提交于
      I thought we had enough infrastructure to absorb CPPFLAGS changes from
      the makefiles, but buildfarm says otherwise.
      5a8de2f2
    • T
      Simplify handling of the timezone GUC by making initdb choose the default. · ca4af308
      Tom Lane 提交于
      We were doing some amazingly complicated things in order to avoid running
      the very expensive identify_system_timezone() procedure during GUC
      initialization.  But there is an obvious fix for that, which is to do it
      once during initdb and have initdb install the system-specific default into
      postgresql.conf, as it already does for most other GUC variables that need
      system-environment-dependent defaults.  This means that the timezone (and
      log_timezone) settings no longer have any magic behavior in the server.
      Per discussion.
      ca4af308
    • T
      Move Timestamp/Interval typedefs and basic macros into datatype/timestamp.h. · a7801b62
      Tom Lane 提交于
      As per my recent proposal, this refactors things so that these typedefs and
      macros are available in a header that can be included in frontend-ish code.
      I also changed various headers that were undesirably including
      utils/timestamp.h to include datatype/timestamp.h instead.  Unsurprisingly,
      this showed that half the system was getting utils/timestamp.h by way of
      xlog.h.
      
      No actual code changes here, just header refactoring.
      a7801b62
  4. 09 9月, 2011 3 次提交
  5. 08 9月, 2011 7 次提交
    • H
      Buffering GiST index build algorithm. · 5edb24a8
      Heikki Linnakangas 提交于
      When building a GiST index that doesn't fit in cache, buffers are attached
      to some internal nodes in the index. This speeds up the build by avoiding
      random I/O that would otherwise be needed to traverse all the way down the
      tree to the find right leaf page for tuple.
      
      Alexander Korotkov
      5edb24a8
    • T
      Fix corner case bug in numeric to_char(). · f0bedf3e
      Tom Lane 提交于
      Trailing-zero stripping applied by the FM specifier could strip zeroes
      to the left of the decimal point, for a format with no digit positions
      after the decimal point (such as "FM999.").
      
      Reported and diagnosed by Marti Raudsepp, though I didn't use his patch.
      f0bedf3e
    • B
      Allow bcc32 and win32 batch files to compile libpq. · 7b8e10f2
      Bruce Momjian 提交于
      Backpatch to 9.1.
      
      By Hiroshi Saito
      7b8e10f2
    • T
      Fix typo in error message. · 99155aaa
      Tom Lane 提交于
      Per Euler Taveira de Oliveira.
      99155aaa
    • T
      Fix get_name_for_var_field() to deal with RECORD Params. · a7d9203c
      Tom Lane 提交于
      With 9.1's use of Params to pass down values from NestLoop join nodes
      to their inner plans, it is possible for a Param to have type RECORD, in
      which case the set of fields comprising the value isn't determinable by
      inspection of the Param alone.  However, just as with a Var of type RECORD,
      we can find out what we need to know if we can locate the expression that
      the Param represents.  We already knew how to do this in get_parameter(),
      but I'd overlooked the need to be able to cope in get_name_for_var_field(),
      which led to EXPLAIN failing with "record type has not been registered".
      
      To fix, refactor the search code in get_parameter() so it can be used by
      both functions.
      
      Per report from Marti Raudsepp.
      a7d9203c
    • B
      Have pgrminclude skip files that use CppAsString2 because CppAsString2 · f1959375
      Bruce Momjian 提交于
      will expaned undefined identifiers.
      f1959375
    • B
      Fix bug introduced by pgrminclude where the tablespace version name was · f81fb4f6
      Bruce Momjian 提交于
      not expanded.
      
      Bump catalog version number to force initdb for all tablespaces.
      f81fb4f6
  6. 07 9月, 2011 7 次提交
  7. 06 9月, 2011 5 次提交
  8. 05 9月, 2011 4 次提交
    • T
      Guard against using plperl's Makefile without specifying --with-perl. · 6a24742c
      Tom Lane 提交于
      The $(PERL) macro will be set by configure if it finds perl at all,
      but $(perl_privlibexp) isn't configured unless you said --with-perl.
      This results in confusing error messages if someone cd's into
      src/pl/plperl and tries to build there despite the configure omission,
      as reported by Tomas Vondra in bug #6198.  Add simple checks to
      provide a more useful report, while not disabling other use of the
      makefile such as "make clean".
      
      Back-patch to 9.0, which is as far as the patch applies easily.
      6a24742c
    • T
      Change get_variable_numdistinct's API to flag default estimates explicitly. · 4c2777d0
      Tom Lane 提交于
      Formerly, callers tested for DEFAULT_NUM_DISTINCT, which had the problem
      that a perfectly solid estimate might be mistaken for a content-free
      default.
      4c2777d0
    • T
      Dig down into sub-selects to look for column statistics. · 1cb108ef
      Tom Lane 提交于
      If a sub-select's output column is a simple Var, recursively look for
      statistics applying to that Var, and use them if available.  The need for
      this was foreseen ages ago, but we didn't have enough infrastructure to do
      it with reasonable speed until just now.
      
      We punt and stick with default estimates if the subquery uses set
      operations, GROUP BY, or DISTINCT, since those operations would change the
      underlying column statistics (particularly, the relative frequencies of
      different values) beyond recognition.  This means that the types of
      sub-selects for which this improvement applies are fairly limited, since
      most subqueries satisfying those restrictions would have gotten flattened
      into the parent query anyway.  But it does help for some cases, such as
      subqueries with ORDER BY or LIMIT.
      1cb108ef
    • T
      Can't print PlannerGlobal's subroots list in outfuncs. · 698df335
      Tom Lane 提交于
      Since the subroots will surely link back to the same glob struct, this
      necessarily leads to infinite recursion.  Doh.  Found while trying to
      debug some other code.
      698df335
  9. 04 9月, 2011 6 次提交
    • T
      Clean up the #include mess a little. · 1609797c
      Tom Lane 提交于
      walsender.h should depend on xlog.h, not vice versa.  (Actually, the
      inclusion was circular until a couple hours ago, which was even sillier;
      but Bruce broke it in the expedient rather than logically correct
      direction.)  Because of that poor decision, plus blind application of
      pgrminclude, we had a situation where half the system was depending on
      xlog.h to include such unrelated stuff as array.h and guc.h.  Clean up
      the header inclusion, and manually revert a lot of what pgrminclude had
      done so things build again.
      
      This episode reinforces my feeling that pgrminclude should not be run
      without adult supervision.  Inclusion changes in header files in particular
      need to be reviewed with great care.  More generally, it'd be good if we
      had a clearer notion of module layering to dictate which headers can sanely
      include which others ... but that's a big task for another day.
      1609797c
    • T
      Remove unnecessary and circular #include. · f116b1f5
      Tom Lane 提交于
      storage/proc.h should not include replication/syncrep.h, especially not
      when the latter includes storage/proc.h; but in any case this was a pretty
      poor thing from a modular layering standpoint.
      f116b1f5
    • B
      walsender.h doesn't need xlog.h, per Tom. · 5bce637a
      Bruce Momjian 提交于
      5bce637a
    • B
      Move AllowCascadeReplication() define from xlog.h to replication include · 85e6e166
      Bruce Momjian 提交于
      file.
      
      Per suggestion from Alvaro.
      85e6e166
    • B
      Remove find_lt sgml tool, as it is not needed. · ca598c18
      Bruce Momjian 提交于
      Per suggestion from Peter.
      ca598c18
    • T
      Fix typo in pg_srand48 (srand48 in older branches). · 48e4b8dc
      Tom Lane 提交于
      ">" should be ">>".  This typo results in failure to use all of the bits
      of the provided seed.
      
      This might rise to the level of a security bug if we were relying on
      srand48 for any security-critical purposes, but we are not --- in fact,
      it's not used at all unless the platform lacks srandom(), which is
      improbable.  Even on such a platform the exposure seems minimal.
      
      Reported privately by Andres Freund.
      48e4b8dc