1. 04 8月, 2004 1 次提交
    • T
      Add functions pg_start_backup, pg_stop_backup to create backup label · 58c41712
      Tom Lane 提交于
      and history files as per recent discussion.  While at it, remove
      pg_terminate_backend, since we have decided we do not have time during
      this release cycle to address the reliability concerns it creates.
      Split the 'Miscellaneous Functions' documentation section into
      'System Information Functions' and 'System Administration Functions',
      which hopefully will draw the eyes of those looking for such things.
      58c41712
  2. 13 7月, 2004 1 次提交
  3. 03 7月, 2004 2 次提交
    • T
      Add missing operators of the form interval-plus-datetime, as required for · e34082ee
      Tom Lane 提交于
      better SQL compliance in this area, per recent discussion.  Mark related
      operators as commutators where possible.  (The system doesn't actually care
      about commutator marking for operators not returning boolean, at the moment,
      but this seems forward-thinking and besides it made it easier to verify
      that we hadn't missed any.)
      Also, remove interval-minus-time and interval-minus-timetz operators.
      I'm not sure how these got in, but they are nonstandard and had very
      obviously broken behavior.  (minus is not commutative in anyone's book.)
      I doubt anyone had ever used 'em, because we'd surely have gotten a bug
      report about it if so.
      e34082ee
    • J
      Andreas Pflug wrote: · 0b89d261
      Joe Conway 提交于
       From an idea of Bruce, the attached patch implements the function
       pg_tablespace_databases(oid) RETURNS SETOF oid
       which delivers as set of database oids having objects in the selected
       tablespace, enabling an admin to examine only the databases affecting
       the tablespace for objects instead of scanning all of them.
      
      initdb forced
      0b89d261
  4. 26 6月, 2004 1 次提交
  5. 25 6月, 2004 1 次提交
  6. 16 6月, 2004 1 次提交
    • T
      Represent type-specific length coercion functions as pg_cast entries, · d70a42e6
      Tom Lane 提交于
      eliminating the former hard-wired convention about their names.  Allow
      pg_cast entries to represent both type coercion and length coercion in
      a single step --- this is represented by a function that takes an
      extra typmod argument, just like a length coercion function.  This
      nicely merges the type and length coercion mechanisms into something
      at least a little cleaner than we had before.  Make use of the single-
      coercion-step behavior to fix integer-to-bit coercion so that coercing
      to bit(n) yields the rightmost n bits of the integer instead of the
      leftmost n bits.  This should fix recurrent complaints about the odd
      behavior of this coercion.  Clean up the documentation of the bit string
      functions, and try to put it where people might actually find it.
      Also, get rid of the unreliable heuristics in ruleutils.c about whether
      to display nested coercion steps; instead require parse_coerce.c to
      label them properly in the first place.
      d70a42e6
  7. 15 6月, 2004 1 次提交
  8. 14 6月, 2004 1 次提交
  9. 03 6月, 2004 1 次提交
    • B
      Small patch that adds some documentation for the area() function. · 70f5a87e
      Bruce Momjian 提交于
      Specifically, point out that intersecting points in a path will yield
      (most likely), unexpected results.  Visually these are identical paths,
      but mathematically they're not the same.  Ex:
      
        area |                                           plan
      ------
      +-----------------------------------------------------------------------
      -------------------
          -0 | ((0,0),(0,1),(2,1),(2,2),(1,2),(1,0),(0,0))
           2 | ((0,0),(0,1),(1,1),(1,2),(2,2),(2,1),(1,1),(1,0),(0,0))
      
      The current algorithm for area(PATH) is very quick, but only handles
      non-intersecting paths.  I'm going to work on two other functions for
      the PATH data type that determines if a PATH is intersecting or not,
      and a function that returns the area() for an intersecting PATH.  The
      intersecting area() function will be considerably slower (I think it's
      going to be O(n!) or worse instead of the current O(n), but that comes
      with the territory).
      
      Sean Chittenden
      70f5a87e
  10. 27 5月, 2004 1 次提交
    • B
      *) inet_(client|server)_(addr|port)() and necessary documentation for · 97d625dd
      Bruce Momjian 提交于
      the four functions.
      
      
      > Also, please justify the temp-related changes.  I was not aware that we
      > had any breakage there.
      
      patch-tmp-schema.txt contains the following bits:
      
      *) Changes pg_namespace_aclmask() so that the superuser is always able
      to create objects in the temp namespace.
      *) Changes pg_namespace_aclmask() so that if this is a temp namespace,
      objects are only allowed to be created in the temp namespace if the
      user has TEMP privs on the database.  This encompasses all object
      creation, not just TEMP tables.
      *) InitTempTableNamespace() checks to see if the current user, not the
      session user, has access to create a temp namespace.
      
      The first two changes are necessary to support the third change.  Now
      it's possible to revoke all temp table privs from non-super users and
      limiting all creation of temp tables/schemas via a function that's
      executed with elevated privs (security definer).  Before this change,
      it was not possible to have a setuid function to create a temp
      table/schema if the session user had no TEMP privs.
      
      patch-area-path.txt contains:
      
      *) Can now determine the area of a closed path.
      
      
      patch-dfmgr.txt contains:
      
      *) Small tweak to add the library path that's being expanded.
      
      I was using $lib/foo.so and couldn't easily figure out what the error
      message, "invalid macro name in dynamic library path" meant without
      looking through the source code.  With the path in there, at least I
      know where to start looking in my config file.
      
      Sean Chittenden
      97d625dd
  11. 26 5月, 2004 1 次提交
    • B
      The added aggregates are: · 8096fe45
      Bruce Momjian 提交于
      (1) boolean-and and boolean-or aggregates named bool_and and bool_or.
          they (SHOULD;-) correspond to standard sql every and some/any aggregates.
          they do not have the right name as there is a problem with
          the standard and the parser for some/any. Tom also think that
          the standard name is misleading because NULL are ignored.
          Also add 'every' aggregate.
      
      (2) bitwise integer aggregates named bit_and and bit_or for
          int2, int4, int8 and bit types. They are not standard, but I find
          them useful. I needed them once.
      
      
      The patches adds:
      
      - 2 new very short strict functions for boolean aggregates in
        src/backed/utils/adt/bool.c,
        src/include/utils/builtins.h and src/include/catalog/pg_proc.h
      
      - the new aggregates declared in src/include/catalog/pg_proc.h and
        src/include/catalog/pg_aggregate.h
      
      - some documentation and validation about these new aggregates.
      
      Fabien COELHO
      8096fe45
  12. 20 5月, 2004 1 次提交
  13. 15 5月, 2004 1 次提交
    • N
      Implement the width_bucket() function, per SQL2003. This commit only adds · 0079547b
      Neil Conway 提交于
      a variant of the function for the 'numeric' datatype; it would be possible
      to add additional variants for other datatypes, but I haven't done so yet.
      
      This commit includes regression tests and minimal documentation; if we
      want developers to actually use this function in applications, we'll
      probably need to document what it does more fully.
      0079547b
  14. 11 5月, 2004 2 次提交
    • T
      Promote row expressions to full-fledged citizens of the expression syntax, · 2f63232d
      Tom Lane 提交于
      rather than allowing them only in a few special cases as before.  In
      particular you can now pass a ROW() construct to a function that accepts
      a rowtype parameter.  Internal generation of RowExprs fixes a number of
      corner cases that used to not work very well, such as referencing the
      whole-row result of a JOIN or subquery.  This represents a further step in
      the work I started a month or so back to make rowtype values into
      first-class citizens.
      2f63232d
    • N
      Fix typo. · 9a939886
      Neil Conway 提交于
      9a939886
  15. 05 5月, 2004 1 次提交
  16. 24 4月, 2004 1 次提交
    • N
      Add ceiling() as an alias for ceil(), and power() as an alias for pow(). · fc7fd501
      Neil Conway 提交于
      Regression tests and documentation have both been updated.
      
      SQL2003 requires that both ceiling() and ceil() be present, so I have
      documented both spellings. SQL2003 doesn't mention pow() as far as I
      can see, so I decided to replace pow() with power() in the documentation:
      there is little reason to encourage the continued usage of a function
      that isn't compliant with the standard, given a standard-compliant
      alternative.
      
      RELEASE NOTES: should state that pow() is considered deprecated
      (although I don't see the need to ever remove it.)
      fc7fd501
  17. 11 4月, 2004 1 次提交
    • B
      Please find a small patch to fix the brain damage "century" and · 1934055c
      Bruce Momjian 提交于
      "millennium" date part implementation in postgresql, both in the code
      and the documentation, so that it conforms to the official definition.
      If you do not agree with the official definition, please send your
      complaint to "pope@vatican.org". I'm not responsible for them;-)
      
      With the previous version, the centuries and millenniums had a wrong
      number and started the wrong year. Moreover century number 0, which does
      not exist in reality, lasted 200 years. Also, millennium number 0 lasted
      2000 years.
      
      If you want postgresql to have it's own definition of "century" and
      "millennium" that does not conform to the one of the society, just give
      them another name. I would suggest "pgCENTURY" and "pgMILLENNIUM";-)
      
      IMO, if someone may use the options, it means that postgresql is used for
      historical data, so it make sense to have an historical definition. Also,
      I just want to divide the year by 100 or 1000, I can do that quite easily.
      
      BACKWARD INCOMPATIBLE CHANGE
      
      Fabien Coelho - coelho@cri.ensmp.fr
      1934055c
  18. 30 3月, 2004 1 次提交
  19. 20 3月, 2004 1 次提交
  20. 11 3月, 2004 1 次提交
  21. 10 3月, 2004 1 次提交
  22. 07 3月, 2004 1 次提交
  23. 05 3月, 2004 2 次提交
  24. 29 2月, 2004 1 次提交
  25. 27 2月, 2004 1 次提交
  26. 22 2月, 2004 1 次提交
  27. 06 2月, 2004 1 次提交
  28. 27 12月, 2003 1 次提交
  29. 25 12月, 2003 1 次提交
    • B
      > > I have no idea if this in Oracle or not. But it's something I · 1c757c49
      Bruce Momjian 提交于
      > > needed, and other people in the past asked about it too.
      >
      > It is in Oracle, but you aren't exactly on the spot.  It should be
      >
      > IYYY - 4 digits  ('2003')
      > IYY  - 3 digits  ('003')
      > IY   - 2 digits  ('03')
      > I    - 1 digit   ('3')
      
      Here is an updated patch that does that.
      
      Kurt Roeckx
      1c757c49
  30. 18 12月, 2003 1 次提交
  31. 16 12月, 2003 1 次提交
  32. 14 12月, 2003 1 次提交
  33. 30 11月, 2003 1 次提交
    • P
      · 969685ad
      PostgreSQL Daemon 提交于
      $Header: -> $PostgreSQL Changes ...
      969685ad
  34. 24 11月, 2003 1 次提交
  35. 04 11月, 2003 1 次提交
  36. 01 11月, 2003 1 次提交
  37. 30 9月, 2003 1 次提交