Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Блокировка записей
|
|||
|---|---|---|---|
|
#18+
Можно ли узнать заблокирована ли запись, запись блокируется вручную select ... where id = ... for update можно как нибудь из другой сессии узнать заблокирована ли она? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2008, 13:23 |
|
||
|
Блокировка записей
|
|||
|---|---|---|---|
|
#18+
Antoxa1982Можно ли узнать заблокирована ли запись, запись блокируется вручную select ... where id = ... for update можно как нибудь из другой сессии узнать заблокирована ли она?Попробовать заблокировать. Если свалишься с ошибкой, значит заблокирована. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2008, 13:25 |
|
||
|
Блокировка записей
|
|||
|---|---|---|---|
|
#18+
Нет не выходит, запрос ставиться в очередь и весит, ждет пока разблокируется запись, ждал около минуты, так и не дождавшись, снял блокировку... Ожидающий запрос (update) выполнился... А мне надо сразу сообщить что, мол запись заблокирована ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2008, 13:30 |
|
||
|
Блокировка записей
|
|||
|---|---|---|---|
|
#18+
Antoxa1982Нет не выходит, запрос ставиться в очередь и весит, ждет пока разблокируется запись, ждал около минуты, так и не дождавшись, снял блокировку... Ожидающий запрос (update) выполнился... А мне надо сразу сообщить что, мол запись заблокированаПрочитать про NOWAIT ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2008, 13:31 |
|
||
|
Блокировка записей
|
|||
|---|---|---|---|
|
#18+
Мне не надо таблицу блокировать Только запись! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2008, 13:46 |
|
||
|
Блокировка записей
|
|||
|---|---|---|---|
|
#18+
В один момент времени, с одной записью, может работать один пользователь Если кто то вдруг, захочет изменить эту же запись, надо его послать Причем запись может быть заблокирована на 1-5 минут Так что блокировка таблицы здесь не катит ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2008, 13:50 |
|
||
|
Блокировка записей
|
|||
|---|---|---|---|
|
#18+
Блокировка записи Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2008, 13:53 |
|
||
|
Блокировка записей
|
|||
|---|---|---|---|
|
#18+
NOWAIT... Все равно ожидает пока транзакция завершиться... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2008, 14:04 |
|
||
|
Блокировка записей
|
|||
|---|---|---|---|
|
#18+
Antoxa1982NOWAIT... Все равно ожидает пока транзакция завершиться... ДокументацияTo prevent the operation from waiting for other transactions to commit, use the NOWAIT optionА это как понимать тогда? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2008, 14:06 |
|
||
|
Блокировка записей
|
|||
|---|---|---|---|
|
#18+
Понятия не имею Говорю же, ждет Щас вот 2 раза перепроверил по 2 минуты ждал... как только транзакция завершилась, все запросы выполнились Мистика... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2008, 14:20 |
|
||
|
Блокировка записей
|
|||
|---|---|---|---|
|
#18+
Должен писать ERROR: could not obtain lock on row in relation Схему таблицы и запросы, которые на ней выполняются, напишите в форум. Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2008, 14:25 |
|
||
|
Блокировка записей
|
|||
|---|---|---|---|
|
#18+
таблица для пробы создана :-) table1 id, fld1 запрос на блокировку begin; select * from table1 where id = 1 FOR update NOWAIT; запрос на изменение update table1 set fld1 = 'бла бла бла' where id = 1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2008, 14:34 |
|
||
|
Блокировка записей
|
|||
|---|---|---|---|
|
#18+
Antoxa1982таблица для пробы создана :-) table1 id, fld1 запрос на блокировку begin; select * from table1 where id = 1 FOR update NOWAIT; запрос на изменение update table1 set fld1 = 'бла бла бла' where id = 1 Код: plaintext 1. 2. Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2008, 14:38 |
|
||
|
Блокировка записей
|
|||
|---|---|---|---|
|
#18+
Antoxa1982таблица для пробы создана :-) table1 id, fld1 запрос на блокировку begin; select * from table1 where id = 1 FOR update NOWAIT; запрос на изменение update table1 set fld1 = 'бла бла бла' where id = 1И второй запрос висит. Так? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2008, 14:39 |
|
||
|
Блокировка записей
|
|||
|---|---|---|---|
|
#18+
Как я блин сразу не допер....... Транзакция 2 begin; select * from table1 where id = 1 FOR update NOWAIT; update table1 set fld1 = 'бла бла бла' where id = 1; просто вначале надо попытаться заблокировать запись, если она УЖЕ заблокирована то вылетает эксепшен could not obtain lock on row in relation Dan Black спасибо огромное! Просто думал что он в любом случае должен сообщать, если запись заблокирована ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2008, 14:56 |
|
||
|
|

start [/forum/topic.php?fid=53&msg=35279874&tid=2004397]: |
0ms |
get settings: |
9ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
46ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
62ms |
get tp. blocked users: |
2ms |
| others: | 216ms |
| total: | 369ms |

| 0 / 0 |
