Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Branch: master
Commits on Aug 29, 2015
  1. add .gitignore

Commits on Jan 4, 2015
  1. bump version to 1.1.4

Commits on Sep 22, 2014
  1. simplification of the code in _array final functions

    Originally the functions were prepared to process quantiles outside
    the expected interval [0,1], but since check_quantiles it's not
    necessary. The code now follows the single-quantile approach, making
    it much simpler.
  2. code cleanup and trivial simplifications

    Mostly removal of excessive whitespace and brackets, and generally
    making it more compliant with PostgreSQL code style.
    Also, some trivial code changes were done (e.g. allowing to simplify
    some branches etc.).
  3. scaling the aggregate state switched to follow the 2^N principle

    The original approach to scaling aggregate state (to accomodate more
    elements) contradicted the 2^N rule, used in the allocation set
    implementation, and resulted in excessive repalloc calls and and
    a bit of additional memory overhead.
    While being mostly harmless (the repalloc calls were not doing much
    and thus were cheap, and the memory overhead was negligible), it was
    rather ugly and overly complex. So rewritten to follow the 2^N rule.
    The initial number of elements is chosen to occupy 32B, so for 4B
    values (int32) it's 8, for 8B values (double, numeric) it's 4.
Commits on Feb 17, 2014
  1. Check that the percentiles are in [0,1], so that using incorrect value

    results in an ERROR and not segmentation fault.
Commits on Sep 21, 2013
  1. Expanded unit tests, to check NULL handling for all supported data ty…

    tomas.vondra authored
    …pes (not just INT).
Commits on Sep 20, 2013
  1. And yet another fix - proper handling of memory contexts in the 'accu…

    tomas.vondra authored
    …m' functions.
  2. Fix of the last fix - omitted semicolon in the "skip NULLs" block.

    tomas.vondra authored
    Lessons learned: Always try to compile before committing and run the
    regression tests. And never try to do this while on vacation instead
    of going to a beach.
Commits on Sep 19, 2013
  1. The previous fix was incorrect / incomplete - basically any NULL value

    tomas.vondra authored
    passed to the sfunc threw away any accumulated state, so for example
    a sequence  "0, 1, 2, NULL" would have NULL state as if there were no
    values at all.
Commits on Sep 16, 2013
Commits on May 26, 2013
Commits on Apr 20, 2013
  1. Significant decrease of SLICE_SIZE (from 1024 to 5).

    The original value often caused OOM even with rather small number
    of groups (as it always allocated ~4kB of memory for each group,
    even if there was a single item in each group). The new value is
    much more conservative and it's actually faster in most tests.
  2. Rename of quantile-1.1.sql to quantile-1.1.1.sql (without this,

    commit bfddd1f actually doesn't work).
  3. Support for PostgreSQL 9.3.

  4. Fixed incorrect version of the SQL script name (DATA).

    This lead to failure of the CREATE EXTENSION command because of missing
    file. Reported by tzeskimo (thanks!).
Commits on Dec 13, 2012
Commits on Sep 29, 2012
Commits on Sep 28, 2012
Commits on Apr 5, 2012
Commits on Apr 3, 2012
Commits on Mar 28, 2012
  1. Fixed a conditional directive (#elif instead of #elseif) and an unuse…

    …d variable in quantile_double. Both fixes thanks to Sune Vuorela.
Commits on Mar 26, 2012
Commits on Mar 3, 2012
Commits on Jan 29, 2012
Commits on Jan 28, 2012
  1. Relicensed to BSD 2-clause license. This should make it easier to dis…

    …tribute this with other BSD-licensed products (e.g. PostgreSQL itself).
Something went wrong with that request. Please try again.