Вероятно, это действительно глупый вопрос, но мне было просто интересно, если вы отключите автокоммит для MySQL, а затем попытаетесь получить блокировку, нужно ли выполнять фиксацию после получения блокировки, чтобы блокировка сохранялась?
$mysqli->autocommit(FALSE);
$q = 'SELECT GET_LOCK("lockName", 10)';
$res = $mysqli->query($q);
list($acquiredLock) = $res->fetch_row();
if($acquiredLock) {
$mysqli->commit();
}
Спасибо за вашу помощь.
Если GET_LOCK
возвращает 1 (успех), затем сеанс получил блокировку.
Блокировка продолжит удерживаться сеансом независимо от COMMIT
или же ROLLBACK
,
Других решений пока нет …