Shared dependency patch
От | Alvaro Herrera |
---|---|
Тема | Shared dependency patch |
Дата | |
Msg-id | 20050127000453.GA5979@surnet.cl обсуждение исходный текст |
Ответы |
Re: Shared dependency patch
|
Список | pgsql-patches |
Patchers, Here is the latest installation of my shared dependency patch. As some of you may remember, the purpose of this patch is to record dependencies on shared objects, such as users, groups and tablespaces, from regular database objects. This is done on a new shared system catalog called pg_shdepend, so that when a backend wants to drop any shared object, it can easily verify whether it is referenced in other database. I have upgraded the patch to include references present in ACLs, and to lock the objects appropiately before checking. To do this I had to change the LOCKTAG struct somewhat, using a previous patch by Rod Taylor (thanks Rod!); and add a LockSharedObject() function. I believe that with these changes, we no longer require to be able to specify SysIds at user or group creation, because this necessity was driven by the fact that it was very easy to drop users mentioned in ACLs. Althought I haven't done it in the patch I present, it is now possible to get rid of that part of the grammar and also of the AclId type. This patch includes the required documentation additions, but I haven't checked whether existing documentation needs to be updated. Also, I'm not including any regression tests. Comments? My idea would be to apply this to HEAD, but giving the noise about a non-initdb-forcing 8.1, it would have to wait. (But then we could provide an upgrading method; I think this patch only needs pg_shdepend to be created and populated.) -- Alvaro Herrera (<alvherre[a]dcc.uchile.cl>) "Some men are heterosexual, and some are bisexual, and some men don't think about sex at all... they become lawyers" (Woody Allen)
Вложения
В списке pgsql-patches по дате отправления: