Зависает база 1с #650965


#0 by iG4nG
Доброго времени суток всем! Возникла проблема. Есть 2 сервера. Первый сервер Win Server 2003 на нем стоит SQL 2008, и второй сервер Win Server 2003, на нем стоит 1с 8.2 УПП. Точных характеристик железа не помню, но они вполне хорошие и проц грузится при работе максимум на 30 процентов. При групповом проведении документов в 1с у всех начинает висеть база. В базе работают около 70 человек. Пробовал добавить ещё один 1с-ый сервак, не помогло (думал может кластер не справляется и хотел его немного разгрузить). Данных заносится очень много. Делал шринки в SQL не помогло. Из всей проведенной мною работы сделал выводы что именно SQL зависает при запуске групповых обработках. Если запустить обработку, то другой человек уже не может провести любой документ. Вылазит ошибка блокировки. Как оптимизировать работу SQL и сделать чтобы он работал быстрее? Как устранить все висяки? Заранее спасибо
#1 by Андрюха
При групповом проведении документов оно и должно втупливать, не?
#2 by iG4nG
на компе, где запустили да. а другие пользователи при этом не должны страдать
#3 by CrazyBear
та же беда, решали просто, перепроводили документы ночью
#4 by Андрюха
не факт
#5 by mehfk
Вот такую процедуру пользуй Процедура Sleep(Сек)
#6 by iG4nG
нет возможности делать это ночью. руководство хочет все видеть именно в рабочее время
#7 by i4i
Возможно, у тебя режим блокировок транзакций Автоматический стоит.
#8 by iG4nG
факт, другие базы почему-то не висят. но там и данных меньше забивается. там SQL справляется(20 пользователей). а именно в этой базе все висит
#9 by iG4nG
а где это можно посмотреть? и что даст если я его отключу?
#10 by iG4nG
вопрос для чего использовать данную процедуру?
#11 by i4i
Конфигуратор - Конфигурация - Свойства - Режим управления блокировкой данных. Если стоит Автоматитческий, значит при проведении уровень блокировки Таблица и документы висят на ожидании блокировки.
#12 by Андрюха
Видимо чтобы другие пользователи успевали что-то проводить
#13 by iG4nG
у меня там стоит "автоматический и управляемый". есть возможность выбора:"автоматический", "управляемый", "автоматический и управляемый". какой нужно выставить?
#14 by Повелитель
Возможно в групповой обработке используете. Если это убрать, то думаю не будет так людям мешать.
#15 by iG4nG
в этом и проблема, по сути работает только один человек из 70 на момент зависаний
#16 by i4i
Управляемый
#17 by Андрюха
По-моему вряд ли удастся подшаманить чтобы перепроводилось незаметно, во всяком случае я тож делаю с паузами, иначе один х не получается нормально, тупит-с.
#18 by iG4nG
мне вот тут только что подсказали что это уже делалось. в нашей конфигурации должно стоять "автоматический и управляемый", так что этот вариант отпадает, спасибо
#19 by iG4nG
используем... но без этого никак не обойтись...
#20 by iG4nG
я не прошу чтобы прям совсем незаметно. пусть хотя бы проводятся (на данный момент даже не проводится и выдается ошибка блокировки)
#21 by Повелитель
Ну вот с этим: НачатьТранзакцию ЗафиксироватьТранзакцию незаметно точно не получиться. Ну и плюс возможно паузы встроить. Будет как бы не в нонстоп режиме проводить, а как бы имитировать работу пользователя. Да будет дольше, но зато другим мешать не будет.
#22 by mehfk
Прямо Треугольник Хопкинса: НачатьТранзакцию - КомфортнаяРаботаПользователей - НетТормозам.
#23 by Андрюха
Ну делай паузы чё, только не такой жестью как пинг через скрипт, а культурно - Предупреждение("Пауза...", 3) или Вопрос с возможностью прервать обработку.
#24 by Повелитель
Паузы не спасут если в транзакции запущено.
#25 by Андрюха
Транзакции конечно надо убирать
#26 by Повелитель
Автор озвучь цель, а то мне вот непонятно для каких целей вы днем хотите документы препроводить? Если партии то это реализовано и гораздо быстрее чем пере проведение.
#27 by iG4nG
клиенту это тяжело объяснить, когда в др базах все работает нормально :)
#28 by iG4nG
при этом варианте висяки будут длиться дольше и другие пользователи так же не смогут проводить ничего
#29 by iG4nG
именно днем нужно, потому что руководство хочет видеть текущие отчеты именно сейчас, а не завтра с утра за вчерашний день
#30 by iG4nG
прерывать тоже не вариант, спасибо конечно за помощь, но тут нужно сделать как-то чтобы быстрее документы проводились или чтобы SQL работал быстрее
#31 by Повелитель
А какие интересно отчеты не работает именно без группового перепроведения? Разве не достаточно что на данный момент времени все документы проведены?
#32 by iG4nG
извиняюсь, если я написал где-то "перепроведение документов", но вроде этого нигде не писал. запускается не перепроведение документов, а проведение. документы были созданы с утра,в обед попросили провести, чтобы показать отчеты. сразу проводить документы нельзя без подтверждения людьми
#33 by Повелитель
а вон оно как, да интересная у вас схема.
#34 by ICWiner
У вас партионка или РАУЗ?
#35 by iG4nG
ну вот как то так
#36 by iG4nG
расшифруете отвечу :)
#37 by krbIso
это называется "ожидание на блокировках" и это не ошибка если оно не из за избыточных блокировок.
#38 by Повелитель
Ну мне все таки интересно тогда. Если к примеру выделить одного человека, который будет по одному документу открывать и проводить. То наверняка он не будет другим пользователям мешать. Так вот и сымитируйте программно работу этого одного пользователя. Думаю как раз с помощью пауз это можно реализовать.
#39 by ICWiner
У вас ведется учет по партиям или включена расширенная аналитика учета затрат? При использовании РАУЗ все проводится намного быстрее, чем при партионном учете. Только вот, возможно, придется переделывать отчеты, пересчитывать себестоимость и т.д.
#40 by ICWiner
+ к тоже верно. Обработку группового проведения подправте. Типа провелся документ - подождите 10 секунд, еще один провелся - еще 10 секунд. И никаких транзакций.
#41 by iG4nG
как раз этим занимается пару человек, когда потребует руководство, без требования руководства они ничего не проводят, так как документы не подтверждены руководством
#42 by iG4nG
учет по партиям...
#43 by Vitamax3
была даже обработка внешняя, где можно было выставлять время задержки, кажется называлась "Фоновое проведение документов"
#44 by Vitamax3
+
#45 by iG4nG
то есть при этом документы у меня будут проводиться дольше этой обработкой, но люди смогут работать?
#46 by Vitamax3
так точно
#47 by Serg_1960
Достаточно 2-3 секундной паузы, чтобы перепроведение документов стало "незаметным" для пользователей. (имхо) Перепроведение документов во время работы пользователей, иногда, обесценивает оба эти занятия. Например, перепроведение и расчет себестоимости - это, как бы, эээ... бесполезное времяпровождение :)
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С