On 2014-06-29 10:36:22 -0400, Tom Lane wrote:
> Andres Freund <andres@2ndquadrant.com> writes:
> > Solution I)
> > Change ReorderBufferCommit() to not call the begin()/commit() callbacks
> > if no change() callback has been called. Technically that's trivial, but
> > I don't think that'd end up being a better behaviour.
>
> > Solution II)
> > Disable autovacuum/analyze for the tables in the regression tests. We
> > test vacuum explicitly, so we wouldn't loose too much test coverage.
>
> > Solution III)
> > Mark transactions that happen purely internally as such, using a
> > xl_xact_commit->xinfo flag. Not particularly pretty and the most
> > invasive of the solutions.
>
> > I'm favoring II) so far... Other opinions?
>
> You mean disable autovac only in the contrib/test_decoding check run,
> right? That's probably OK since it's tested in the main regression
> runs.
Actually I'd not even though of that, but just of disabling it on
relations with relevant amounts of changes in the test_decoding
tests. That way it'd work even when run against an existing server (via
installcheck-force) which I found useful during development.
Greetings,
Andres Freund
-- Andres Freund http://www.2ndQuadrant.com/PostgreSQL Development, 24x7 Support, Training &
Services