|
База зависает при проведении документа. | ☑ | ||
---|---|---|---|---|
0
Dunstan
22.06.17
✎
15:22
|
Есть самописная база. На сервере 1с зависает, а в файловом варианте нет. В какую сторону копать?
|
|||
1
1c-kind
22.06.17
✎
15:23
|
Проверить выполнение регламентных заданий на сервере БД.
|
|||
2
Dunstan
22.06.17
✎
15:24
|
База простая как песня. Там их нет этих регламентных заданий.
|
|||
3
ejikbeznojek
22.06.17
✎
15:25
|
Количество пользователей?
|
|||
4
pessok
22.06.17
✎
15:27
|
блокировки?
|
|||
5
Dunstan
22.06.17
✎
15:29
|
пользователь один
она тестовая |
|||
6
Cyberhawk
22.06.17
✎
15:31
|
А ты там кем?
|
|||
7
Dunstan
22.06.17
✎
15:36
|
Такой нюанс. Там доформировываются комплекты(или нет) и делается новым методом проведения. И записываются и проверяются остатки в обработке проведения.
И когда прошло движение с отрицательными остатками и дальше надо просто Отказ = Истина и выйти, вот тогда зависает на сервере, а в файловой все ок. |
|||
8
Dunstan
22.06.17
✎
15:36
|
(6) там полные права
|
|||
9
Fragster
гуру
22.06.17
✎
15:36
|
да, так и задумано
|
|||
10
Господин ПЖ
22.06.17
✎
15:36
|
дедлок
|
|||
11
Fragster
гуру
22.06.17
✎
15:37
|
ошибка в (7). допроведение и сам алгоритм проведения не должны трогать одни и те же данные
|
|||
12
ejikbeznojek
22.06.17
✎
15:37
|
Так запусти замер производительности
и пакеж запрос, который висит) |
|||
13
Dunstan
22.06.17
✎
15:37
|
ну куда копать то?
|
|||
14
Fragster
гуру
22.06.17
✎
15:37
|
или допроведение должно работать после проведения
|
|||
15
Fragster
гуру
22.06.17
✎
15:38
|
в файловой фоновое ждет освобождения блокировки таблицы, а в серверной - нет
|
|||
16
Dunstan
22.06.17
✎
15:38
|
Зависает при выходе из процедуры обработки проведения.
|
|||
17
Dunstan
22.06.17
✎
15:39
|
нет фоновых заданий
|
|||
18
Cyberhawk
22.06.17
✎
15:40
|
(15) Что за фоновое по допроведению?
|
|||
19
Fragster
гуру
22.06.17
✎
15:40
|
тогда что такое "допроведение"?
|
|||
20
Fragster
гуру
22.06.17
✎
15:40
|
(18)->(19)
|
|||
21
pessok
22.06.17
✎
15:42
|
(7) а что, нельзя все сначала посчитать/проверить в транзакции, а потом, если надо, дописать/исправить/выйти и уже зафиксировать? зачем двойное проведение?
|
|||
22
Cyberhawk
22.06.17
✎
15:43
|
(19) Так это ты ввел такой термин. Что имеешь в виду?
|
|||
23
Fragster
гуру
22.06.17
✎
15:46
|
(22) я плохо прочитал (7) :)
просто иногда по "оперативным" регистрам идет проведение в обработке проведения, а по остальным - регламентом/фоновым. и если стартовать это фоновое в обработке проведения, то нужно обеспечить начало этого фонового после обработки проведения, например эксклюзивной блокировкой чего-нибудь. так делается для психологической "более быстрой работы" 1с. |
|||
24
pessok
22.06.17
✎
15:47
|
(23) на самом деле, это реально неплохо ускоряет работу. особенно БСПшных тяжеленных конф, а-ля ERP.
но чет мне кажется, что тут дело в другом :) |
|||
25
Cyberhawk
22.06.17
✎
15:58
|
(23) "нужно обеспечить начало этого фонового после обработки проведения, например эксклюзивной блокировкой чего-нибудь" // В ФЗ делать что ли бесконечный цикл по проверке заблокированности чего-либо, ожидая, когда завершение транзакции проведения (записи) освободит заблокированное?
Не проще ли массово шерстить очередь документов-кандидатов на допроведение без привязки к событию проведения каждого документа? |
|||
26
Fragster
гуру
22.06.17
✎
16:03
|
(25) нет, можно сделать как в многопоточном тесте производительности для обеспечения одновременности старта потоков - в "родительской" транзакции установить эксклюзивную блокировку на ресурс, а в "дочерней" - разделяемую. в случае фонового допроведения это может быть сама ссылка на документ.
|
|||
27
Dunstan
22.06.17
✎
16:45
|
Эх как Вас всех далеко унесло.
1. Фоновых заданий нет 2. Пользователь один с полными правами Кратко алгоритм: Документ расхода при галке "Собирать недостающие комплекты" их формирует и списывает, а так отказывается от проведения. Проведение по новой методике: все списывает, а потом если запрос по отрицательным остаткам. Если ок, то проводит, если нет то отказ = истина и возврат, Вот когда отказ = истина и возврат,то при выходе из обработки проведения 1с зависает. Зависает только на сервере, в файловом варианте все ок! Все делается в обработке проведения. Больше ничего нет! |
|||
28
pessok
22.06.17
✎
16:49
|
(27) после "все списывает" транзакция завершается?
да и, почему бы сначала не сделать запрос, прибавив к остатков то количество, которое надо списать? |
|||
29
H A D G E H O G s
22.06.17
✎
16:52
|
Посмотреть, не full ли режим стоит у базы и когда последний раз делался бэкап с этом случае.
Короче, смотреть размер лог файла. |
|||
30
Dunstan
22.06.17
✎
16:53
|
(28) А разве обработка проведения она не есть одна транзакция?
ну новая методика проведения. Проводит как есть, потом саотрим отрицательные остатки. Если ушли в минус выходим с отказом. |
|||
31
Dunstan
22.06.17
✎
16:55
|
(29) фул режим это где смотреть?
|
|||
32
Cyberhawk
22.06.17
✎
17:03
|
(31) В свойствах базы в СУБД
|
|||
33
Cyberhawk
22.06.17
✎
17:04
|
"Вот когда отказ = истина и возврат,то при выходе из обработки проведения 1с зависает" // При откате транзакции, значит, зависает
|
|||
34
Dunstan
22.06.17
✎
17:09
|
(31) спс гляну
(32) ну да |
|||
35
Dunstan
22.06.17
✎
17:12
|
(32) спс за обобщение
а как с этим бороться то? |
|||
36
Cyberhawk
22.06.17
✎
17:15
|
(35) Надо знать, с чем бороться. Может, у тебя там подписка какая с кодом #Если Сервер Тогда,
а может дело исключительно в СУБД. Перенеси инфобазу в другую СУБД и проверь. |
|||
37
Cyberhawk
22.06.17
✎
17:16
|
+(36) В другую СУБД на другом хосте
|
|||
38
Dunstan
22.06.17
✎
17:24
|
(37) Спс Попробую
|
|||
39
Dunstan
23.06.17
✎
13:27
|
В продолжении темы поставил себе локально PostgreSQL и на нем не зависает.
|
|||
40
Cyberhawk
23.06.17
✎
13:37
|
(39) Тогда попробуй обслужить рабочую базу (шринкани лог хотя бы)
|
|||
41
Dunstan
23.06.17
✎
13:48
|
а кроме шринка что еще можно посмотреть?
|
|||
42
Cyberhawk
23.06.17
✎
13:50
|
||||
43
Cyberhawk
23.06.17
✎
13:50
|
||||
44
Cyberhawk
23.06.17
✎
13:53
|
||||
45
Dunstan
24.06.17
✎
17:25
|
Thanks a big, Cyberhawk!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |