On 08/12/10 22:41, Peter Eisentraut wrote: > On tis, 2010-12-07 at 23:56 +0100, Jan Urbański wrote: >> Peter suggested having a mail/patch per feature and the way I intend >> to do that is instead of having a dozen branches, have one and after >> I'm done rebase it interactively to produce incremental patches that >> apply to master, each one implementing one feature. > > Fair enough if you want to do it that way, but I'd encourage you to just > send in any self-contained features/changes that you have finished.
I finished work on the PL/Python improvements. There 9 separate patches, with some interdependencies. The features implemented are: * general refactoring, dropping the global error state, using dynahash instead of PyDicts for procedure caching, etc * a validator function * executing SPI calls in subtransactions * starting explicit subtransactions to have atomic behaviour of multiple SPI calls * providing custom exceptions for SPI errors, so you can catch only UniqueViolations and not have to muck around with SQLCODE * invalidate functions accepting composite types if the type changes after the functions has been defined * traceback support * table functions (ability to return RECORD and SETOF RECORD) * using custom parsers for datatypes + an example application with dict<->hstore parsing The dependencies are: refactor -> validator -> SPI in subxacts -> explicit subxacts -> custom exceptions for SPI -> invalidate composites -> tracebacks -> table functions -> custom parsers so everything depends on the refactoring patch, and the SPI changes are incremental. I will generate these patches and send them in in separate threads/add them to the commitfest app before Christmas (I hope). Meanwhile the code is available at https://github.com/wulczer/postgres. You will find 10 branches there, 9 correspond to these features, and the "plpython" branch is the sum of them all. >From now on I will stop rebasing these branches, and instead just commit fixes to the appropriate branch and merge upwards (from refactor to everything, from spi-in-subxacts to explicit-subxacts and to custom-spi-exceptions, etc). I'll also try to independently maintain the plpython branch with the sum to make sure nothing has been left out as the feature branches get merged into mainline. Here's to hoping that this will not turn into a conflict hell. Cheers, Jan -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers