1. 06 Jul, 2011 3 commits
    • Tom Lane's avatar
      Remove assumptions that not-equals operators cannot be in any opclass. · 14f67192
      Tom Lane authored
      get_op_btree_interpretation assumed this in order to save some duplication
      of code, but it's not true in general anymore because we added <> support
      to btree_gist.  (We still assume it for btree opclasses, though.)
      
      Also, essentially the same logic was baked into predtest.c.  Get rid of
      that duplication by generalizing get_op_btree_interpretation so that it
      can be used by predtest.c.
      
      Per bug report from Denis de Bernardy and investigation by Jeff Davis,
      though I didn't use Jeff's patch exactly as-is.
      
      Back-patch to 9.1; we do not support this usage before that.
      14f67192
    • Robert Haas's avatar
      Add \ir command to psql. · c7f23494
      Robert Haas authored
      \ir is short for "include relative"; when used from a script, the
      supplied pathname will be interpreted relative to the input file,
      rather than to the current working directory.
      
      Gurjeet Singh, reviewed by Josh Kupershmidt, with substantial further
      cleanup by me.
      c7f23494
    • Robert Haas's avatar
      Attempt to standardize formatting of psql queries. · 5ac6b767
      Robert Haas authored
      Most queries end with a backslash, but not a newline, so try to
      standardize on that, for the convenience of people using psql -E to
      extract queries.
      
      Josh Kupershmidt, reviewed by Merlin Moncure.
      5ac6b767
  2. 05 Jul, 2011 8 commits
  3. 04 Jul, 2011 12 commits
  4. 03 Jul, 2011 5 commits
    • Tom Lane's avatar
      Put comments on the installable procedural languages. · 99e47ed0
      Tom Lane authored
      Per suggestion from Josh Kupershmidt.
      99e47ed0
    • Robert Haas's avatar
      Fix bugs in relpersistence handling during table creation. · 5da79169
      Robert Haas authored
      Unlike the relistemp field which it replaced, relpersistence must be
      set correctly quite early during the table creation process, as we
      rely on it quite early on for a number of purposes, including security
      checks.  Normally, this is set based on whether the user enters CREATE
      TABLE, CREATE UNLOGGED TABLE, or CREATE TEMPORARY TABLE, but a
      relation may also be made implicitly temporary by creating it in
      pg_temp.  This patch fixes the handling of that case, and also
      disables creation of unlogged tables in temporary tablespace (such
      table indeed skip WAL-logging, but we reject an explicit
      specification) and creation of relations in the temporary schemas of
      other sessions (which is not very sensible, and didn't work right
      anyway).
      
      Report by Amit Khandekar.
      5da79169
    • Tom Lane's avatar
      Make distprep and *clean build targets recurse into all subdirectories. · acb9198b
      Tom Lane authored
      Certain subdirectories do not get built if corresponding options are not
      selected at configure time.  However, "make distprep" should visit such
      directories anyway, so that constructing derived files to be included in
      the tarball happens without requiring all configure options to be given
      in the tarball build script.  Likewise, it's better if cleanup actions
      unconditionally visit all directories (for example, this ensures proper
      cleanup if someone has done a manual make in such a subdirectory).
      
      To handle this, set up a convention that subdirectories that are
      conditionally included in SUBDIRS should be added to ALWAYS_SUBDIRS
      instead when they are excluded.
      
      Back-patch to 9.1, so that plpython's spiexceptions.h will get provided
      in 9.1 tarballs.  There don't appear to be any instances where distprep
      actions got missed in previous releases, and anyway this fix requires
      gmake 3.80 so we don't want to apply it before 9.1.
      acb9198b
    • Andrew Dunstan's avatar
      Fix bat file quoting of %ENV. · 19b7fac8
      Andrew Dunstan authored
      19b7fac8
    • Magnus Hagander's avatar
      Mark pg_stat_reset_shared as strict · 24e2d4b6
      Magnus Hagander authored
      This is the proper fix for bug #6082 about
      pg_stat_reset_shared(NULL) causing a crash, and it reverts
      commit 79aa4453 on head.
      
      The workaround of throwing an error from inside the function is
      left on backbranches (including 9.1) since this change requires
      a new initdb.
      24e2d4b6
  5. 02 Jul, 2011 1 commit
  6. 01 Jul, 2011 2 commits
  7. 30 Jun, 2011 1 commit
    • Alvaro Herrera's avatar
      Enable CHECK constraints to be declared NOT VALID · 89779524
      Alvaro Herrera authored
      This means that they can initially be added to a large existing table
      without checking its initial contents, but new tuples must comply to
      them; a separate pass invoked by ALTER TABLE / VALIDATE can verify
      existing data and ensure it complies with the constraint, at which point
      it is marked validated and becomes a normal part of the table ecosystem.
      
      An non-validated CHECK constraint is ignored in the planner for
      constraint_exclusion purposes; when validated, cached plans are
      recomputed so that partitioning starts working right away.
      
      This patch also enables domains to have unvalidated CHECK constraints
      attached to them as well by way of ALTER DOMAIN / ADD CONSTRAINT / NOT
      VALID, which can later be validated with ALTER DOMAIN / VALIDATE
      CONSTRAINT.
      
      Thanks to Thom Brown, Dean Rasheed and Jaime Casanova for the various
      reviews, and Robert Hass for documentation wording improvement
      suggestions.
      
      This patch was sponsored by Enova Financial.
      89779524
  8. 29 Jun, 2011 6 commits
    • Alvaro Herrera's avatar
      Fix outdated comment · b36927fb
      Alvaro Herrera authored
      Extracted from a patch by Bernd Helmle
      b36927fb
    • Tom Lane's avatar
      Restore correct btree preprocessing of "indexedcol IS NULL" conditions. · a5652d3e
      Tom Lane authored
      Such a condition is unsatisfiable in combination with any other type of
      btree-indexable condition (since we assume btree operators are always
      strict).  8.3 and 8.4 had an explicit test for this, which I removed in
      commit 29c4ad98, mistakenly thinking that
      the case would be subsumed by the more general handling of IS (NOT) NULL
      added in that patch.  Put it back, and improve the comments about it, and
      add a regression test case.
      
      Per bug #6079 from Renat Nasyrov, and analysis by Dean Rasheed.
      a5652d3e
    • Heikki Linnakangas's avatar
      Move the PredicateLockRelation() call from nodeSeqscan.c to heapam.c. It's · cd70dd6b
      Heikki Linnakangas authored
      more consistent that way, since all the other PredicateLock* calls are
      made in various heapam.c and index AM functions. The call in nodeSeqscan.c
      was unnecessarily aggressive anyway, there's no need to try to lock the
      relation every time a tuple is fetched, it's enough to do it once.
      
      This has the user-visible effect that if a seq scan is initialized in the
      executor, but never executed, we now acquire the predicate lock on the heap
      relation anyway. We could avoid that by taking the lock on the first
      heap_getnext() call instead, but it doesn't seem worth the trouble given
      that it feels more natural to do it in heap_beginscan().
      
      Also, remove the retail PredicateLockTuple() calls from heap_getnext(). In
      a seqscan, started with heap_begin(), we're holding a whole-relation
      predicate lock on the heap so there's no need to lock the tuples
      individually.
      
      Kevin Grittner and me
      cd70dd6b
    • Heikki Linnakangas's avatar
      Grab predicate locks on matching tuples in a lossy bitmap heap scan. · d9fe63ac
      Heikki Linnakangas authored
      Non-lossy case was already handled correctly.
      
      Kevin Grittner
      d9fe63ac
    • Magnus Hagander's avatar
      Protect pg_stat_reset_shared() against NULL input · 79aa4453
      Magnus Hagander authored
      Per bug #6082, reported by Steve Haslam
      79aa4453
    • Peter Eisentraut's avatar
      Unify spelling of "canceled", "canceling", "cancellation" · 21f1e15a
      Peter Eisentraut authored
      We had previously (af26857a)
      established the U.S. spellings as standard.
      21f1e15a
  9. 28 Jun, 2011 2 commits