1. 08 May, 2012 5 commits
  2. 07 May, 2012 4 commits
  3. 06 May, 2012 1 commit
  4. 05 May, 2012 1 commit
  5. 04 May, 2012 1 commit
    • Tom Lane's avatar
      Overdue code review for transaction-level advisory locks patch. · 71b9549d
      Tom Lane authored
      Commit 62c7bd31 had assorted problems, most
      visibly that it broke PREPARE TRANSACTION in the presence of session-level
      advisory locks (which should be ignored by PREPARE), as per a recent
      complaint from Stephen Rees.  More abstractly, the patch made the
      LockMethodData.transactional flag not merely useless but outright
      dangerous, because in point of fact that flag no longer tells you anything
      at all about whether a lock is held transactionally.  This fix therefore
      removes that flag altogether.  We now rely entirely on the convention
      already in use in lock.c that transactional lock holds must be owned by
      some ResourceOwner, while session holds are never so owned.  Setting the
      locallock struct's owner link to NULL thus denotes a session hold, and
      there is no redundant marker for that.
      
      PREPARE TRANSACTION now works again when there are session-level advisory
      locks, and it is also able to transfer transactional advisory locks to the
      prepared transaction, but for implementation reasons it throws an error if
      we hold both types of lock on a single lockable object.  Perhaps it will be
      worth improving that someday.
      
      Assorted other minor cleanup and documentation editing, as well.
      
      Back-patch to 9.1, except that in the 9.1 branch I did not remove the
      LockMethodData.transactional flag for fear of causing an ABI break for
      any external code that might be examining those structs.
      71b9549d
  6. 03 May, 2012 3 commits
    • Peter Eisentraut's avatar
      doc: Fix for too many brackets in command synopses on man pages · 1715ff11
      Peter Eisentraut authored
      The default for the choice attribute of the <arg> element is "opt",
      which would normally put the argument inside brackets.  But the DSSSL
      stylesheets contain a hack that treats <arg> directly inside <group>
      specially, so that <group><arg>-x</arg><arg>-y</arg></group> comes out
      as [ -x | -y ] rather than [ [-x] | [-y] ], which it would technically
      be.  But when building man pages, this doesn't work, and so the
      command synopses on the man pages contain lots of extra brackets.
      
      By putting choice="opt" or choice="plain" explicitly on every <arg>
      and <group> element, we avoid any toolchain dependencies like that,
      and it also makes it clearer in the source code what is meant.
      
      In passing, make some small corrections in the documentation about
      which arguments are really optional or not.
      1715ff11
    • Bruce Momjian's avatar
      Remove BSD/OS (BSDi) port. There are no known users upgrading to · ebcaa5fc
      Bruce Momjian authored
      Postgres 9.2, and perhaps no existing users either.
      ebcaa5fc
    • Bruce Momjian's avatar
  7. 02 May, 2012 9 commits
  8. 01 May, 2012 2 commits
  9. 30 Apr, 2012 6 commits
    • Peter Eisentraut's avatar
      Improve markup of cmdsynopsis elements · 4266509c
      Peter Eisentraut authored
      Add more markup in particular so that the command options appear
      consistently in monospace in the HTML output.
      
      On the vacuumdb reference page, remove listing all the possible
      options in the synopsis.  They have become too many now; we have the
      detailed options list for that.
      4266509c
    • Peter Eisentraut's avatar
      Fix display of <command> elements on man pages · 61c84b47
      Peter Eisentraut authored
      We had changed this from the default bold to monospace for all output
      formats, but for man pages, this creates visual inconsistencies, so
      revert to the default for man pages.
      61c84b47
    • Tom Lane's avatar
      Converge all SQL-level statistics timing values to float8 milliseconds. · 809e7e21
      Tom Lane authored
      This patch adjusts the core statistics views to match the decision already
      taken for pg_stat_statements, that values representing elapsed time should
      be represented as float8 and measured in milliseconds.  By using float8,
      we are no longer tied to a specific maximum precision of timing data.
      (Internally, it's still microseconds, but we could now change that without
      needing changes at the SQL level.)
      
      The columns affected are
      pg_stat_bgwriter.checkpoint_write_time
      pg_stat_bgwriter.checkpoint_sync_time
      pg_stat_database.blk_read_time
      pg_stat_database.blk_write_time
      pg_stat_user_functions.total_time
      pg_stat_user_functions.self_time
      pg_stat_xact_user_functions.total_time
      pg_stat_xact_user_functions.self_time
      
      The first four of these are new in 9.2, so there is no compatibility issue
      from changing them.  The others require a release note comment that they
      are now double precision (and can show a fractional part) rather than
      bigint as before; also their underlying statistics functions now match
      the column definitions, instead of returning bigint microseconds.
      809e7e21
    • Peter Eisentraut's avatar
      Mark ReThrowError() with attribute noreturn · 26471a51
      Peter Eisentraut authored
      All related functions were already so marked.
      26471a51
    • Robert Haas's avatar
      Remove duplicate word in comment. · 0d2235a2
      Robert Haas authored
      Noted by Peter Geoghegan.
      0d2235a2
    • Bruce Momjian's avatar
  10. 29 Apr, 2012 6 commits
  11. 28 Apr, 2012 2 commits
    • Tom Lane's avatar
      Adjust timing units in pg_stat_statements. · 93f94e35
      Tom Lane authored
      Display total time and I/O timings in milliseconds, for consistency with
      the units used for timings in the core statistics views.  The columns
      remain of float8 type, so that sub-msec precision is available.  (At some
      point we will probably want to convert the core views to use float8 type
      for the same reason, but this patch does not touch that issue.)
      
      This is a release-note-requiring change in the meaning of the total_time
      column.  The I/O timing columns are new as of 9.2, so there is no
      compatibility impact from redefining them.
      
      Do some minor copy-editing in the documentation, too.
      93f94e35
    • Tom Lane's avatar
      Clear I/O timing counters after sending them to the stats collector. · cdbad241
      Tom Lane authored
      This oversight caused the reported times to accumulate in an O(N^2)
      fashion the longer a backend runs.
      cdbad241