Re: Re: [BUGS] BUG #7873: pg_restore --clean tries to drop tables that don't exist
От | Pavel Stehule |
---|---|
Тема | Re: Re: [BUGS] BUG #7873: pg_restore --clean tries to drop tables that don't exist |
Дата | |
Msg-id | CAFj8pRAyO-H5QQJ+853YsO_CZNeNrr7=Z9qjRuC4y5cmWtWyjw@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: Re: [BUGS] BUG #7873: pg_restore --clean tries to drop tables that don't exist (Satoshi Nagayasu <snaga@uptime.jp>) |
Ответы |
Re: Re: [BUGS] BUG #7873: pg_restore --clean tries to drop
tables that don't exist
|
Список | pgsql-hackers |
2013/9/16 Satoshi Nagayasu <snaga@uptime.jp>
(2013/07/06 1:16), Pavel Stehule wrote:I'm looking at this patch, and I have a question here.I am sending a patch that removes strict requirements for DROP IF
EXISTS statements. This behave is similar to our ALTER IF EXISTS
behave now.
postgres=# DROP CAST IF EXISTS (sss AS public.casttesttype);
NOTICE: types "sss" and "public.casttesttype" does not exist, skipping
DROP CAST
postgres=# DROP FUNCTION IF EXISTS public.pt_in_widget(point, widget);
NOTICE: function public.pt_in_widget(point,widget) does not exist, skipping
DROP FUNCTION
postgres=# DROP OPERATOR IF EXISTS public.<% (point, widget);
NOTICE: operator public.<% does not exist, skipping
DROP OPERATOR
postgres=# DROP TRIGGER test_trigger_exists ON no_such_table;
ERROR: relation "no_such_table" does not exist
postgres=# DROP TRIGGER IF EXISTS test_trigger_exists ON no_such_table;
NOTICE: trigger "test_trigger_exists" for table "no_such_table" does
not exist, skipping
DROP TRIGGER
This functionality is necessary for correct quite reload from dump
without possible warnings
Should "DROP TRIGGER IF EXISTS" ignore error for non-existing trigger
and non-existing table? Or just only for non-existing trigger?
My opinion is so, both variants should be ignored - it should be fully fault tolerant in this use case.
Regards
Pavel
I've not understood the pg_restore issue precisely so far,
but IMHO "DROP TRIGGER IF EXISTS" means "if the _trigger_ exists",
not "if the _table_ exists".
Is this a correct and/or an expected behavior?
Sorry if I missed some consensus which we already made.
Any comments?
Regards,
--
Satoshi Nagayasu <snaga@uptime.jp>
Uptime Technologies, LLC. http://www.uptime.jp
В списке pgsql-hackers по дате отправления: