-
Notifications
You must be signed in to change notification settings - Fork 69
Closed
Labels
Description
День добрый!
Сегодня я попытался сделать партицирование для такой таблицы
\d+ events;
Таблица "public.events"
Столбец | Тип | Модификаторы | Хранилище | Цель для статистики | Описание
--------------+---------+------------------------------+-----------+---------------------+----------
eventid | bigint | NOT NULL | plain | |
source | integer | NOT NULL DEFAULT 0 | plain | |
object | integer | NOT NULL DEFAULT 0 | plain | |
objectid | bigint | NOT NULL DEFAULT '0'::bigint | plain | |
clock | integer | NOT NULL DEFAULT 0 | plain | |
value | integer | NOT NULL DEFAULT 0 | plain | |
acknowledged | integer | NOT NULL DEFAULT 0 | plain | |
ns | integer | NOT NULL DEFAULT 0 | plain | |
Индексы:
"events_pkey" PRIMARY KEY, btree (eventid)
"events_1" btree (source, object, objectid, clock)
"events_2" btree (source, object, clock)
Ссылки извне:
TABLE "acknowledges" CONSTRAINT "c_acknowledges_2" FOREIGN KEY (eventid) REFERENCES events(eventid) ON DELETE CASCADE
TABLE "alerts" CONSTRAINT "c_alerts_2" FOREIGN KEY (eventid) REFERENCES events(eventid) ON DELETE CASCADE
TABLE "event_recovery" CONSTRAINT "c_event_recovery_1" FOREIGN KEY (eventid) REFERENCES events(eventid) ON DELETE CASCADE
TABLE "event_recovery" CONSTRAINT "c_event_recovery_2" FOREIGN KEY (r_eventid) REFERENCES events(eventid) ON DELETE CASCADE
TABLE "event_recovery" CONSTRAINT "c_event_recovery_3" FOREIGN KEY (c_eventid) REFERENCES events(eventid) ON DELETE CASCADE
TABLE "event_tag" CONSTRAINT "c_event_tag_1" FOREIGN KEY (eventid) REFERENCES events(eventid) ON DELETE CASCADE
TABLE "problem" CONSTRAINT "c_problem_1" FOREIGN KEY (eventid) REFERENCES events(eventid) ON DELETE CASCADE
TABLE "problem" CONSTRAINT "c_problem_2" FOREIGN KEY (r_eventid) REFERENCES events(eventid) ON DELETE CASCADE
но у меня вываливается ошибка
SELECT create_range_partitions('events', 'clock', '1479168000'::int, '2592000'::int);
WARNING: foreign key "c_alerts_2" references relation "events"
WARNING: foreign key "c_acknowledges_2" references relation "events"
WARNING: foreign key "c_event_tag_1" references relation "events"
WARNING: foreign key "c_problem_1" references relation "events"
WARNING: foreign key "c_problem_2" references relation "events"
WARNING: foreign key "c_event_recovery_1" references relation "events"
WARNING: foreign key "c_event_recovery_2" references relation "events"
WARNING: foreign key "c_event_recovery_3" references relation "events"
ERROR: relation "events" is referenced from other relations
КОНТЕКСТ: PL/pgSQL function common_relation_checks(regclass,text) line 36 at RAISE
SQL statement "SELECT public.common_relation_checks(parent_relid, attribute)"
PL/pgSQL function create_range_partitions(regclass,text,anyelement,anyelement,integer,boolean) line 21 at PERFORM
Скажите, что я делаю не так?
Спасибо!