Skip to content
Snippets Groups Projects
  1. Jan 25, 2006
  2. Jan 23, 2006
  3. Jan 21, 2006
    • Bruce Momjian's avatar
      Add GRANT ON SEQUENCE syntax to support sequence-only permissions. · 4789e988
      Bruce Momjian authored
      Continue to support GRANT ON [TABLE] for sequences for backward
      compatibility;  issue warning for invalid sequence permissions.
      
      [Backward compatibility warning message.]
      
      Add USAGE permission for sequences that allows only currval() and
      nextval(), not setval().
      
      Mention object name in grant/revoke warnings because of possible
      multi-object operations.
      4789e988
  4. Jan 19, 2006
    • Tom Lane's avatar
      Add some test scaffolding to allow cache-flush stress testing (and I do · efbe674e
      Tom Lane authored
      mean stress ... system is orders of magnitude slower with this enabled).
      efbe674e
    • Tom Lane's avatar
      Avoid crashing if relcache flush occurs while trying to load data into an · ed69cf5d
      Tom Lane authored
      index's support-function cache (in index_getprocinfo).  Since none of that
      data can change for an index that's in active use, it seems sufficient to
      treat all open indexes the same way we were treating "nailed" system indexes
      --- that is, just re-read the pg_class row and leave the rest of the relcache
      entry strictly alone.  The pg_class re-read might not be strictly necessary
      either, but since the reltablespace and relfilenode can change in normal
      operation it seems safest to do it.  (We don't support changing any of the
      other info about an index at all, at the moment.)
      
      Back-patch as far as 8.0.  It might be possible to adapt the patch to 7.4,
      but it would take more work than I care to expend for such a low-probability
      problem.  7.3 is out of luck for sure.
      ed69cf5d
    • Tom Lane's avatar
      Fix a tiny memory leak (one List header) in RelationCacheInvalidate(). · b0be247e
      Tom Lane authored
      This is utterly insignificant in normal operation, but it becomes a
      problem during cache inval stress testing.  The original coding in fact
      had no leak --- the 8.0 List rewrite created the issue.  I wonder whether
      list_concat should pfree the discarded header?
      b0be247e
  5. Jan 18, 2006
    • Neil Conway's avatar
      Add a new system view, pg_cursors, that displays the currently available · 33e06ebc
      Neil Conway authored
      cursors. Patch from Joachim Wieland, review and ediorialization by Neil
      Conway. The view lists cursors defined by DECLARE CURSOR, using SPI, or
      via the Bind message of the frontend/backend protocol. This means the
      view does not list the unnamed portal or the portal created to implement
      EXECUTE. Because we do list SPI portals, there might be more rows in
      this view than you might expect if you are using SPI implicitly (e.g.
      via a procedural language).
      
      Per recent discussion on -hackers, the query string included in the
      view for cursors defined by DECLARE CURSOR is based on
      debug_query_string. That means it is not accurate if multiple queries
      separated by semicolons are submitted as one query string. However,
      there doesn't seem a trivial fix for that: debug_query_string
      is better than nothing. I also changed SPI_cursor_open() to include
      the source text for the portal it creates: AFAICS there is no reason
      not to do this.
      
      Update the documentation and regression tests, bump the catversion.
      33e06ebc
  6. Jan 14, 2006
  7. Jan 12, 2006
    • Neil Conway's avatar
      mbutils was previously doing some allocations, including invoking · d3a4d633
      Neil Conway authored
      fmgr_info(), in the TopMemoryContext. I couldn't see that the code
      actually leaked, but in general I think it's fragile to assume that
      pfree'ing an FmgrInfo along with its fn_extra field is enough to
      reclaim all the resources allocated by fmgr_info().  I changed the
      code to do its allocations in a new child context of
      TopMemoryContext, MbProcContext. When we want to release the
      allocations we can just reset the context, which is cleaner.
      d3a4d633
  8. Jan 11, 2006
  9. Jan 10, 2006
    • Tom Lane's avatar
      Improve patternsel() by applying the operator itself to each value · ce8fd39e
      Tom Lane authored
      listed in the column's most-common-values statistics entry.  This gives
      us an exact selectivity result for the portion of the column population
      represented by the MCV list, which can be a big leg up in accuracy if
      that's a large fraction of the population.  The heuristics involving
      pattern contents and prefix are applied only to the part of the population
      not included in the MCV list.
      ce8fd39e
  10. Jan 09, 2006
  11. Jan 08, 2006
  12. Jan 07, 2006
    • Tom Lane's avatar
      During CatCacheRemoveCList, we must now remove any members that are · 7eb54281
      Tom Lane authored
      dead and have become unreferenced.  Before 8.1, such members were left
      for AtEOXact_CatCache() to clean up, but now AtEOXact_CatCache isn't
      supposed to have anything to do.  In an assert-enabled build this bug
      leads to an assertion failure at transaction end, but in a non-assert
      build the dead member is effectively just a small memory leak.
      Per report from Jeremy Drake.
      7eb54281
  13. Jan 05, 2006
  14. Jan 04, 2006
  15. Jan 02, 2006
  16. Jan 01, 2006
    • Tom Lane's avatar
      Rewrite ProcessConfigFile() to avoid misbehavior at EOF, as per report · fc6da31a
      Tom Lane authored
      from Andrus Moor.  The former state-machine-style coding wasn't actually
      doing much except obscuring the control flow, and it didn't extend
      readily to fix this case, so I just took it out.  Also, add a
      YY_FLUSH_BUFFER call to ensure the lexer is reset correctly if the
      previous scan failed partway through the file.
      fc6da31a
  17. Dec 30, 2005
  18. Dec 29, 2005
  19. Dec 28, 2005
    • Tom Lane's avatar
      Move plpgsql's fetchArgInfo() into funcapi.c, and rename to · 15093bf2
      Tom Lane authored
      get_func_arg_info() for consistency with other names there.
      This code will probably be useful to other PLs when they start to
      support OUT parameters, so better to have it in the main backend.
      Also, fix plpgsql validator to detect bogus OUT parameters even when
      check_function_bodies is off.
      15093bf2
    • Bruce Momjian's avatar
      Mention "table" in "violates foreign key constraint" message that was · 776d63f9
      Bruce Momjian authored
      lacking it.  Perhaps it was suppressed because of line length
      considerations, but "table" should appear.
      776d63f9
    • Tom Lane's avatar
      Remove silly use of DLLIMPORT. · a4e51699
      Tom Lane authored
      a4e51699
    • Tom Lane's avatar
      Implement SQL-compliant treatment of row comparisons for < <= > >= cases · 6e077097
      Tom Lane authored
      (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
  20. Dec 26, 2005
  21. Dec 25, 2005
    • Bruce Momjian's avatar
      I have added these macros to c.h: · 261114a2
      Bruce Momjian authored
              #define HIGHBIT                 (0x80)
              #define IS_HIGHBIT_SET(ch)      ((unsigned char)(ch) & HIGHBIT)
      
      and removed CSIGNBIT and mapped it uses to HIGHBIT.  I have also added
      uses for IS_HIGHBIT_SET where appropriate.  This change is
      purely for code clarity.
      261114a2
  22. Dec 24, 2005
Loading