bars80081
Новичок
ситуация - полтергейст
при совершении определённой операции на пхп у меня в коде друг за другом выполняется несколько запросов к БД mysql. в частности в одном куске друг за другом идут запросы:
update ... table1 ...
insert ... table2 ...
update .. table1 ...
insert ... table2 ...
каждый запрос отдельно выполняется через mysql_query(), значения полей вычисляются на пхп
проблема заключается в том, что запросы insert к table2 проходят, а запросы update к table1 нет. ситуация дикая, так как данный код регистрирует проведение финансовых транзакций. вначале идёт обновление баланса (update ... table1) следом регистрация транзакции (insert ... table2) для контроля. в итоге получается, что контроль регистрирует проведение транзакции, а баланс не изменяется
никаких блокировок таблицы не применяю и никто параллельно не применяет
логирование на неуспешный update ничего не показало. запрос завершается нормально, система не валится. к сожалению (для тестирования, но к счастью для реализации) эта хрень случается не часто. сейчас ужесточу логирование и поставлю сохранение количества обновлённых строк, но пока это покажет какие-либо результаты - трудно сказать.
соответственно, хочу спросить в чём может быть причина? так как всегда полагал на то, что если уж я делаю запрос и система не валится, а результат возвращается успешным, то изменения произошли. а теперь нет доверия всему
при совершении определённой операции на пхп у меня в коде друг за другом выполняется несколько запросов к БД mysql. в частности в одном куске друг за другом идут запросы:
update ... table1 ...
insert ... table2 ...
update .. table1 ...
insert ... table2 ...
каждый запрос отдельно выполняется через mysql_query(), значения полей вычисляются на пхп
проблема заключается в том, что запросы insert к table2 проходят, а запросы update к table1 нет. ситуация дикая, так как данный код регистрирует проведение финансовых транзакций. вначале идёт обновление баланса (update ... table1) следом регистрация транзакции (insert ... table2) для контроля. в итоге получается, что контроль регистрирует проведение транзакции, а баланс не изменяется
никаких блокировок таблицы не применяю и никто параллельно не применяет
логирование на неуспешный update ничего не показало. запрос завершается нормально, система не валится. к сожалению (для тестирования, но к счастью для реализации) эта хрень случается не часто. сейчас ужесточу логирование и поставлю сохранение количества обновлённых строк, но пока это покажет какие-либо результаты - трудно сказать.
соответственно, хочу спросить в чём может быть причина? так как всегда полагал на то, что если уж я делаю запрос и система не валится, а результат возвращается успешным, то изменения произошли. а теперь нет доверия всему