Судя по коду(app\Tygh\Lock\Store\DatabaseStore.php) это нормально и сами разработчики в комментариях к коду пишут что могут быть ошибки при вставке данных в эту таблицу.Кто в курсе? Что это такое?
В журнале событий записи типа этой.
База данных (Ошибка)
Ошибка: Duplicate entry '4a98afca5bea1936ccf69d5b8fb59d7978154e139d080e05448e158dd10b55b9' for key 'PRIMARY' <b>(1062)</b>
Запрос: INSERT INTO ****_lock_keys (key_id, token, expiry_at) VALUES ('4a98afca5bea1936ccf69d5b8fb59d7978154e139d080e05448e158dd10b55b9', '+bpr7+BGv72Zw2uJGb9PVVtvApwsKRshAfrwIhFt+z8=', UNIX_TIMESTAMP(NOW()) + 300)
Код:
try {
$this->query(
'INSERT INTO ?:lock_keys (key_id, token, expiry_at) VALUES (?s, ?s, UNIX_TIMESTAMP(NOW()) + ?i)',
$this->getHashedKey($key), $this->getToken($key), $this->initial_ttl
);
} catch (DatabaseException $exception) {
// the lock is already acquired. It could be us. Let's try to put off.
$this->putOffExpiration($key, $this->initial_ttl);
}
Код:
if(!$this->exists($key)) {
try {
$this->query(
'INSERT INTO ?:lock_keys (key_id, token, expiry_at) VALUES (?s, ?s, UNIX_TIMESTAMP(NOW()) + ?i)',
$this->getHashedKey($key), $this->getToken($key), $this->initial_ttl
);
} catch (DatabaseException $exception) {
// the lock is already acquired. It could be us. Let's try to put off.
$this->putOffExpiration($key, $this->initial_ttl);
}
} else {
// the lock is already acquired. It could be us. Let's try to put off.
$this->putOffExpiration($key, $this->initial_ttl);
}
Последнее редактирование: