On Thu, Oct 2, 2014 at 6:00 PM, Peter Geoghegan <p...@heroku.com> wrote: >> Granted, it's something that's not easily automatable, whereas a nowait is. >> >> However, rather than nowait, I'd prefer "cancellable" semantics, that >> would cancel voluntarily if any other transaction requests a >> conflicting lock, like autovacuum does. > > I think the problem you'll have with NOWAIT is: you have an error from > having to wait...what now? Do you restart? I imagine this would > frequently result in what is effectively lock starvation. Any old > AccessShareLock-er is going to make our migration tool restart. We'll > never finish.
I've done that manually (throw the DDL, and cancel if it takes more than a couple of seconds) on modest but relatively busy servers with quite some success. -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers