Thread: pgsql: Switch over to using our own qsort() all the time, as has been

pgsql: Switch over to using our own qsort() all the time, as has been

From
tgl@postgresql.org (Tom Lane)
Date:
Log Message:
-----------
Switch over to using our own qsort() all the time, as has been proposed
repeatedly.  Now that we don't have to worry about memory leaks from
glibc's qsort, we can safely put CHECK_FOR_INTERRUPTS into the tuplesort
comparators, as was requested a couple months ago.  Also, get rid of
non-reentrancy and an extra level of function call in tuplesort.c by
providing a variant qsort_arg() API that passes an extra void * argument
through to the comparison routine.  (We might want to use that in other
places too, I didn't look yet.)

Modified Files:
--------------
    pgsql:
        configure (r1.508 -> r1.509)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/configure.diff?r1=1.508&r2=1.509)
        configure.in (r1.478 -> r1.479)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/configure.in.diff?r1=1.478&r2=1.479)
    pgsql/src:
        Makefile.global.in (r1.230 -> r1.231)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/Makefile.global.in.diff?r1=1.230&r2=1.231)
    pgsql/src/backend/utils/sort:
        tuplesort.c (r1.68 -> r1.69)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/sort/tuplesort.c.diff?r1=1.68&r2=1.69)
    pgsql/src/include:
        port.h (r1.102 -> r1.103)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/port.h.diff?r1=1.102&r2=1.103)
    pgsql/src/port:
        qsort.c (r1.9 -> r1.10)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/port/qsort.c.diff?r1=1.9&r2=1.10)

Added Files:
-----------
    pgsql/src/port:
        qsort_arg.c (r1.1)

(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/port/qsort_arg.c?rev=1.1&content-type=text/x-cvsweb-markup)