У меня есть несколько сценариев PHP CLI, которые выполняются в течение длительного времени (24 часа и более), и, хотя они выполняют регулярные 'коммиты, у меня были некоторые проблемы с потерянными транзакциями - возможно, из-за сбоя сценариев.
Мое решение состояло в том, чтобы создать транзакцию следующим образом - это было год назад, когда я исследовал это и не мог вспомнить точные причины этих настроек, но это, казалось, решило некоторые проблемы с базой данных.
$ dbh = ibase_connect ($ dbhost, $ dbuser, $ dbpass);$ trans = ibase_trans (IBASE_WRITE + IBASE_COMMITTED + IBASE_REC_VERSION + IBASE_WAIT, $ dbh);
Обновлены до php 5.3.5 и обнаружили, что строка ibase_trans вызывает ошибку сегментации.На странице php ibase_trans есть примечание:
"Поведение этой функции было изменено в PHP 5.0.0. Первый вызов ibase_trans () не вернет транзакцию по умолчанию для соединения."
Таким образом, мой вопрос заключается в том, могу ли я установить аргументы транзакции для транзакции по умолчанию ... Вторичный вопрос, не упускаю ли я смысл пытаться сделать это в любом случае!
Спасибо