|
|
|
пятничный псто о порядке "событий" записей стейтмента
|
|||
|---|---|---|---|
|
#18+
Том Лэйн всё http://www.postgresql.org/message-id/3443.1434636106@sss.pgh.pa.us]расставил по местам. Я, пока в теме, нарисовал картинку как всё происходит и добавил пару слов. Чисто, чтобы потом не вспоминать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.06.2015, 13:11 |
|
||
|
пятничный псто о порядке "событий" записей стейтмента
|
|||
|---|---|---|---|
|
#18+
Павел ЛузановТом Лэйн всё http://www.postgresql.org/message-id/3443.1434636106@sss.pgh.pa.us]расставил по местам.он объяснил, почему "она утонула". но не то -- действительно ли такое поведение ("она тонет") - "правильно". т.е. это не "расставил по местам". это "описал причину текущего поведения". это немного не тот ответ. вправе ли пользователь, например такой, как разработчик системы триггерного реплицирования, ожидать иного поведения во всех случаях -- вопрос открытый. Но понятно-- что от пж -- не приходится. По крайней мере -- пока. на сём -- соль ответа: -- можно пользоваться вашими диаграммами, для предсказания порядка срабатывания афтер--обработчиков при наличии "instead" триггеров [и приравненых]. А к системам триггерной репликации впредь подходить осторожно, а не как к гарантированным универсалиям. И работать с ними только разрешенными методами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.06.2015, 16:53 |
|
||
|
пятничный псто о порядке "событий" записей стейтмента
|
|||
|---|---|---|---|
|
#18+
я там посмотрел внутрь кода вызова триггеров, есть конечно замечания. например! : меня щас интересует, почему я не могу на delete триггере old подменять. они игнорят "ретурн" old http://doxygen.postgresql.org/trigger_8c.html#acbfcf94c1d188020ff1fcfc9280b0600 сравните с update http://doxygen.postgresql.org/trigger_8c.html#a4daa91dfefe19f48d2c7b947f9ca83ef и как они new прокидывают там. это мне мешает сделать наследование единообразно (не миксуя рулы с триггерами, и можно было бы всё на этот микс списать) через триггера, при этом не проиграть фактически в размере на хранение. вот была идея -- но хрен пока. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. буду еще писать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.06.2015, 20:06 |
|
||
|
пятничный псто о порядке "событий" записей стейтмента
|
|||
|---|---|---|---|
|
#18+
Павел ЛузановТом Лэйн всё http://www.postgresql.org/message-id/3443.1434636106@sss.pgh.pa.us]расставил по местам. ещё раз прочитал нагрёбнутые в кучку аглицкие словеса -- в общем херню он пишет. "спросите тома, и ваши уши покроются толстым слоем лапши". он оперирует неопределенным понятием "завершение стейтмента" -- что это такое - никто не знает. предположу, что завершение [в т. ч. обработчиков, если есть] события before последнего row в стейтменте. тогда прямой вывод -- данная херня есть быть происходить оттого, что разрабцы поленились сообразить, что cte не стейтмент, а мультистейтмент. вернитесь к абстракции стейтмент мультистейтмента -- и всё вернётся на место -- сначала "завершится" (!хехе) последний before sub-DELETE cte -- потом -- пойдут все события after его же - потом before инсерта, внутри которых after для рядков в триггере, потом ... ну, вы поняли. ага. Т.е. какая-то минимальная стройность восстановится. (но есть и там проблемы, кажется, ну да хер с ними). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2015, 16:11 |
|
||
|
пятничный псто о порядке "событий" записей стейтмента
|
|||
|---|---|---|---|
|
#18+
нда, надо разбираться с cte ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2015, 16:38 |
|
||
|
|

start [/forum/topic.php?fid=53&msg=38988547&tid=1997921]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
24ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
54ms |
get tp. blocked users: |
1ms |
| others: | 234ms |
| total: | 352ms |

| 0 / 0 |
