On Mon, Dec 8, 2014 at 8:16 PM, Peter Geoghegan <p...@heroku.com> wrote: > > Attached revision, v1.6, slightly tweaks the ordering of per-statement > trigger execution. The ordering is now explicitly documented (the html > mirror has been updated: > > http://postgres-benchmarks.s3-website-us-east-1.amazonaws.com/on-conflict-docs/trigger-definition.html > ). > > As always, there is a variant for each approach to value locking. > > This revision fixes bitrot that developed when the patchset was > applied on master's tip, and also cleans up comments regarding how the > parent insert carries auxiliary/child state through all stages of > query processing. That should structure be clearer now, including how > setrefs.c has the auxiliary/child ModifyTable use the same > resultRelation as its parent. >
If I build either option of the patch under MinGW, I get an error in the grammar files related to the IGNORE reserved word. $ (./configure --host=x86_64-w64-mingw32 --without-zlib && make && make check) > /dev/null In file included from ../../../src/include/parser/gramparse.h:29:0, from gram.y:59: ../../../src/include/parser/gram.h:207:6: error: expected identifier before numeric constant In file included from gram.y:14366:0: I don't get this problem on Linux. The build chain seems to meet the specified minimum: flex.exe 2.5.35 bison (GNU Bison) 2.4.2 This is perl, v5.8.8 built for msys-64int It seems like IGNORE is getting replaced by the preprocessor with something else, but I don't know how to get my hands on the intermediate file after the preprocessor has done its thing. Also, in both Linux and MinGW under option 1 patch I get an OID conflict on OID 3261. Cheers, Jeff