On Mon, Feb 19, 2007 at 11:10:55AM -0500, Kynn Jones wrote:
> The script is quite solid and has been performing flawlessly for
> several months now, with one exception: it fails irrecoverably
> whenever some user forgets to disconnect from mydb at the time that
> the script attempts to delete it (or rename it, for that matter). The
> error is "ERROR: database "mydb" is being accessed by other users".
Why irrecoverably? If the command fails, you just wait and try it
again.
You could use the pg_stat tables to work out who is connected and use
pg_cancel_backend() to kill them. You could "kill -INT" them yourself.
You could change the pg_hba.conf to forbid logging in and then bouncing
the server.
Hope this gives you some ideas.
--
Martijn van Oosterhout <kleptog@svana.org>
http://svana.org/kleptog/
> From each according to his ability. To each according to his ability to litigate.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)
iD8DBQFF2dGFIB7bNG8LQkwRArlZAJ0Uby6+dTiRZs3nsDryGf iXEXYjgwCcCSBm
HoDRNPMKQ4d0Igxsd/5AXxI=
=2g9H
-----END PGP SIGNATURE-----