|
4 / 4 / 1
Регистрация: 20.12.2019
Сообщений: 310
|
||||||
Не работает транзакция22.01.2025, 16:38. Показов 1706. Ответов 14
Добрый день! Случилась такая история. Есть код
0
|
||||||
| 22.01.2025, 16:38 | |
|
Ответы с готовыми решениями:
14
Не работает транзакция Не работает транзакция Не работает транзакция MySQL |
|
Native x86
6859 / 3791 / 1026
Регистрация: 13.02.2013
Сообщений: 11,861
|
|
| 22.01.2025, 19:26 | |
|
БД какая? Не все базы (и не все движки в некоторых базах) поддерживают транзакции.
0
|
|
|
4 / 4 / 1
Регистрация: 20.12.2019
Сообщений: 310
|
|
| 23.01.2025, 17:20 [ТС] | |
|
0
|
|
|
Native x86
6859 / 3791 / 1026
Регистрация: 13.02.2013
Сообщений: 11,861
|
|||
| 23.01.2025, 17:57 | |||
|
В коде у вас все выглядит правильно, но проблема скорее всего в другом месте.
0
|
|||
|
4 / 4 / 1
Регистрация: 20.12.2019
Сообщений: 310
|
|||||||||
| 23.01.2025, 18:12 [ТС] | |||||||||
|
Добавлено через 3 минуты
0
|
|||||||||
|
Невнимательный
|
||||||||||||
| 23.01.2025, 18:32 | ||||||||||||
|
gena8208, как-то можно проверить влияет-ли ?
какое-то добавление, а потом скрипт просто завершает работу... без COMMIT/ROLLBACK изначально вроде так и было реализовано
Не по теме: Как вариант ещё попробовать COMMIT и ROLLBACK в функции где-то реализовать, и зарегистрировать её с
но тоже костыль, и передавать/получать кучу всего... объект pdo, перевменную какую насчёт всё-ли выполнено
1
|
||||||||||||
|
3900 / 3238 / 1353
Регистрация: 01.08.2012
Сообщений: 10,914
|
|||
| 23.01.2025, 18:36 | |||
|
Условно, у юзера баланс 100 рублей. Запускается 2 транзакции, каждая на списание 70 рублей. Каждая видит, что у юзера баланс 100, исходя из этого оформляет покупку и обновляет баланс на 30р. В итоге оформилось 2 заказа суммарно на 140р, а у юзера списалось только 70. Для решения проблемы используем блокирующее чтение, т.е. SELECT ... FOR UPDATE. Думаю в вашем случае это вполне может быть оно, т.к. подвисает база, и после отвисания срабатывают сразу несколько транзакций, ожидающих выполнения.
1
|
|||
| 23.01.2025, 18:40 | |
|
0
|
|
|
3900 / 3238 / 1353
Регистрация: 01.08.2012
Сообщений: 10,914
|
|
| 23.01.2025, 19:06 | |
|
1
|
|
|
4 / 4 / 1
Регистрация: 20.12.2019
Сообщений: 310
|
||||||
| 23.01.2025, 20:48 [ТС] | ||||||
|
Добавлено через 1 минуту Добавлено через 4 минуты
0
|
||||||
|
2604 / 1508 / 689
Регистрация: 23.08.2015
Сообщений: 3,839
|
|||
| 23.01.2025, 22:15 | |||
|
2) Операция должна быть идемпотентна. Чтоб если вы запускали несколько раз одну и туже операцию - в итоге получили один результат, как будто бы выполнили эту операцию один раз. Для этого и необходим ключ идемпотентности. У вас оба пункта не выполнены.
0
|
|||
|
3900 / 3238 / 1353
Регистрация: 01.08.2012
Сообщений: 10,914
|
|||||
| 23.01.2025, 23:12 | |||||
|
0
|
|||||
|
4 / 4 / 1
Регистрация: 20.12.2019
Сообщений: 310
|
|||||||||||||
| 26.01.2025, 10:32 [ТС] | |||||||||||||
|
Добавлено через 31 секунду Добавлено через 5 минут Добавлено через 21 минуту Пример
0
|
|||||||||||||
|
Невнимательный
|
||
| 26.01.2025, 11:10 | ||
|
Когда для пользователя выполняется скрипт, который открыл сессию, файл сессии блокируется , и открытия сессии, с таким-же сид, ожидают разблокирования ... по завершению первого, или по выполнению из него session_write_close() или подобного . Также частоту выполнения можно ограничить, сохранением и проверкой времени успешного выполнения, касательно выполнения какого-либо действия конкретно.
0
|
||
|
3900 / 3238 / 1353
Регистрация: 01.08.2012
Сообщений: 10,914
|
||||
| 26.01.2025, 13:44 | ||||
|
0
|
||||
| 26.01.2025, 13:44 | |
|
Помогаю со студенческими работами здесь
15
транзакция Транзакция Транзакция
Транзакция Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2.
Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом.
В. . .
|
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2.
Задача: отобразить спецтехнику, которая на данный момент находится в ремонте.
Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
|
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
|
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
|
|
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут
Суть:
- Группа наркоманов из 10 человек.
- Только один инфицирован ВИЧ.
- Колются одной иглой.
- Колются раз в день.
- Колются последовательно через. . .
|
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
|
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
|
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . .
а удачный момент так и не приходит.
|