Конкурентная втавка одной и той же записи
От: Шубин Евгений Россия http://erladvisor.blogspot.de/
Дата: 05.09.17 12:48
Оценка:
БД: Postgresql 9.6

Клиенты создают сессиии, которые имеют определённое время жизни.
Система проверяет существует ли сессия которая ещё не просрочена и создаёт, если нет. (Конечно всё в транзакции).
Первичный ключ — id.
Из-за особенностей клиента может прийти несколько конкурентных запросов, что ведёт к созданию лишних сессий.
Теоретически можно залочить таблицу, но вряд ли устроит по производительности.
Можно поменять уровень изоляции на сервере (тоже не очень хочется).
Хочется сделать уникальный индекс на запись, включающий время (дискретное?).
Посоветуйте чего-нибудь умного.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.