#0
by Fuas4
Господа, такая ситуация: есть УТ 10.3, в которой работает 10-15 пользователей. Когда файловая база уперлась в размер, перешли на PostgreSQL. На нем? при проведении заказа покупателя? стали периодически выскакивать дедлоки. Поставил ЦУП, посмотрел ошибки. Все ошибки в выполнении запросов в обработках. Посмотрел, ни одна из них не записывает документы, т.е. по идее ничего блокировать не должна. В связи с чем вопрос: поможет ли ускорение запросов в борьбе с дедлоками или надо смириться и перейти на MS SQL?
#4
by Fuas4
спасибо, передам ссылки. А по сабжу что скажете? Там есть запрос, который выполняется 2400 секунд, но выполняется фоном и по факту никому не мешает. Может он на дедлоки как-то вилять?
#9
by Фрэнки
по сабжу можно сказать, что с момента выхода УТ 10.3 много воды уже утекло. И платформа обновлялась и постгри обновлялся и типовая 10.3 тоже обновлялась - насколько там кривой запрос или насколько он криво обрабатывается на твоей субд сейчас?
#10
by Fuas4
платформа 8.3.7, конфа достаточно старая (jn 30/10/2014u) и сильно переписанная, ПГ самый свежий. Запросы достаточно кривые (судя по времени выполнениия), но они просто получают данные и потом их в одном случае сохраняют в эксель, Во втором отправляютна сайт, т.е. заказ покупателя, по которому лезут дедлоки не задевают совсем
#12
by Cyberhawk
В логах постгри посмотри, какая таблица во время дедлока блочится. Будет что-то типа LOCK _AccumReg456 IN APPLICATION EXCLUSIVE MODE
#14
by Fuas4
Посмотрел лог, блочится много чего, но в основном основная таблица заказов покупателя (Document134)
#15
by Фрэнки
ну раз пошла такая пьянка - режь последний огурец! Если не трудно, можешь показать текст запроса, который документ блочит? Просто интересно некоторые свои догадки проверить.
#19
by Fuas4
Не переходил ни разу на управляемые блокировки, если просто переключить режим, полагаю, будет хаос
#21
by Fuas4
читал по этому поовду мануалы. Я так понял, там надо все регистры заказа покупателя переводить в управляемый режим и потмо во всех остальных документах-регистраторах этих регистров тоже переходить на управляемый режим. Т.е. я всю конфу в итоге переведу на управляемые блокировки. Это тоже вариант, но пока ищу пути по проще
#23
by Fuas4
при проведении заказа покупателя я запросом не обращаюсь к таблице заказов, т.е. нет запроса, куда можно вписать "Для изменения". Если я правильно вас понял
#24
by Фрэнки
ну сам же пишешь в 0, что обработки посмотрел, а все они только чего-то читают, но не пишут. Вот я и думаю, что раз ты посмотрел, то там же видно по запросам должно быть, что попытки заблокирывать считываемые таблицы есть или их там просто нет. И тогда блочить будут вовсе не эти обработки, а зря на них думаешь
#25
by Фрэнки
может быть под словом "в обработках" у тебя подразумеваются предопределенные процедуры ОбработкаПроведения или еще чего-то подобное. Тем более, что речь о наличии в базе каких-то доработок тоже была
#26
by Fuas4
нет, обработки классические, из ветки "Обработки". Самый долгий запрос выглядит вот так:
#28
by Фрэнки
извиняюсь, какой-то бред. Обращения к виртуальным таблицам срезов последних и остатков мало того, что долго выполняется на этом сервере, но еще и блочит регистраторы. Так еще окажется, что Заказы покупателя просто такой документ, который используют чаще всего, а не потому, что он чем-то хуже остальных, которые используются просто реже.
#29
by Fuas4
так может не запросы блочат таблицы не запросы, а просто заказы часто проводят и они сами друг друга блочат? PG же блокирует всю таблицу
#35
by xafavute
То бишь ожидания на блокировках, а не сами блокировки. Вне транзакции ничего не блокируется
#38
by xafavute
вообще пока ниодного дедлока ты не предоставил здесь. делдлок - это 2 блокировки минимум
#39
by Фрэнки
в лог есть. видны там блокировки. Нужно только сопоставить с журналом другим и увидеть, что это один пользователь ожидает освобождения таблицы от другого процесса
#42
by Fuas4
Открыл щас типовую УТ 10.3, самую новую. там тоже 8.2.13. М.б. не стоит переходить на 8.2.14? Разрабы. поди,не зря остались на текущей совместимости
#44
by Фрэнки
ну допустим в обычном журнале лог работы пользователей тоже есть сообщения, что есть отказы в записях документов и успешные записи. С номерами сеансов и процессов. Может там явно будет видно, что это другие пользователи с таким же документами, а поскольку совместимость старая и упр.блокировок нет, то будет ошибка. И в тех настройках, о которых писал выше, там есть настройки на увеличение времени ожидания блокировок, чтоб не выдавало ошибки, а подвисало в ожидании
#47
by Fuas4
увеличил ожидание с 20 секунд до 40, не помогло. Инфу с ИТСа по настройкам скинул админу, читает пока. А я попутно ищу, что на стороне 1с могу сделать
#48
by Fuas4
я к тому, что не повалится ли что-нибудь после перехода? ИЛи разрабы тупо забыли поменять совместимостЬ?
#51
by dmrjan
Там есть параметр deadlock_timeout = 1s попробуй поменять на 2s Больше 2 секунд не не ставь.
#54
by dmrjan
Он не отключен, просто если параметр закомментирован, то по-умолчанию действует указанный параметр, т.е. 1s.
#55
by dmrjan
И еще - ставьте актуальную версию PostgreSQL отсюда: PostgreSQL 9.4.9 для 8.3.7 Если ставили под Windows, то по-умолчанию при установке предлагается оптимизировать конфиг автоматически. Ну а далее по-необходимости уже тюнить ручками.
#56
by dmrjan
По поводу фонового запроса. Для PostgreSQL является очень нехорошим запрос, который вместо того, чтобы один раз сделать запрос, в момент его выполнения рассчитать нужные параметры и только после после этого произвести запись, начинает постоянно обращаться к одной и той же таблице и методом перебора производить расчеты. И если MSSQL это издевательство более-менее переносит (хотя на производительности это также сказывается крайне негативно, т.к. у MSSQL возникают блокировки на чтение), то для PostgreSQL это недопустимо.
#57
by Fuas4
понял, поставил 2s. PostgreSQL как раз по этой ссылке и качали. учту и поищу такие моменты, спасибо!
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
В этой группе 1С
- Лицензии 1с и com соединение
- СКД. Суммирование группировок в разных колонках
- УФ Пересчет Итоги в подвале при стандартном Отборе в Табличной части документа..
- Перестал работать обмен с сайтом
- 1С8.3 Не видит лицензию HASP
- Залить поле Картинка цветом
- 1C 8.3 Как изменить предлагаемые реквизиты печати?
- как отозвать принятую накладную из ЕГАИС
- Открыть программно управляемую форму в обычном приложении. ЗУП 2.5.108.1
- ЕГАИС: Невозможно проверить функцию отзыва, т.к. сервер отзыва сертификатов...
- УТ11. Сборка (разборка) товаров
- Доступ к пользователям в 1С Документооборот 2.1
- Кнопка печать в 1с 8.3
- ЗУП - начисление уволенному сотруднику
- Отчет СКД Обычные Формы Параметры и Отбор на форму
- Ошибка "Конструктор не найден" в управляемой форме
- Получить таблицу значений из хранилища значений
- Рассылка SMS из 1С
- Классическая проблема. Тормозит база на Сервере 1С.
- "Серверные вызовы при завершении работы запрещены"