Имя: Пароль:
1C
1С v8
Запрос в транзакции выполняется дольше
0 yolops
 
17.02.14
15:13
Подскажите, можно ли как то с этим бороться? Запрос в консоли выполняется мгновенно, но при вставке в транзакцию (перед записью документа) думает секунд 20
1 rbcvg
 
17.02.14
15:18
Можно и даже нужно.
2 yolops
 
17.02.14
15:21
(1) как?
уточнение, запрос выполняю в тестовой базе, в которой только я.
3 yolops
 
17.02.14
15:22
БД на MS SQL
4 rbcvg
 
17.02.14
15:24
(2) начни с указания конфы. посту к 30 мы у тебя запрос попросим, а там видно будет.
5 КошерныйТролль
 
17.02.14
15:24
Оно понятно. При автоматической транзакции блокируются данные, которые выбирает запрос, плюс данные, к которым обращаешься по ссылке через встроенный язык.
6 КошерныйТролль
 
17.02.14
15:25
Плюс запрос, выполняемый внутри транзакции не использует грязное чтение.
7 yolops
 
17.02.14
15:28
(2)конфа самописная. платформа 8.2.19
8 КошерныйТролль
 
17.02.14
15:31
(7) переводи конфу на управляемый режим блокировки данных, но тогда придется самому описывать в коде все необходимые блокировки.
9 yolops
 
17.02.14
16:52
Все, разобрался. Если в параметрах запроса используется условие по измерению из составным типом, то блокировка длится намного дольше.
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший