172 похожих чатов

Всем привет) Может кто подсказать, как можно создать индексы на

партиционируемой таблице (конкурентно) не зная имен партиций?
Т.е. партиции живут своей жизнь, бизнес логика иногда создает новые, старые удаляет. Из-за этого не получится сделать миграцию, где я пропишу партиции по конкретным именам для создания индекса сначала конкурентно на них а потом на мастер таблице.
А создавать индекс не конкурентно на всей таблице не хочется из-за локов в проде(

5 ответов

30 просмотров

почему не по всем? какая в этом логика? и причем тут логи на проде?

Ilia-Pisanyi🐳 Автор вопроса
Alexey Bulgakov
почему не по всем? какая в этом логика? и причем т...

Нужны на всех партициях. Не логи а локи, исправил) Думал сделать в функции plpgsql но они транзакционные и конкурентно создавать индексы не получится. Цель - создать индексы на всех партициях не зная их имен конкурентно

Ilia Pisanyi🐳
Нужны на всех партициях. Не логи а локи, исправил)...

не надо знать их имена. можно найти имена всех партиций и динамически сформировать create index

Ilia-Pisanyi🐳 Автор вопроса
Alexey Bulgakov
не надо знать их имена. можно найти имена всех пар...

Не понял как. Найти имена всех партиций через pg_inherits? Для этого нужна функция а она транзакционная. Другого способа я не знаю(

Ilia Pisanyi🐳
Не понял как. Найти имена всех партиций через pg_i...

у меня сделано так... CREATE OR REPLACE VIEW ibt_processing.v_partitions AS SELECT tbl.sch_name, tbl.tbl_name, tbl.borders[1]::timestamp with time zone AS range1, tbl.borders[2]::timestamp with time zone AS range2 FROM ( SELECT pt.sch_name, pt.tbl_name, regexp_match(pg_get_expr(c1.relpartbound, c1.oid), 'FOR VALUES FROM \(''(\d\d\d\d-\d\d-\d\d.*)''\) '::text || 'TO \(''(\d\d\d\d-\d\d-\d\d.*)''\)'::text) AS borders FROM ibt_processing.part_tables pt JOIN pg_class c2 ON pt.tbl_name::text = c2.relname AND c2.relkind = 'p'::"char" JOIN pg_inherits i ON c2.oid = i.inhparent JOIN pg_class c1 ON i.inhrelid = c1.oid AND c1.relpartbound IS NOT NULL JOIN pg_namespace n ON c1.relnamespace = n.oid AND pt.sch_name::text = n.nspname) tbl;

Похожие вопросы

Обсуждают сегодня

Мужики и девушки, привет) в Вelphi xe7 в настройках во вкладке "Editor Options" далее " Color" есть список: "Elements", открыв который мы можем настраивать отображение разных...
Kraszx
14
Добрый вечер. Есть вопрос, а может и предложение. Был у меня диалог в другой группе о делфи и я задался вопросом: "А нельзя ли в делфи цвет //коментария и {комментария} сде...
Kraszx
24
Всем привет! Подскажи, пожалуйста, как передать в TComboBox сразу значение и id записи. На Delphi я делал так: ComboBox1.Items.AddObject('Какое-то значение', Pointer(id запис...
Евгений
13
А вот это что за конструкция? Вернее, она тут нафига?
Serjone
10
Мдя, прикол, боевая сборка запускается (именно под отладчиком) после F9 примерно полторы минуты (97 секунд если быть точным). Начал копать - проблема детектится сразу - зависа...
Александр (Rouse_) Багель
38
Мужики. привет) в Вelphi xe7 в настройках во вкладке "Editor Options" далее " Color" есть список: "Elements", открыв который мы можем настраивать отображение разных элементов...
Kraszx
2
Здравствуйте, вопрос по структурам данных. Были у вас случаи, когда пришлось писать деревья или двунаправленные списки?
/ /
50
Товарищи, кто работа с iphelper? Или может я в самой логике ошибки фигачу, не пойму.... var ifTable : PMIB_IFTABLE; size, corSize: DWORD; Buffer ...
Warfarellen
4
я так понимаю, я так подозреваю, что создание такого плагина для человека, кто умеет писать плагины для делфи потребует минут 5-10 времени. но это мое подозрение. хотелось бы ...
Kraszx
7
Всем привет! Кто пользуется DevExpress, подскажите пожалуйста, реализован ли в TcxGrid в новых версиях поиск по датам как в Экселе (ну т.е. не просто список чекбоксов со значе...
A Z
4
Карта сайта