On 12/18/15 2:50 AM, Shulgin, Oleksandr wrote:
> On Thu, Dec 17, 2015 at 9:13 PM, Tom Lane <tgl@sss.pgh.pa.us
> <mailto:tgl@sss.pgh.pa.us>> wrote:
>
>
> Whether we really need a feature like that isn't clear though; it's not
> like it's hard to test things that way now. Stick in a BEGIN with no
> COMMIT, you're there. The problem only comes in if you start expecting
> the behavior to be bulletproof. Maybe I'm being too pessimistic about
> what people would believe a --dry-run switch to be good for ... but
> I doubt it.
>
>
> I'm on the same line: BEGIN/ROLLBACK requires trivial effort and a
> --dry-run option might give a false sense of security, but it cannot
> possibly rollback side-effects of user functions which modify filesystem
> or interact with the outside world in some other way.
The issue with that is if you're \i'ing files in and one of those
happens to contain a COMMIT, you're hosed. I can see some use for a
"must rollback" mode of BEGIN.
--
Jim Nasby, Data Architect, Blue Treble Consulting, Austin TX
Experts in Analytics, Data Architecture and PostgreSQL
Data in Trouble? Get it in Treble! http://BlueTreble.com