On 3/21/18 21:49, Michael Paquier wrote: > On Thu, Mar 22, 2018 at 09:42:35AM +0800, Craig Ringer wrote: >> I'm super excited by the idea of multi-version support in TAP, if that's >> what you mean. >> >> Why? Because I use TAP heavily in extensions. Especially replication >> extensions. Which like to talk across multiple versions. I currently need >> external test frameworks and some hideous hacks to do this. > > Okay, in front of such enthusiasm we could keep at least the refactoring > part of PostgresNode.pm :)
I took a quick look at that part. It appears to be quite invasive, more than I would have hoped. Basically, it imposes that from now on all program invocations must observe the bindir setting, which someone is surely going to forget. The pg_upgrade tests aren't going to exercise all possible paths where programs are called, so this is going to lead to omissions and inconsistencies -- which will then possibly only be found much later by the extensions that Craig was talking about. I'd like to see this more isolated, maybe via a path change, or something inside system_or_bail or something less invasive and more maintainable. -- Peter Eisentraut http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services