Re: Clarify "allow_system_table_mods"
От | Adrian Klaver |
---|---|
Тема | Re: Clarify "allow_system_table_mods" |
Дата | |
Msg-id | 571E7880.6020205@aklaver.com обсуждение исходный текст |
Ответ на | Clarify "allow_system_table_mods" (Melvin Davidson <melvin6925@gmail.com>) |
Ответы |
Re: Clarify "allow_system_table_mods"
|
Список | pgsql-general |
On 04/25/2016 09:30 AM, Melvin Davidson wrote: > I need clarification on allow_system_table_mods parameter > Per the documentation: > *Allows modification of the structure of system tables.* This is used by > initdb. This parameter can only be set at server start. A millisecond after hitting enter I realized my previous answer did not make sense as postgresql.conf is set up by initdb. Then I found this: http://www.postgresql.org/docs/9.2/static/runtime-config-short.html -O allow_system_table_mods = on So use that option when doing initdb? > > However, attempting to modify pg_class to add another column fails with > "STATUS_ACCESS_VIOLATION" as below. > So either only certain system catalogs may be changed, or only certain > types of structure changes are allowed. > eg: add indexes, triggers > > Windows 10 > PostgreSQL 9.2.15, compiled by Visual C++ build 1600, 32-bit > > Current user is postgres > allow_system_table_mods = on > > ALTER TABLE pg_catalog.pg_class ADD COLUMN relcreated timestamp DEFAULT > current_timestamp; > > Fails with: > > 2016-04-25 12:08:00 EDT STATEMENT: ALTER TABLE pg_catalog.pgclass ADD > COLUMN relcreated timestamp DEFAULT current_timestamp; > 2016-04-25 12:08:14 EDT LOG: server process (PID 7760) was terminated > by exception 0xC0000005 > 2016-04-25 12:08:14 EDT DETAIL: Failed process was running: ALTER TABLE > pg_catalog.pg_class ADD COLUMN relcreated timestamp DEFAULT > current_timestamp; > 2016-04-25 12:08:14 EDT HINT: See C include file "ntstatus.h" for a > description of the hexadecimal value. > 2016-04-25 12:08:14 EDT LOG: terminating any other active server processes > > From ntstatus.h > *#define STATUS_ACCESS_VIOLATION ((NTSTATUS)0xC0000005L) // > winnt* > > -- > *Melvin Davidson* > I reserve the right to fantasize. Whether or not you > wish to share my fantasy is entirely up to you. -- Adrian Klaver adrian.klaver@aklaver.com
В списке pgsql-general по дате отправления: