Re: How can I look at a recursive table dependency tree?
От | Richard Huxton |
---|---|
Тема | Re: How can I look at a recursive table dependency tree? |
Дата | |
Msg-id | 4974BA2E.9090302@archonet.com обсуждение исходный текст |
Ответ на | Re: How can I look at a recursive table dependency tree? (Ivan Sergio Borgonovo <mail@webthatworks.it>) |
Список | pgsql-general |
Ivan Sergio Borgonovo wrote: > On Mon, 19 Jan 2009 14:41:12 +0000 > Richard Huxton <dev@archonet.com> wrote: > >> Ivan Sergio Borgonovo wrote: >>> On Mon, 19 Jan 2009 14:19:51 +0000 >>> Richard Huxton <dev@archonet.com> wrote: >>> >>>> Igor Katson wrote: >>>>> Is there a way to watch all dependencies recursively without >>>>> doing a drop? >>>> BEGIN; >>>> DROP CASCADE... >>>> -- check things >>>> ROLLBACK; >>> Isn't it going to be a pretty expensive way to see? > >> Not necessarily - you're not likely to have a lot of concurrency >> on a backup database. And we are all testing this sort of stuff on >> a backup database, aren't we? > > Isn't it going to be expensive even if there is no concurrency? Not particularly. If you DELETE a lot of rows that can be expensive, but dropping a table doesn't need to track each record individually. > mvcc should be pretty efficient to rollback transactions but... well > it should have a cost anyway... and you add deleting to rolling > back, not just traversing some schema somehow. No deletion, just removes the table (and its indexes) from catalogues and deletes the relevant file(s) on commit. > Surely recursively traversing a schema may be expensive in termos of > programming time if there is no pre-build function. Well, it shouldn't take more than an hour or so to write and test a function. Never done so myself, since I tend to know what my schemas look like. -- Richard Huxton Archonet Ltd
В списке pgsql-general по дате отправления: