Re: Rename a database that has connections

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: Rename a database that has connections
Дата
Msg-id 1134.1321933287@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Rename a database that has connections  (Mark Kirkwood <mark.kirkwood@catalyst.net.nz>)
Ответы Re: Rename a database that has connections  (Mark Kirkwood <mark.kirkwood@catalyst.net.nz>)
Список pgsql-hackers
Mark Kirkwood <mark.kirkwood@catalyst.net.nz> writes:
> I've been helping out several customers recently who all seem to be 
> wrestling with the same issue: wanting to update/refresh non-production 
> databases from the latest corresponding prod version. Typically they 
> have (fairly complex) scripts that at some point attempt to restore a 
> dump into new database and then rename the to-be-retired db out of the 
> way and rename the newly restored one to take over.

> In many cases such scripts would be simplified if a database could be 
> renamed without requiring its connections terminated. I've been asked 
> several times if this could be added... so I've caved in a done a patch 
> that allows this.

> The default behavior is unchanged - it is required to specify an 
> additional trailing FORCE keyword to elicit the more brutal behavior. 
> Note that existing connections to the renamed database are unaffected, 
> but obviously SELECT current_database() returns the new name (in the 
> next transaction).

This patch seems to me to be pretty thoroughly misguided.  Either
renaming a database with open connections is safe, or it isn't.  If it
is safe, we should just allow it.  If it isn't, making people write an
extra FORCE keyword does not make it safe.  It's particularly silly
to allow someone to rename the database out from under other sessions
(which won't know what happened) but not rename it out from under his
own session (which would or at least could know it).

What you need to be doing is investigating whether the comments about
this in RenameDatabase() are really valid concerns or not.
        regards, tom lane


В списке pgsql-hackers по дате отправления:

Предыдущее
От: Bruce Momjian
Дата:
Сообщение: Re: Rename a database that has connections
Следующее
От: Tom Lane
Дата:
Сообщение: Re: strange nbtree corruption report