Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
09.04.2018, 10:31
|
|||
---|---|---|---|
|
|||
двойной вызов функции на добавление данных |
|||
#18+
Добрый день суть проблемы: В конце дня запускается функция, которая рассчитывает статистику по прошедшему дню, и кладет ее в таблицу. Причем функция удаляет все предыдущие данные статистики за текущий день (что бы избежать дублей) но! бывает, что вызов этой функции задваивается (вызывается 2 раза почти одновременно), в результате появляются дубли в таблице и совсем странно то, что могут продублироваться не все записи схема работы веб клиент-> pgbouncer->postgresql функция для сбора статистики: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24.
в итоге в таблице могут появиться такие записи: "id" "smena" "worker" "action" "smm" "org" "11215463" "98686" "6577" "6" "2544" "741" "11215787" "98686" "6577" "6" "2544" "741" Понимаю что есть варианты решения: поправить вызов функции, что бы 2 раза не вызывал, настроить индекс, что бы не создавались дубли, но хотелось бы решить эту проблему на уровне функции, что то можно сделать? спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
|
09.04.2018, 11:20
|
|||
---|---|---|---|
|
|||
двойной вызов функции на добавление данных |
|||
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
|
09.04.2018, 20:48
|
|||
---|---|---|---|
|
|||
двойной вызов функции на добавление данных |
|||
#18+
Посмотрите на SERIALIZABLE: https://www.postgresql.org/docs/current/static/transaction-iso.html#XACT-SERIALIZABLE ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=53&tablet=1&tid=1995846]: |
0ms |
get settings: |
7ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
42ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
45ms |
get tp. blocked users: |
2ms |
others: | 302ms |
total: | 433ms |
0 / 0 |