1C, PostgreSql, Ubuntu производительность, проблемы итд.
Ubuntu Server 18.04 amd64
1C сервер 8.3.13.1644 (x32)
PostgreSQL 10.5-11.1C amd64 от 1С
Всё установил, настроил Postgre как рекомендует 1С.(с дефолтными настройками, кстати, таже ошибка выскакивала)
Перенес файлы БД на другой диск.
Загрузил копию рабочей базы ЗиКГУ 3.1
При тестировании столкнулся с проблемой - при формировании расчетного листка за 2 месяца или более долго думает и в итоге выдаёт- На сервере недостаточно памяти для выполнения задания.
За месяц тот же отчет формирует без проблем.
Пробовал формировать прочие отчеты за разные периоды - проблем не возникло.
Куда копать?
Физически на сервере 64Гб ОЗУ.
1C сервер 8.3.13.1644 (x32)
PostgreSQL 10.5-11.1C amd64 от 1С
Всё установил, настроил Postgre как рекомендует 1С.(с дефолтными настройками, кстати, таже ошибка выскакивала)
Перенес файлы БД на другой диск.
Загрузил копию рабочей базы ЗиКГУ 3.1
При тестировании столкнулся с проблемой - при формировании расчетного листка за 2 месяца или более долго думает и в итоге выдаёт- На сервере недостаточно памяти для выполнения задания.
За месяц тот же отчет формирует без проблем.
Пробовал формировать прочие отчеты за разные периоды - проблем не возникло.
Куда копать?
Физически на сервере 64Гб ОЗУ.
Найденные решения
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(11)
Под виндой ни разу больше 2х рабочих процессов не запускалось. на 30 человек.
А тут тестовый сервер. один пользователь и один, далеко не самый сложный, отчет.
Неужели всё так плохо до никсами? будем исходить из того, 3.5 гига для этой задачи достаточно.
По настройкам, Сервер приложений 1с всё по дефолту.
Могу завтра выложить postgresql.conf, но как писал выше, с дефолтными настроками постгри тоже самое было.
Какие ещё настройки интересны?
больше 3.5 Гб не сможет взять, отсюда и надо плясать
И хорошо бы настройки кластера приложить, а то курсы провидцев сегодня закрыты
И хорошо бы настройки кластера приложить, а то курсы провидцев сегодня закрыты
Под виндой ни разу больше 2х рабочих процессов не запускалось. на 30 человек.
А тут тестовый сервер. один пользователь и один, далеко не самый сложный, отчет.
Неужели всё так плохо до никсами? будем исходить из того, 3.5 гига для этой задачи достаточно.
По настройкам, Сервер приложений 1с всё по дефолту.
Могу завтра выложить postgresql.conf, но как писал выше, с дефолтными настроками постгри тоже самое было.
Какие ещё настройки интересны?
(13)
Отключение ограничений по ни Максимальному объему памяти рабочих процессов ни по Безопасному расходу памяти за один вызов ничего не дало.
Памяти потребляет, что с "0", что с "-1" совершенно одинаково.
Пик потребления примерно 2 гига на процесс и 2.5гига всего системной памяти. (см скрин), затем резко высвобождается, примерно 1 гиг ОЗУ и вылазит ошибка(второй скрин).
Еще несколько отчетов эту ошибку вызывают. Расчётно платежная ведомость, даже в пределах одного месяца не формируется.
Отключение ограничений по ни Максимальному объему памяти рабочих процессов ни по Безопасному расходу памяти за один вызов ничего не дало.
Памяти потребляет, что с "0", что с "-1" совершенно одинаково.
Пик потребления примерно 2 гига на процесс и 2.5гига всего системной памяти. (см скрин), затем резко высвобождается, примерно 1 гиг ОЗУ и вылазит ошибка(второй скрин).
Еще несколько отчетов эту ошибку вызывают. Расчётно платежная ведомость, даже в пределах одного месяца не формируется.
Прикрепленные файлы:
В этих делах не мастер конечно, но пару вариантов могу предложить:
1) Поставьте последнюю платформу 8.3.12. В 8.3.13 и далее, пока не совсем стабильны и ни для одной конфигурации не требуется.
2) Поставьте х64, у х32 есть ограничение по памяти.
1) Поставьте последнюю платформу 8.3.12. В 8.3.13 и далее, пока не совсем стабильны и ни для одной конфигурации не требуется.
2) Поставьте х64, у х32 есть ограничение по памяти.
(2) Платформа последняя была на момент установки . гляну завтра мож что новее есть.
Не так прочитал. да, как вариант попробую даунгреднуть платформу.
2. Лицензии на платформу 64 нет. Апгрейд не предполагается.
Данная база без проблем крутиться на 32 битном сервере Win2008R2+1C32+MSSQL2008x64. и 30 человек активных пользователей.
Железо там старое. быстродействия не хватает, но нехватки памяти ни разу не было замечено.
Тут, скорее или с настройками что не так или какой-то запрос криво с постгри работает.
Не так прочитал. да, как вариант попробую даунгреднуть платформу.
2. Лицензии на платформу 64 нет. Апгрейд не предполагается.
Данная база без проблем крутиться на 32 битном сервере Win2008R2+1C32+MSSQL2008x64. и 30 человек активных пользователей.
Железо там старое. быстродействия не хватает, но нехватки памяти ни разу не было замечено.
Тут, скорее или с настройками что не так или какой-то запрос криво с постгри работает.
Если не хотите быть подопытными кроликами, то не стоит ставить платформу больше рекомендуемой по 3 цифре. Так как после предварительных тестов их пускаю в маштабный тест, тестируя на всех пользователях, кто любит ставить по рекомендациям 1С.
P.S. Думаю этот прием многим знаком, когда кажется что в тесте все ок, а в релизе оказывается, что, что то не учли.
P.S. Думаю этот прием многим знаком, когда кажется что в тесте все ок, а в релизе оказывается, что, что то не учли.
Что за ошибка постоянно в лог лезет?
Этот параметр, как рекомендует 1С установил:
lc_messages = 'C'
Пробовал менять на en_US.UTF-8
Тогда постгри совсем не стартует.
В логах системы:
Пробовал менять на ru_RU.UTF-8, тогда ругается, как в первом случае, только по-русски.
2019-02-11 16:11:34 +07 [13137]: [1-1] ERROR: invalid value for parameter "lc_messages": "en_US.UTF-8"
2019-02-11 16:11:34 +07 [13137]: [2-1] STATEMENT: SET lc_messages to 'en_US.UTF-8';
2019-02-11 16:11:34 +07 [13137]: [3-1] WARNING: there is no transaction in progress
Этот параметр, как рекомендует 1С установил:
lc_messages = 'C'
Пробовал менять на en_US.UTF-8
Тогда постгри совсем не стартует.
В логах системы:
фев 11 16:05:18 servak postgresql@10-main[11185]: Error: /usr/lib/postgresql/10/bin/pg_ctl /usr/lib/postgresql/10/bin/pg_ctl start -D /mnt/datasas/database -l /var/log/postgresql/postgresql-10-main.log -s -o -c config_file="/etc/postgresql/10/main/postgresql.conf" exited with status 1:
фев 11 16:05:18 servak postgresql@10-main[11185]: 2019-02-11 16:05:17 +07 [11191]: [1-1] LOG: invalid value for parameter "lc_messages": "en_US.UTF-8"
фев 11 16:05:18 servak postgresql@10-main[11185]: 2019-02-11 16:05:17 +07 [11191]: [2-1] FATAL: configuration file "/etc/postgresql/10/main/postgresql.conf" contains errors
фев 11 16:05:18 servak postgresql@10-main[11185]: pg_ctl: could not start server
Пробовал менять на ru_RU.UTF-8, тогда ругается, как в первом случае, только по-русски.
Еще столкнулся с ошибкой в БГУ 1.0
Ошибка выскакивает в настройках обмена с зарлпатой.
В Логах СУБД :
Ошибка выскакивает в настройках обмена с зарлпатой.
Невосстановимая ошибка
Ошибка при выполнении запроса POST к ресурсу /e1cib/dlist:
по причине:
Ошибка СУБД:
ERROR: index key does not match expected index column
Ошибка при выполнении запроса POST к ресурсу /e1cib/dlist:
по причине:
Ошибка СУБД:
ERROR: index key does not match expected index column
В Логах СУБД :
2019-02-11 16:35:13 +07 [20838]: [4-1] ERROR: index key does not match expected index column
2019-02-11 16:35:13 +07 [20838]: [5-1] STATEMENT: SEL ECT
T1._Period,
T1._Fld18688RRef,
T1._Fld18687RRef,
T1._Fld18689RRef,
T6._Fld18699RRef,
T1._Fld19358RRef,
T1._Fld18690RRef,
T1._Fld18691RRef,
T1._Fld18692RRef,
CASE WHEN (T1._Period = T2.Period_) THEN TRUE ELSE FALSE END
FR OM _InfoRg18657 T1
LEFT OUTER JOIN (SEL ECT
T5._Fld18688RRef AS Fld18688RRef,
T5._Fld18689RRef AS Fld18689RRef,
T5._Fld19358RRef AS Fld19358RRef,
T5._Period AS Period_,
T5._Fld18687RRef AS Fld18687RRef
FR OM (SELECT
T4._Fld18687RRef AS Fld18687RRef,
T4._Fld18688RRef AS Fld18688RRef,
T4._Fld18689RRef AS Fld18689RRef,
T4._Fld19358RRef AS Fld19358RRef,
MAX(T4._Period) AS MAXPERIOD_
FR OM _InfoRg18657 T4
GROUP BY T4._Fld18687RRef,
T4._Fld18688RRef,
T4._Fld18689RRef,
T4._Fld19358RRef) T3
INNER JOIN _InfoRg18657 T5
ON T3.Fld18687RRef = T5._Fld18687RRef AND T3.Fld18688RRef = T5._Fld18688RRef AND T3.Fld18689RRef = T5._Fld18689RRef AND T3.Fld19358RRef = T5._Fld19358RRef AND T3.MAXPERIOD_ = T5._Period) T2
ON ((((T1._Fld18688RRef = T2.Fld18688RRef) AND (T1._Fld18687RRef = T2.Fld18687RRef)) AND (T1._Fld18689RRef = T2.Fld18689RRef)) AND (T1._Fld19358RRef = T2.Fld19358RRef))
LEFT OUTER JOIN _InfoRg18697 T6
ON (T1._Fld18689RRef = T6._Fld18698RRef)
WH ERE (T1._Fld18688RRef = '\\261\\334x\\227\\016J\\200\\207N\\230\\267\\225\\343\\177\ \373\\327'::bytea) AND (T1._Period = T2.Period_) AND (T1._Fld18687RRef = '\\235\\230\\000%\\220\\017X7\\021\\347\\311\\022\\347\\006\ \303\\367'::bytea) AND (((((((((((((((((T1._Period = '2017-12-01 00:00:00'::timestamp) AND (T1._Fld18687RRef = '\\235\\230\\000%\\220\\017X7\\021\\347\\276\\326>Z\\235.'::bytea)) AND (T1._Fld18688RRef = '\\261\\334x\\227\\016J\\200\\207N\\230\\267\\225\\343\\177\ \373\\327'::bytea)) AND (T1._Fld18689RRef = '\\205\\020I \\205\\316\\203\\251Gr\\343I\\374L#~'::bytea)) AND (T1._Fld19358RRef = '\\231\\365\\000\\036XH9}\\021\\340q\\243B~E^'::bytea)) OR (((((T1._Period = '2017-12-01 00:00:00'::timestamp) AND (T1._Fld18687RRef = '\\235\\230\\000%\\220\\017X7\\021\\347\\276\\326>Z\\235.'::bytea)) AND (T1._Fld18688RRef = '\\261\\334x\\227\\016J\\200\\207N\\230\\267\\225\\343\\177\ \373\\327'::bytea)) AND (T1._Fld18689RRef = '\\206\\206a\\366\\011\\240\\237\\374A\\302\\010\\363\\227\\ 3461\\363'::bytea)) AND (T1._Fld19358RRef = '\\231\\365\\000\\036XH9}\\021\\340q\\243B~E^'::bytea))) OR (((((T1._Period = '2017-12-01 00:00:00'::timestamp) AND (T1._Fld18687RRef = '\\235\\230\\000%\\220\\017X7\\021\\347\\276\\326>Z\\235.'::bytea)) AND (T1._Fld18688RRef = '\\261\\334x\\227\\016J\\200\\207N\\230\\267\\225\\343\\177\ \373\\327'::bytea)) AND (T1._Fld18689RRef = '\\207\\026\\215#sjQMD9\\204\\237\\006\\226\\263\\202'::bytea)) AND (T1._Fld19358RRef = '\\231\\365\\000\\036XH9}\\021\\340q\\243B~E^'::bytea))) OR (((((T1._Period = '2017-12-01 00:00:00'::timestamp) AND (T1._Fld18687RRef = '\\235\\230\\000%\\220\\017X7\\021\\347\\276\\326>Z\\235.'::bytea)) AND (T1._Fld18688RRef = '\\261\\334x\\227\\016J\\200\\207N\\230\\267\\225\\343\\177\ \373\\327'::bytea)) AND (T1._Fld18689RRef = '\\210\\201\\264(\\253\\362\\3663GAh\\001dg\\346;'::bytea)) AND (T1._Fld19358RRef = '\\231\\365\\000\\036XH9}\\021\\340q\\243B~E^'::bytea))) OR (((((T1._Period = '2017-12-01 00:00:00'::timestamp) AND (T1._Fld18687RRef = '\\235\\230\\000%\\220\\017X7\\021\\347\\276\\326>Z\\235.'::bytea)) AND (T1._Fld18688RRef = '\\261\\334x\\227\\016J\\200\\207N\\230\\267\\225\\343\\177\ \373\\327'::bytea)) AND (T1._Fld18689RRef = '\\241\\215}\\3673\\270\\326\\216M\\254\\222O\\312\\246\\215\\032'::bytea)) AND (T1._Fld19358RRef = '\\231\\365\\000\\036XH9}\\021\\340q\\243B~E^'::bytea))) OR (((((T1._Period = '2017-12-01 00:00:00'::timestamp) AND (T1._Fld18687RRef = '\\235\\230\\000%\\220\\017X7\\021\\347\\276\\326>Z\\235.'::bytea)) AND (T1._Fld18688RRef = '\\261\\334x\\227\\016J\\200\\207N\\230\\267\\225\\343\\177\ \373\\327'::bytea)) AND (T1._Fld18689RRef = '\\244\\010Q\\323}\\261\\327\\201@\\215\\001\\016q\\377\\242\\026'::bytea)) AND (T1._Fld19358RRef = '\\231\\365\\000\\036XH9}\\021\\340q\\243B~E^'::bytea))) OR (((((T1._Period = '2017-12-01 00:00:00'::timestamp) AND (T1._Fld18687RRef = '\\235\\230\\000%\\220\\017X7\\021\\347\\276\\326>Z\\235.'::bytea)) AND (T1._Fld18688RRef = '\\261\\334x\\227\\016J\\200\\207N\\230\\267\\225\\343\\177\ \373\\327'::bytea)) AND (T1._Fld18689RRef = '\\244\\270\\332\\262\\231#\\326\\277G\\225\\005\\205}!p\\306'::bytea)) AND (T1._Fld19358RRef = '\\231\\365\\000\\036XH9}\\021\\340q\\243B~E^'::bytea))) OR (((((T1._Period = '2017-12-01 00:00:00'::timestamp) AND (T1._Fld18687RRef = '\\235\\230\\000%\\220\\017X7\\021\\347\\276\\326>Z\\235.'::bytea)) AND (T1._Fld18688RRef = '\\261\\334x\\227\\016J\\200\\207N\\230\\267\\225\\343\\177\ \373\\327'::bytea)) AND (T1._Fld18689RRef = '\\251~\\0369I\\255Q8E\\354_\\272\\332~\\332\\363'::bytea)) AND (T1._Fld19358RRef = '\\231\\365\\000\\036XH9}\\021\\340q\\243B~E^'::bytea))) OR (((((T1._Period = '2017-12-01 00:00:00'::timestamp) AND (T1._Fld18687RRef = '\\235\\230\\000%\\220\\017X7\\021\\347\\276\\326>Z\\235.'::bytea)) AND (T1._Fld18688RRef = '\\261\\334x\\227\\016J\\200\\207N\\230\\267\\225\\343\\177\ \373\\327'::bytea)) AND (T1._Fld18689RRef = '\\255\\246\\224\\245\\250\\304{\\231E0\\217<\\2247\\\\\\301'::bytea)) AND (T1._Fld19358RRef = '\\231\\365\\000\\036XH9}\\021\\340q\\243B~E^'::bytea))) OR (((((T1._Period = '2017-12-01 00:00:00'::timestamp) AND (T1._Fld18687RRef = '\\235\\230\\000%\\220\\017X7\\021\\347\\276\\326>Z\\235.'::bytea)) AND (T1._Fld18688RRef = '\\261\\334x\\227\\016J\\200\\207N\\230\\267\\225\\343\\177\ \373\\327'::bytea)) AND (T1._Fld18689RRef = '\\2646\\203\\204\\022)MFO]|\\330\\357\\032\\320='::bytea)) AND (T1._Fld19358RRef = '\\231\\365\\000\\036XH9}\\021\\340q\\243B~E^'::bytea))) OR (((((T1._Period = '2017-12-01 00:00:00'::timestamp) AND (T1._Fld18687RRef = '\\235\\230\\000%\\220\\017X7\\021\\347\\276\\326>Z\\235.'::bytea)) AND (T1._Fld18688RRef = '\\261\\334x\\227\\016J\\200\\207N\\230\\267\\225\\343\\177\ \373\\327'::bytea)) AND (T1._Fld18689RRef = '\\270\\204\\215\\030\\215\\317\\323OC\\341\\2308\\024\\230E \\224'::bytea)) AND (T1._Fld19358RRef = '\\231\\365\\000\\036XH9}\\021\\340q\\243B~E^'::bytea))) OR (((((T1._Period = '2017-12-01 00:00:00'::timestamp) AND (T1._Fld18687RRef = '\\235\\230\\000%\\220\\017X7\\021\\347\\276\\326>Z\\235.'::bytea)) AND (T1._Fld18688RRef = '\\261\\334x\\227\\016J\\200\\207N\\230\\267\\225\\343\\177\ \373\\327'::bytea)) AND (T1._Fld18689RRef = '\\205\\002C\\227\\305''\\363\\202@\\371\\207\\220jr\\002?'::bytea)) AND (T1._Fld19358RRef = '\\231\\365\\000\\036XH9}\\021\\340q\\243B~E`'::bytea))) OR (((((T1._Period = '2017-12-01 00:00:00'::timestamp) AND (T1._Fld18687RRef = '\\235\\230\\000%\\220\\017X7\\021\\347\\276\\326>Z\\235.'::bytea)) AND (T1._Fld18688RRef = '\\261\\334x\\227\\016J\\200\\207N\\230\\267\\225\\343\\177\ \373\\327'::bytea)) AND (T1._Fld18689RRef = '\\226V\\322\\333*\\330\\266\\026J\\265\\302\\033]\\202\\310\\207'::bytea)) AND (T1._Fld19358RRef = '\\231\\365\\000\\036XH9}\\021\\340q\\243B~E`'::bytea)))
2019-02-11 16:35:13 +07 [20838]: [6-1] WARNING: there is no transaction in progress
Показать2019-02-11 16:35:13 +07 [20838]: [5-1] STATEMENT: SEL ECT
T1._Period,
T1._Fld18688RRef,
T1._Fld18687RRef,
T1._Fld18689RRef,
T6._Fld18699RRef,
T1._Fld19358RRef,
T1._Fld18690RRef,
T1._Fld18691RRef,
T1._Fld18692RRef,
CASE WHEN (T1._Period = T2.Period_) THEN TRUE ELSE FALSE END
FR OM _InfoRg18657 T1
LEFT OUTER JOIN (SEL ECT
T5._Fld18688RRef AS Fld18688RRef,
T5._Fld18689RRef AS Fld18689RRef,
T5._Fld19358RRef AS Fld19358RRef,
T5._Period AS Period_,
T5._Fld18687RRef AS Fld18687RRef
FR OM (SELECT
T4._Fld18687RRef AS Fld18687RRef,
T4._Fld18688RRef AS Fld18688RRef,
T4._Fld18689RRef AS Fld18689RRef,
T4._Fld19358RRef AS Fld19358RRef,
MAX(T4._Period) AS MAXPERIOD_
FR OM _InfoRg18657 T4
GROUP BY T4._Fld18687RRef,
T4._Fld18688RRef,
T4._Fld18689RRef,
T4._Fld19358RRef) T3
INNER JOIN _InfoRg18657 T5
ON T3.Fld18687RRef = T5._Fld18687RRef AND T3.Fld18688RRef = T5._Fld18688RRef AND T3.Fld18689RRef = T5._Fld18689RRef AND T3.Fld19358RRef = T5._Fld19358RRef AND T3.MAXPERIOD_ = T5._Period) T2
ON ((((T1._Fld18688RRef = T2.Fld18688RRef) AND (T1._Fld18687RRef = T2.Fld18687RRef)) AND (T1._Fld18689RRef = T2.Fld18689RRef)) AND (T1._Fld19358RRef = T2.Fld19358RRef))
LEFT OUTER JOIN _InfoRg18697 T6
ON (T1._Fld18689RRef = T6._Fld18698RRef)
WH ERE (T1._Fld18688RRef = '\\261\\334x\\227\\016J\\200\\207N\\230\\267\\225\\343\\177\
2019-02-11 16:35:13 +07 [20838]: [6-1] WARNING: there is no transaction in progress
По (25) Вопрос остаётся открытым.
На данный момент Установлена платформа 8.3.13.1809 и PostgreSQL 10.5-24.1C.
Пробовал вместо линуксового использовать 1С сервер под Виндовс, так же в связке с этой СУБД, результат тот же.
Если смысл попробовать другую сборку PostgreSQL, например от Postgres Professional?
На данный момент Установлена платформа 8.3.13.1809 и PostgreSQL 10.5-24.1C.
Пробовал вместо линуксового использовать 1С сервер под Виндовс, так же в связке с этой СУБД, результат тот же.
Если смысл попробовать другую сборку PostgreSQL, например от Postgres Professional?
(25)
Пришел сюда в поисках решения ошибки "Ошибка СУБД xx000 ERROR: index key does not match expected index column". Ответа в интернете по 1С не нашел.
У меня ошибка возникала при открытии формы "Кадровые отчеты" только у одного конкретного пользователя на любом ПК + пропала половина команд навигации и действий в разделах.
Windows Server 2019, платформа 8.3.22.2175 + postgres 10.11-5.1C. База ЗКГУ 3.1.27.23
Помогла обычная выгрузка/загрузка dt.
Пробовал безуспешно очистку настроек пользователя, тестирование в конфигураторе, бекап базы через постгри и восстановление в другую базу.
Пришел сюда в поисках решения ошибки "Ошибка СУБД xx000 ERROR: index key does not match expected index column". Ответа в интернете по 1С не нашел.
У меня ошибка возникала при открытии формы "Кадровые отчеты" только у одного конкретного пользователя на любом ПК + пропала половина команд навигации и действий в разделах.
Windows Server 2019, платформа 8.3.22.2175 + postgres 10.11-5.1C. База ЗКГУ 3.1.27.23
Помогла обычная выгрузка/загрузка dt.
Пробовал безуспешно очистку настроек пользователя, тестирование в конфигураторе, бекап базы через постгри и восстановление в другую базу.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот