1. 30 1月, 2014 1 次提交
  2. 29 1月, 2014 6 次提交
    • A
      2013e5ee
    • H
      Fix docs build. · 991659dc
      Heikki Linnakangas 提交于
      Broken by the huge_tlb_pages patch.
      
      Vik Fearing.
      991659dc
    • H
      Allow using huge TLB pages on Linux (MAP_HUGETLB) · 1a3458b6
      Heikki Linnakangas 提交于
      This patch adds an option, huge_tlb_pages, which allows requesting the
      shared memory segment to be allocated using huge pages, by using the
      MAP_HUGETLB flag in mmap(). This can improve performance.
      
      The default is 'try', which means that we will attempt using huge pages,
      and fall back to non-huge pages if it doesn't work. Currently, only Linux
      has MAP_HUGETLB. On other platforms, the default 'try' behaves the same as
      'off'.
      
      In the passing, don't try to round the mmap() size to a multiple of
      pagesize. mmap() doesn't require that, and there's no particular reason for
      PostgreSQL to do that either. When using MAP_HUGETLB, however, round the
      request size up to nearest 2MB boundary. This is to work around a bug in
      some Linux kernel versions, but also to avoid wasting memory, because the
      kernel will round the size up anyway.
      
      Many people were involved in writing this patch, including Christian Kruse,
      Richard Poole, Abhijit Menon-Sen, reviewed by Peter Geoghegan, Andres Freund
      and me.
      1a3458b6
    • A
      Minor docs fixes for new json functions. · c2099751
      Andrew Dunstan 提交于
      Thom Brown.
      c2099751
    • A
      New json functions. · 10563990
      Andrew Dunstan 提交于
      json_build_array() and json_build_object allow for the construction of
      arbitrarily complex json trees. json_object() turns a one or two
      dimensional array, or two separate arrays, into a json_object of
      name/value pairs, similarly to the hstore() function.
      json_object_agg() aggregates its two arguments into a single json object
      as name value pairs.
      
      Catalog version bumped.
      
      Andrew Dunstan, reviewed by Marko Tiikkaja.
      10563990
    • F
      Add pg_stat_archiver statistics view. · 9132b189
      Fujii Masao 提交于
      This view shows the statistics about the WAL archiver process's activity.
      
      Gabriele Bartolini, reviewed by Michael Paquier, refactored a bit by me.
      9132b189
  3. 28 1月, 2014 2 次提交
    • T
      Keep pg_stat_statements' query texts in a file, not in shared memory. · f0d6f202
      Tom Lane 提交于
      This change allows us to eliminate the previous limit on stored query
      length, and it makes the shared-memory hash table very much smaller,
      allowing more statements to be tracked.  (The default value of
      pg_stat_statements.max is therefore increased from 1000 to 5000.)
      In typical scenarios, the hash table can be large enough to hold all the
      statements commonly issued by an application, so that there is little
      "churn" in the set of tracked statements, and thus little need to do I/O
      to the file.
      
      To further reduce the need for I/O to the query-texts file, add a way
      to retrieve all the columns of the pg_stat_statements view except for
      the query text column.  This is probably not of much interest for human
      use but it could be exploited by programs, which will prefer using the
      queryid anyway.
      
      Ordinarily, we'd need to bump the extension version number for the latter
      change.  But since we already advanced pg_stat_statements' version number
      from 1.1 to 1.2 in the 9.4 development cycle, it seems all right to just
      redefine what 1.2 means.
      
      Peter Geoghegan, reviewed by Pavel Stehule
      f0d6f202
    • R
      Relax the requirement that all lwlocks be stored in a single array. · ea9df812
      Robert Haas 提交于
      This makes it possible to store lwlocks as part of some other data
      structure in the main shared memory segment, or in a dynamic shared
      memory segment.  There is still a main LWLock array and this patch does
      not move anything out of it, but it provides necessary infrastructure
      for doing that in the future.
      
      This change is likely to increase the size of LWLockPadded on some
      platforms, especially 32-bit platforms where it was previously only
      16 bytes.
      
      Patch by me.  Review by Andres Freund and KaiGai Kohei.
      ea9df812
  4. 27 1月, 2014 2 次提交
  5. 26 1月, 2014 4 次提交
  6. 25 1月, 2014 1 次提交
    • H
      Add recovery_target='immediate' option. · 71c6a8e3
      Heikki Linnakangas 提交于
      This allows ending recovery as a consistent state has been reached. Without
      this, there was no easy way to e.g restore an online backup, without
      replaying any extra WAL after the backup ended.
      
      MauMau and me.
      71c6a8e3
  7. 24 1月, 2014 3 次提交
    • S
      ALTER TABLESPACE ... MOVE ... OWNED BY · fbe19ee3
      Stephen Frost 提交于
      Add the ability to specify the objects to move by who those objects are
      owned by (as relowner) and change ALL to mean ALL objects.  This
      makes the command always operate against a well-defined set of objects
      and not have the objects-to-be-moved based on the role of the user
      running the command.
      
      Per discussion with Simon and Tom.
      fbe19ee3
    • F
      Remove duplicate index entry DATE_TRUNC in document. · 3ee74df2
      Fujii Masao 提交于
      3ee74df2
    • F
      Add libpq function PQhostaddr(). · 9f80f483
      Fujii Masao 提交于
      There was a bug in the psql's meta command \conninfo. When the
      IP address was specified in the hostaddr and psql used it to create
      a connection (i.e., psql -d "hostaddr=xxx"), \conninfo could not
      display that address. This is because \conninfo got the connection
      information only from PQhost() which could not return hostaddr.
      
      This patch adds PQhostaddr(), and changes \conninfo so that it
      can display not only the host name that PQhost() returns but also
      the IP address which PQhostaddr() returns.
      
      The bug has existed since 9.1 where \conninfo was introduced.
      But it's too late to add new libpq function into the released versions,
      so no backpatch.
      9f80f483
  8. 23 1月, 2014 1 次提交
  9. 22 1月, 2014 1 次提交
    • R
      Add a cardinality function for arrays. · 01f7808b
      Robert Haas 提交于
      Unlike our other array functions, this considers the total number of
      elements across all dimensions, and returns 0 rather than NULL when the
      array has no elements.  But it seems that both of those behaviors are
      almost universally disliked, so hopefully that's OK.
      
      Marko Tiikkaja, reviewed by Dean Rasheed and Pavel Stehule
      01f7808b
  10. 20 1月, 2014 1 次提交
    • M
      Remove support for native krb5 authentication · 98de86e4
      Magnus Hagander 提交于
      krb5 has been deprecated since 8.3, and the recommended way to do
      Kerberos authentication is using the GSSAPI authentication method
      (which is still fully supported).
      
      libpq retains the ability to identify krb5 authentication, but only
      gives an error message about it being unsupported. Since all authentication
      is initiated from the backend, there is no need to keep it at all
      in the backend.
      98de86e4
  11. 19 1月, 2014 2 次提交
    • S
      Add CREATE TABLESPACE ... WITH ... Options · 5254958e
      Stephen Frost 提交于
      Tablespaces have a few options which can be set on them to give PG hints
      as to how the tablespace behaves (perhaps it's faster for sequential
      scans, or better able to handle random access, etc).  These options were
      only available through the ALTER TABLESPACE command.
      
      This adds the ability to set these options at CREATE TABLESPACE time,
      removing the need to do both a CREATE TABLESPACE and ALTER TABLESPACE to
      get the correct options set on the tablespace.
      
      Vik Fearing, reviewed by Michael Paquier.
      5254958e
    • S
      Add ALTER TABLESPACE ... MOVE command · 76e91b38
      Stephen Frost 提交于
      This adds a 'MOVE' sub-command to ALTER TABLESPACE which allows moving sets of
      objects from one tablespace to another.  This can be extremely handy and avoids
      a lot of error-prone scripting.  ALTER TABLESPACE ... MOVE will only move
      objects the user owns, will notify the user if no objects were found, and can
      be used to move ALL objects or specific types of objects (TABLES, INDEXES, or
      MATERIALIZED VIEWS).
      76e91b38
  12. 18 1月, 2014 1 次提交
    • T
      Add gen_random_uuid() to contrib/pgcrypto. · e6170126
      Tom Lane 提交于
      This function provides a way of generating version 4 (pseudorandom) UUIDs
      based on pgcrypto's PRNG.  The main reason for doing this is that the
      OSSP UUID library depended on by contrib/uuid-ossp is becoming more and
      more of a porting headache, so we need an alternative for people who can't
      install that.  A nice side benefit though is that this implementation is
      noticeably faster than uuid-ossp's uuid_generate_v4() function.
      
      Oskari Saarenmaa, reviewed by Emre Hasegeli
      e6170126
  13. 17 1月, 2014 4 次提交
  14. 15 1月, 2014 3 次提交
  15. 13 1月, 2014 1 次提交
  16. 12 1月, 2014 2 次提交
  17. 08 1月, 2014 1 次提交
  18. 07 1月, 2014 1 次提交
  19. 03 1月, 2014 1 次提交
  20. 31 12月, 2013 1 次提交
  21. 24 12月, 2013 1 次提交
    • R
      Revise documentation for new freezing method. · d43760b6
      Robert Haas 提交于
      Commit 37484ad2 invalidated a good
      chunk of documentation, so patch it up to reflect the new state of
      play.  Along the way, patch remaining documentation references to
      FrozenXID to say instead FrozenTransactionId, so that they match the
      way we actually spell it in the code.
      d43760b6