On Thu, Apr 21, 2016 at 5:44 AM, Tom Lane <t...@sss.pgh.pa.us> wrote: > Anyway, I went through our tree and added START/END_CRIT_SECTION calls > around all XLogInsert calls that could currently be reached without one; > see attached. Since this potentially breaks third-party code I would > not propose back-patching it, but I think it's reasonable to propose > applying it to HEAD.
+1 for sanitizing those code paths this way. This patch looks sane to me after having a look with some testing. --- a/src/backend/access/brin/brin.c +++ b/src/backend/access/brin/brin.c @@ -610,15 +610,12 @@ brinbuild(Relation heap, Relation index, IndexInfo *indexInfo) elog(ERROR, "index \"%s\" already contains data", RelationGetRelationName(index)); - /* - * Critical section not required, because on error the creation of the - * whole relation will be rolled back. - */ Perhaps Alvaro has a opinion to offer regarding this bit removed in brin.c? -- Michael -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers