Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / В JPA есть поддержка SELECT...LOCK IN SHARE MODE ? / 3 сообщений из 3, страница 1 из 1
09.05.2015, 12:32
    #38955167
chabapok
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В JPA есть поддержка SELECT...LOCK IN SHARE MODE ?
В JPA Есть такая штука, как LockModeType.PESSIMISTIC_READ и LockModeType.PESSIMISTIC_WRITE. Причем, гугл говорит, что если хочется SELECT..FOR UPDATE, то надо использовть LockModeType.PESSIMISTIC_WRITE. Логично было бы предположить, что если мы сделаем Query.setLockMode(LockModeType.PESSIMISTIC_READ) - то orm фреймворк должен к селекту добавить модификатор LOCK IN SHARE MODE. Явного указания, что так должно быть, я не нашел, но насколько я себе это представляю, оно должно быть именно так.

Я проверил исходники хибернейта и исходники dataNucleus - в них нету подстроки "LOCK IN SHARE MODE", хотя FOR UPDATE есть и оба фреймворка умеют его делать. dataNucleus делает FOR UPDATE на обеих типах локов.

Вопрос. Это я неправильно понял смысл PESSIMISTIC_READ локов, или это в обеих фреймворках такая фича не реализована?

Но как тогда правильно делать концепцию много читателей-мало писателей?
...
Рейтинг: 0 / 0
12.05.2015, 07:55
    #38956028
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В JPA есть поддержка SELECT...LOCK IN SHARE MODE ?
chabapok,
Начать с того чтобы не блокировать вообще.
...
Рейтинг: 0 / 0
14.05.2015, 14:35
    #38958719
chabapok
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В JPA есть поддержка SELECT...LOCK IN SHARE MODE ?
Я бы рад, но если я так сделаю - у меня данные в итоге получатся неконсистентны, и как сделать так чтобы оно работало надежно - я не знаю.

Если у вас есть ссылка на доку как такое делается - поделтесь, плз.
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / В JPA есть поддержка SELECT...LOCK IN SHARE MODE ? / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]