Включаем транзакцию - выключаем pconnect ?

antenne

Новичок
Включаем транзакцию - выключаем pconnect ?

Типичный код
PHP:
mysql_pconnect(....);

try {

  $db->query("start transaction");
  $db->query(...);

   $db->query("commit");

} catch (DBException $e) {

   $db->query("rollback");
   logException($e);

}

не спасет от зависшей транзакции, в случае падения веб-сервера, обрыва соединения с браузером, ошибок в скрипте и т.д.

Один способ - отказаться от постоянных соединений, (mysql_pconnect - > mysql_connect)

А как поступаете вы?
 

voituk

прозревший
отказаться от постоянных соединений
Вы от них откажетесь, как только посещаемость вашего проекта станет выше посещаемости домашней странички Васи Пупкина.

Вот мне ещё интересно, как в случае "падения веб-сервера, обрыва соединения, ошибок в скрипте и т.д." вы будете делать rollback ? На "метрвом" подключении?
 

Андрейка

Senior pomidor developer
интересно, а зависшая транзакция развиснет если комп с вебсервером и базой вырубить? или постоянное соединение (pconnect) может и без них обходицца?
 

antenne

Новичок
Андрейка
транзакция автоматически завершается откатом, если закрывается соединение с БД


voituk
посещаемость давно уже намного выше васи пупкина,
пока что пул из постоянных соединений работает исправно

нет оверхеда на подключение к субд
 

Андрейка

Senior pomidor developer
>ранзакция автоматически завершается откатом, если закрывается соединение с БД
>>не спасет от зависшей транзакции, в случае падения веб-сервера, обрыва соединения

это как?
 
Сверху