1. 19 Jul, 2021 1 commit
  2. 23 Nov, 2017 1 commit
    • Peter Eisentraut's avatar
      Convert documentation to DocBook XML · 3c49c6fa
      Peter Eisentraut authored
      Since some preparation work had already been done, the only source
      changes left were changing empty-element tags like <xref linkend="foo">
      to <xref linkend="foo"/>, and changing the DOCTYPE.
      
      The source files are still named *.sgml, but they are actually XML files
      now.  Renaming could be considered later.
      
      In the build system, the intermediate step to convert from SGML to XML
      is removed.  Everything is build straight from the source files again.
      The OpenSP (or the old SP) package is no longer needed.
      
      The documentation toolchain instructions are updated and are much
      simpler now.
      
      Peter Eisentraut, Alexander Lakhin, Jürgen Purtz
      3c49c6fa
  3. 20 Oct, 2017 1 commit
    • Peter Eisentraut's avatar
      Convert SGML IDs to lower case · 1ff01b39
      Peter Eisentraut authored
      IDs in SGML are case insensitive, and we have accumulated a mix of upper
      and lower case IDs, including different variants of the same ID.  In
      XML, these will be case sensitive, so we need to fix up those
      differences.  Going to all lower case seems most straightforward, and
      the current build process already makes all anchors and lower case
      anyway during the SGML->XML conversion, so this doesn't create any
      difference in the output right now.  A future XML-only build process
      would, however, maintain any mixed case ID spellings in the output, so
      that is another reason to clean this up beforehand.
      
      Author: Alexander Lakhin <exclusion@gmail.com>
      1ff01b39
  4. 10 Oct, 2017 1 commit
  5. 14 Jun, 2017 1 commit
  6. 12 May, 2017 1 commit
    • Alvaro Herrera's avatar
      Change CREATE STATISTICS syntax · bc085205
      Alvaro Herrera authored
      Previously, we had the WITH clause in the middle of the command, where
      you'd specify both generic options as well as statistic types.  Few
      people liked this, so this commit changes it to remove the WITH keyword
      from that clause and makes it accept statistic types only.  (We
      currently don't have any generic options, but if we invent in the
      future, we will gain a new WITH clause, probably at the end of the
      command).
      
      Also, the column list is now specified without parens, which makes the
      whole command look more similar to a SELECT command.  This change will
      let us expand the command to supporting expressions (not just columns
      names) as well as multiple tables and their join conditions.
      
      Tom added lots of code comments and fixed some parts of the CREATE
      STATISTICS reference page, too; more changes in this area are
      forthcoming.  He also fixed a potential problem in the alter_generic
      regression test, reducing verbosity on a cascaded drop to avoid
      dependency on message ordering, as we do in other tests.
      
      Tom also closed a security bug: we documented that table ownership was
      required in order to create a statistics object on it, but didn't
      actually implement it.
      
      Implement tab-completion for statistics objects.  This can stand some
      more improvement.
      
      Authors: Alvaro Herrera, with lots of cleanup by Tom Lane
      Discussion: https://postgr.es/m/20170420212426.ltvgyhnefvhixm6i@alvherre.pgsql
      bc085205
  7. 24 Mar, 2017 1 commit
    • Alvaro Herrera's avatar
      Implement multivariate n-distinct coefficients · 7b504eb2
      Alvaro Herrera authored
      Add support for explicitly declared statistic objects (CREATE
      STATISTICS), allowing collection of statistics on more complex
      combinations that individual table columns.  Companion commands DROP
      STATISTICS and ALTER STATISTICS ... OWNER TO / SET SCHEMA / RENAME are
      added too.  All this DDL has been designed so that more statistic types
      can be added later on, such as multivariate most-common-values and
      multivariate histograms between columns of a single table, leaving room
      for permitting columns on multiple tables, too, as well as expressions.
      
      This commit only adds support for collection of n-distinct coefficient
      on user-specified sets of columns in a single table.  This is useful to
      estimate number of distinct groups in GROUP BY and DISTINCT clauses;
      estimation errors there can cause over-allocation of memory in hashed
      aggregates, for instance, so it's a worthwhile problem to solve.  A new
      special pseudo-type pg_ndistinct is used.
      
      (num-distinct estimation was deemed sufficiently useful by itself that
      this is worthwhile even if no further statistic types are added
      immediately; so much so that another version of essentially the same
      functionality was submitted by Kyotaro Horiguchi:
      https://postgr.es/m/20150828.173334.114731693.horiguchi.kyotaro@lab.ntt.co.jp
      though this commit does not use that code.)
      
      Author: Tomas Vondra.  Some code rework by Álvaro.
      Reviewed-by: Dean Rasheed, David Rowley, Kyotaro Horiguchi, Jeff Janes,
          Ideriha Takeshi
      Discussion: https://postgr.es/m/543AFA15.4080608@fuzzy.cz
          https://postgr.es/m/20170320190220.ixlaueanxegqd5gr@alvherre.pgsql
      7b504eb2