postgres.git / summary / log / commit / refs

commit    0161e522cbb536d8978ca8e5b5341b16805cc6b4
Author:   Tomas Vondra <tomas.vondra@postgresql.org>
Date:     Thu Jun 27 16:14:25 2019 +0000
First released in: 12.0, 9.4.24, 9.5.19, 9.6.15, 10.10, 11.5

    Update reference to sampling algorithm in analyze.c
    
    Commit 83e176ec1 moved row sampling functions from analyze.c to
    utils/misc/sampling.c, but failed to update comment referring to
    the sampling algorithm from Jeff Vitter's paper. Correct the
    comment by pointing to utils/misc/sampling.c.
    
    Author: Etsuro Fujita
    Discussion: https://postgr.es/m/CAPmGK154gp%2BQd%3DcorQOv%2BPmbyVyZBjp_%2Bhb766UJeD1e_ie6XQ%40mail.gmail.com


src/backend/commands/analyze.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/backend/commands/analyze.c b/src/backend/commands/analyze.c index 7f9c7c99af9..90b2bb1fea4 100644 --- a/src/backend/commands/analyze.c +++ b/src/backend/commands/analyze.c @@ -1173,13 +1173,13 @@ acquire_sample_rows(Relation onerel, int elevel, * The first targrows sample rows are simply copied into the * reservoir. Then we start replacing tuples in the sample * until we reach the end of the relation. This algorithm is - * from Jeff Vitter's paper (see full citation below). It - * works by repeatedly computing the number of tuples to skip - * before selecting a tuple, which replaces a randomly chosen - * element of the reservoir (current set of tuples). At all - * times the reservoir is a true random sample of the tuples - * we've passed over so far, so when we fall off the end of - * the relation we're done. + * from Jeff Vitter's paper (see full citation in + * utils/misc/sampling.c). It works by repeatedly computing + * the number of tuples to skip before selecting a tuple, + * which replaces a randomly chosen element of the reservoir + * (current set of tuples). At all times the reservoir is a + * true random sample of the tuples we've passed over so far, + * so when we fall off the end of the relation we're done. */ if (numrows < targrows) rows[numrows++] = heap_copytuple(&targtuple); [parent: a559805597d5]