Локировки записей
Добавлено: 22 мар 2017, 13:50
Добрый день!
Столкнулся с такой проблемой:
1-й пользователь осуществляет поиск записи FIND FIRST c локировкой SHARE-LOCK. Запрос конечно не самый лучший, в плане того что осуществлялся перебором. Пока искомая запись была найдена, был осуществлен перебор нескольких записей и вот на всех перебранных записях, как оказалось, была выставлена локировка SHARE-LOCK. Странно, почему так? Понятно что записи перебирались, но если они не подходили под запрос зачем их локировать? Процедура 1 пользователя осуществляла работу с найденной записью, а в это время...
2-й пользователь осуществлял поиск FIND FIRSTс локировкой EXCLUSIVE-LOCK. Искомой записью 2-го пользователя была одна из тех записей, что перебрал 1-й пользователь пока была найдена интересующая его запись. Тут возникла классическая ошибка, что запись заблокирована 1-м пользователем, хотя он с ней не работает.
Неужели прогресс так работает, или это я что-то не так понимаю?
Столкнулся с такой проблемой:
1-й пользователь осуществляет поиск записи FIND FIRST c локировкой SHARE-LOCK. Запрос конечно не самый лучший, в плане того что осуществлялся перебором. Пока искомая запись была найдена, был осуществлен перебор нескольких записей и вот на всех перебранных записях, как оказалось, была выставлена локировка SHARE-LOCK. Странно, почему так? Понятно что записи перебирались, но если они не подходили под запрос зачем их локировать? Процедура 1 пользователя осуществляла работу с найденной записью, а в это время...
2-й пользователь осуществлял поиск FIND FIRSTс локировкой EXCLUSIVE-LOCK. Искомой записью 2-го пользователя была одна из тех записей, что перебрал 1-й пользователь пока была найдена интересующая его запись. Тут возникла классическая ошибка, что запись заблокирована 1-м пользователем, хотя он с ней не работает.
Неужели прогресс так работает, или это я что-то не так понимаю?