Имя: Пароль:
1C
1C 7.7
v7: Задвоение данных и транзакции в SQL
0 OnePrg
 
02.08.21
14:18
В 1С активно работают до 20 пользователей. Часто при создании документа 1Ска ругается в том смысле, что таблица SQL занята, попробуйте позже. Операторы пробуют несколько раз и в итоге документ записывается. А потом обнаруживаем в журнале несколько одинаковых документов. Причём не сразу, нужно открыть закрыть то ли журнал, то ли даже 1С.  

Точного сообщения ошибки пока нет - следим и точных действий пока назвать не могу, но явно это всё связано с транзакциями.
1 Ёпрст
 
гуру
02.08.21
14:22
(0) Продолжайте наблюдение
2 OnePrg
 
02.08.21
15:48
Транзакция (с идентификатором процесса %d) вызвала взаимоблокировку ресурсов %.*ls с другим процессом и была выбрана в качестве жертвы для ее разрешения. Запустите транзакцию повторно.


http://imagizer.imageshack.com/img923/5910/Rz9GJw.png
3 fisher
 
02.08.21
16:09
Хм... В обычной ситуации дедлоки не должны приводить к задвоению. Я бы поставил на косяки в бизнес-логике, не рассчитанные на такого рода пессимистичные сценарии.
4 fisher
 
02.08.21
16:11
Начни с анализа авторства и тайминга дублей по ЖР
5 OnePrg
 
02.08.21
16:12
(3) 100% задваивает

чел создаёт элементы справочника, они не создаются, пишет "повторите транзакцию", он несколько раз повторяет пока элемент не записывается. Закрывает справочник, открывает, а их там 2.
6 fisher
 
02.08.21
16:14
(5) Всегда начинай с медицинских анализов, а показания пациентов - как вспомогательный инструмент.
7 Злопчинский
 
02.08.21
18:00
Так справочник их там два или доки определись уже. Ставлю накосяки в логике
8 Ёпрст
 
гуру
02.08.21
19:03
(5) справочник и штатно делает дубли в любой базе, достаточно включить редактирование в списке и отбор..и будут дубли по id
9 Ёпрст
 
гуру
02.08.21
19:03
и это не зависит от формата dbf\sql
10 OnePrg
 
02.08.21
20:11
(8) А вот это интересно. Конкретно задвоение пошло в справочнике "Складов", который редактируется в списке.

(6) Да, верно - посмотрел ЖР - нет там дублей. Пользователь сказал, что переименовал уже, но представление-то должно было остаться одинаковым, а этого не видно.

Итого: шухер безосновательный. Поторопился я на форум писать, сори. Всё только со слов пациента, как сказал fisher.
11 serpentt
 
03.08.21
14:15
(2) Когда появляется ошибка по транзакции(что на вашем фото) наши пользователи приучены давить кн. НЕТ
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший