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

Всем привет! Подскажите, пожалуйста, в чем проблема. Схема работы блока такая: Функция_1 ==>

вызывает ==> Функция_2 ==> вызывает (в цикле несколько раз. обычно 2-4) ==> Функция_3 (изменяется Таблица_1) ==> Триггер_1 (AFTER INSERT/UPDATE/DELETE Таблица_1) содержит
REFRESH MATERIALIZED VIEW Представление_1 WITH DATA;
RETURN NEW;
Представление_1 - основано на двух таблицах - Таблица_1 и Таблица_2. Таблица_2 нигде в указанных функциях не изменяется.
При вызове Функция_1 возникает ошибка: нельзя выполнить REFRESH MATERIALIZED VIEW "Представление_1", так как этот объект используется активными запросами в данном сеансе.
При этом если вызвать Функция_3 (изменяется Таблица_1) - то все работает корректно и ничего не падает!
Как заставить триггер корректно работать?

1 ответов

13 просмотров

Значит, представление_1 используется ранее в этой транзакции. См. src\backend\commands\matview.c, ExecRefreshMatView, вызов CheckTableNotInUse

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

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

Всем привет! Имеется функция: function IsValidChar(ch: UTF8Char): Boolean; var i: Integer; ValidChars: AnsiString; begin ValidChars := 'abcdefghijklmnopqrstuvwxyzABCDE...
Евгений
28
лучше скажите, причём тут паскаль?
Alexey Kulakov
36
День добрый, подскажите пожалуйста, есть ли какой-то способ сказать ребару не компилировать определённое приложение? Всю доку их перечиатл ничего подобного не нашёл
Кирилл
14
Народ! Впервые клиенту пришло письмо от РКН, у вас, дескать, есть яндекс метрика, а нигде не написано, что вы ее юзаете. Никто не сталкивался?
Sasha Beep
10
Добрый вечер. Хочу чтобы у меня в классе поле было функцией, которая возвращает строку. Делаю так: interface ... TGetOutPath = function : String of object; ... protec...
Kirill Filippenok
12
Это может быть все-таки не флудвейт? у меня ботфазер принимает изменения и отображает даже что они изменились, на видео видно что он прислал якобы уже измененное описание, н...
OVERLINK
13
Здравствуйте, хочу сделать HelloWorld в консоли Дельфи, но функция API ничего не выводит, что я делаю не так? program Hello; {$APPTYPE CONSOLE} uses System.SysUtils, WinAPI.Wi...
Sergey Vinogradov
20
Вопрос на перед, на следующую пятницу. Сколько строк кода можно вешать на одного программиста, понятно что если проект хорошо написан то можно и миллион. Но есть же где то пре...
AlekseyK Kluchnikov
31
Немного оффтопа: а кто на чем сидит для осдева в плане ide/редактора? Последнее время сидел на vscode, но я его прям не могу нормально воспринимать, перешел на сlion, но меня...
Evg Resh
29
Кстати, кто-нибудь извращался с делфи под вайном?
Serjone
11
Карта сайта