Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Включение/отключение триггера и транзакции
|
|||
|---|---|---|---|
|
#18+
Приветствую. Хотя я это уже и проверил, но на всякий случай уточню. Как я понимаю, команды ALTER TRIGGER <блабла> INACTIVE/ACTIVE запускаются с учётом уровня изолированности той транзакции, внутри которой они запущены? Т.е. если я сделаю 1. Начну транзакцию c уровнем Repeatable Read 2. Отключу триггер 3. ... 4. Включу триггер 5. Закончу транзакцию То для других транзакций, которые исполняются в это же время с тем же уровнем изоляции, отключение триггера не будет "заметно" и для них он будет срабатывать как и положено? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2015, 13:08 |
|
||
|
Включение/отключение триггера и транзакции
|
|||
|---|---|---|---|
|
#18+
ArtDen, неправильно думаешь. Уровень изолированности тут не причём. Лучше вообще не применять ALTER TRIGGER INACTIVE/ACTIVE за исключением случаев заливки данных в монопольном режиме. Обходят триггеры в основном так в самом начале тела триггера ставится Код: sql 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2015, 13:14 |
|
||
|
Включение/отключение триггера и транзакции
|
|||
|---|---|---|---|
|
#18+
Так проверка показала, что ALTER TRIGGER INACTIVE/ACTIVE вполне себе подчиняется транзакциям. Или я что-то упустил? Почему лучше так не делать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2015, 13:18 |
|
||
|
Включение/отключение триггера и транзакции
|
|||
|---|---|---|---|
|
#18+
ArtDenИли я что-то упустил? Угу. Разнообразие архитектур и параметров транзакций. Ну и DFW не в последнюю очередь. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2015, 13:23 |
|
||
|
Включение/отключение триггера и транзакции
|
|||
|---|---|---|---|
|
#18+
А можно поподробнее. Чем мне грозит отключение/включение триггера в транзакции? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2015, 13:26 |
|
||
|
Включение/отключение триггера и транзакции
|
|||
|---|---|---|---|
|
#18+
ArtDen, нифига не выйдет. если тебе в одной транзакции триггер надо, а в другой не надо, то в триггере пиши условный код. А в качестве условия можешь выбрать генератор, или еще что-нибудь. Вообще идея хреновая, потому что отличить одну транзакцию от другой на сервере можно разве что по ее принадлежности к какому-либо юзеру (номер транзакции ни о чем не говорит кроме номера). Следовательно, условный код должен на юзера ориентироваться. А если у тебя для одного юзера надо триггеры то включать то выключать, то это совсем капец. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2015, 13:31 |
|
||
|
Включение/отключение триггера и транзакции
|
|||
|---|---|---|---|
|
#18+
ArtDen, ага упустил. В зависимости от архитектуры сервера кэш метаданных ведёт себя по разному. В классике все уже подключенные коннекты не увидят твоего отключения триггера, а вновь подключившиеся увидят. На счёт супера не знаю точно, но скорее всего там вообще все коннекты будут видеть твоё отключение триггера. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2015, 13:39 |
|
||
|
Включение/отключение триггера и транзакции
|
|||
|---|---|---|---|
|
#18+
Отключать триггер надо только для одного юзера - репликатора. В общем, спасибо за советы. Сделаю условие в самом триггере. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2015, 13:40 |
|
||
|
Включение/отключение триггера и транзакции
|
|||
|---|---|---|---|
|
#18+
ArtDen, В качестве флага для проверки в триггере можно использовать транзакционную переменную. Смотри rdb$set_context, rdb$get_context. Очень удобно как раз для таких задач. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2015, 15:45 |
|
||
|
|

start [/forum/topic.php?fid=40&msg=38934779&tid=1562910]: |
0ms |
get settings: |
11ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
203ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
| others: | 280ms |
| total: | 576ms |

| 0 / 0 |
