[jnasby@pervasive.com: [BUGS] Race condition in dropdb;createdb]

Started by Jim C. Nasbyover 20 years ago2 messages
#1Jim C. Nasby
jnasby@pervasive.com

Never got a reply on -bugs... do people think this is an issue?

----- Forwarded message from "Jim C. Nasby" <jnasby@pervasive.com> -----
decibel@phonebook.1[17:32]~:1%createdb test;
CREATE DATABASE
decibel@phonebook.1[17:32]~:2%dropdb test; createdb test;
DROP DATABASE
createdb: database creation failed: ERROR: source database "template1"
is being accessed by other users
decibel@phonebook.1[17:32]~:3%

I realize that the changes made in 8.1 WRT using the postgres database
fix this particular case, but is there a bigger issue with there being a
race condition here? Presumably dropdb returns before the connection is
actually closed from the database's standpoint...
--
Jim C. Nasby, Sr. Engineering Consultant jnasby@pervasive.com
Pervasive Software http://pervasive.com work: 512-231-6117
vcard: http://jim.nasby.net/pervasive.vcf cell: 512-569-9461

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Jim C. Nasby (#1)
Re: [jnasby@pervasive.com: [BUGS] Race condition in dropdb; createdb]

"Jim C. Nasby" <jnasby@pervasive.com> writes:

Never got a reply on -bugs... do people think this is an issue?

Not really.

The only way to fix it would be to make PQfinish do a synchronous
close, which seems like more of a performance loss than it's worth.

regards, tom lane