python - be: Implement C Interface for extension module and have the PL - Mailing list pgsql-committers

From jwp@pgfoundry.org (James William Pye)
Subject python - be: Implement C Interface for extension module and have the PL
Date
Msg-id 20050502080521.DE1CC1126006@pgfoundry.org
Whole thread Raw
List pgsql-committers
Log Message:
-----------
Implement C Interface for extension module and have the PL use it.

Accessing the objects in the extension module meant getting all the attributes
one needed. Now, only one attribute need be gotten by a C user, "CI". While not
all functions are yet provided, the ones pl.c needs have been along with the
necessary entries to initialize the PL in the extension module. This simplifies
the process greatly as there is now no need to pass around CObjects to tp_new
routines via Python object calls, as PLCall_Initialize and Pull_Initialize may
be directly called.

Fixes bug todo #1000300,
http://pgfoundry.org/tracker/index.php?func=detail&aid=1000300&group_id=1000094&atid=442
Various other fixes and touchups.

Modified Files:
--------------
    be:
        setup.py (r1.9 -> r1.10)
        (http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/python/be/setup.py.diff?r1=1.9&r2=1.10)
    be/include/pypg:
        error.h (r1.3 -> r1.4)
        (http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/python/be/include/pypg/error.h.diff?r1=1.3&r2=1.4)
        externs.h (r1.7 -> r1.8)
        (http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/python/be/include/pypg/externs.h.diff?r1=1.7&r2=1.8)
        type.h (r1.4 -> r1.5)
        (http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/python/be/include/pypg/type.h.diff?r1=1.4&r2=1.5)
    be/include/pypg/call:
        pl.h (r1.3 -> r1.4)
        (http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/python/be/include/pypg/call/pl.h.diff?r1=1.3&r2=1.4)
        trigger.h (r1.3 -> r1.4)
        (http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/python/be/include/pypg/call/trigger.h.diff?r1=1.3&r2=1.4)
    be/src:
        __init__.py (r1.1.1.1 -> r1.2)
        (http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/python/be/src/__init__.py.diff?r1=1.1.1.1&r2=1.2)
        conv.c (r1.4 -> r1.5)
        (http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/python/be/src/conv.c.diff?r1=1.4&r2=1.5)
        function.c (r1.3 -> r1.4)
        (http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/python/be/src/function.c.diff?r1=1.3&r2=1.4)
        globals.c (r1.6 -> r1.7)
        (http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/python/be/src/globals.c.diff?r1=1.6&r2=1.7)
        module.c (r1.11 -> r1.12)
        (http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/python/be/src/module.c.diff?r1=1.11&r2=1.12)
        namespace.c (r1.2 -> r1.3)
        (http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/python/be/src/namespace.c.diff?r1=1.2&r2=1.3)
        object.c (r1.6 -> r1.7)
        (http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/python/be/src/object.c.diff?r1=1.6&r2=1.7)
        pl.c (r1.10 -> r1.11)
        (http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/python/be/src/pl.c.diff?r1=1.10&r2=1.11)
        relation.c (r1.2 -> r1.3)
        (http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/python/be/src/relation.c.diff?r1=1.2&r2=1.3)
        tif.c (r1.4 -> r1.5)
        (http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/python/be/src/tif.c.diff?r1=1.4&r2=1.5)
        transaction.c (r1.4 -> r1.5)
        (http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/python/be/src/transaction.c.diff?r1=1.4&r2=1.5)
        type.c (r1.6 -> r1.7)
        (http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/python/be/src/type.c.diff?r1=1.6&r2=1.7)
        utils.c (r1.6 -> r1.7)
        (http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/python/be/src/utils.c.diff?r1=1.6&r2=1.7)
    be/src/call:
        pl.c (r1.4 -> r1.5)
        (http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/python/be/src/call/pl.c.diff?r1=1.4&r2=1.5)
        trigger.c (r1.4 -> r1.5)
        (http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/python/be/src/call/trigger.c.diff?r1=1.4&r2=1.5)

Added Files:
-----------
    be/include/pypg:
        ci.h (r1.1)

(http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/python/be/include/pypg/ci.h?rev=1.1&content-type=text/x-cvsweb-markup)
        cis.h (r1.1)

(http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/python/be/include/pypg/cis.h?rev=1.1&content-type=text/x-cvsweb-markup)

pgsql-committers by date:

Previous
From: neilc@svr1.postgresql.org (Neil Conway)
Date:
Subject: pgsql: Backport fix for correct quoting in CREATE DOMAIN example.
Next
From: momjian@svr1.postgresql.org (Bruce Momjian)
Date:
Subject: pgsql: Check the file system on postmaster startup and report any