
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
16.10.2002, 10:06
|
|||
|---|---|---|---|
Блокировки и таймаут? |
|||
|
#18+
Привет, солнцеподобные корифеи! Oracle 7.3 + клиент на Дельфи/БДЕ Может кто вразумит, как сделать примерно следующее: юзер А забирает запись на редактирование. В это же время юзер Б ее же желает удалить. И допустить такого нельзя, нужно сразу дать отбой на удаление. Я пользую для блокировки SELECT ...FOR UPDATE NOWAIT. При запросе на удаление клиент зависает в ожидании разлочки записи, и по факту тут же убивает наработанное другим бедолагой. Никакого тюнинга на тему timeout я не нахожу. Как быть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
16.10.2002, 10:51
|
|||
|---|---|---|---|
|
|||
Блокировки и таймаут? |
|||
|
#18+
По-моему. в твоем случае обе сессии должны перед изменением записи попытаться залочить ее. Т.е. сессия, пытающая удалить запись, перед delete тоже должна сказать select ... for update nowait, и если кто-то эту запись уже держит, получит ORA-00054: resource busy and acquire with NOWAIT specified. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=52&mobile=1&tid=1992925]: |
0ms |
get settings: |
4ms |
get forum list: |
15ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
25ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
31ms |
get tp. blocked users: |
2ms |
| others: | 205ms |
| total: | 295ms |

| 0 / 0 |
