Вход | Регистрация


Повредилась база после обновления

Повредилась база после обновления
Я
   anchar007
 
15.05.18 - 08:25
Нетиповая БП 3.0 на PostgreSQl. Добавил вчера вечером 1 реквизит в самописном документе, нажал "Обновить конфигурацию" и база висела 4 часа, делала обновление и реиндексацию. Но ночью сервер 1С автоматически перезагружается и видимо 1С не хватило времени закончить реиндексацию и обновление.
Утром зашел в конфигуратор, "синий цилиндр" активен. Откатился к конфигурации БД и зашел в 1С.
Всё работает, кроме того самописного документа, в котором делались изменения. Если зайти в форму списка этого документа, то 1С просто зависает.

Вопрос: что можно сделать? Можно ли делать reindex средствами postgres на рабочей базе при активных пользователях?
 
 
   _stay true_
 
1 - 15.05.18 - 09:24
Сталкивался с такой шляпой: на postgres тупо ни в какую не проводился один документ, причем с небольшим количеством строк в ТЧ(хоть 1, хоть 10 000) - результат один - наглухо зависает сеанс. При этом на MSSQL всё нормально работает.

А вот на рабочей базе при активных юзерах ух как не советую запускать регалменты СУБД...
   ASU_Diamond
 
2 - 15.05.18 - 09:26
(0) бэкап есть?
   _stay true_
 
3 - 15.05.18 - 09:27
(2) Спрашивал бы он, будь у него бэкап
   anchar007
 
4 - 15.05.18 - 09:29
Бэкап есть вчерашний, но за утро уже очень много изменений в базе сделали
   systemstopper
 
5 - 15.05.18 - 09:32
(4) а че у пиздгреса нет аналога dbcc checkdb чтобы понять в чем проблема?

ЗЫ чета я сомневаюсь что проблема только в переиндексации, этот пиздгрес такая подлая тварь что не поймешь что ему не нравится, лучше восстанавливайся из бэкапа, а то потом еще годами будешь баги ловить
   hhhh
 
6 - 15.05.18 - 09:35
(4) ну, это же элементарно, ватсон. Ставишь вчерашний бэкап, а потом аккуратненько обработочкой ВыгрузкаЗагрузка xml загружаешь в него всё, что с утра набили.
   systemstopper
 
7 - 15.05.18 - 09:37
(6) а если правили прошлые периоды утром, справочники меняли? совет из рубрики "вредные советы"
   mehfk
 
8 - 15.05.18 - 09:38
(7) Пропарсить ЖР.
   ASU_Diamond
 
9 - 15.05.18 - 09:41
столько ошибок новичка:
не дождался окончания обновления;
не отключил перегрузку сервера 1С;
после выявления аварийной ситуации разрешил пользователям работать...
   hhhh
 
10 - 15.05.18 - 09:43
(7) это всё решаемо. Даже просто объявить пользователям, что был сбой и чтобы они всё проверили - уже решит 95% вопросов.
 
 Рекламное место пустует
   anchar007
 
11 - 15.05.18 - 09:49
(6) документы в базе создаются 24/7 автоматически через веб-сервисы (тысячи за день). Есть большая вероятность, что какие-то документы можно упустить
   Serg_1960
 
12 - 15.05.18 - 09:51
(0) Поднимаешь базу из архива, сделанного до обновления; выгружаешь конфигурацию; делаешь копию рабочей базы средствами PostgreSQl (не выгрузка/загрузка в *.dt); загружаешь туда ранее выгруженную конфигурацию и вносишь нужное тебе изменение; обновляешь и проверяешь работоспособность копии базы. Если всё "Ок" - ты знаешь что делать дальше.
   hhhh
 
13 - 15.05.18 - 09:51
(11) такой вероятности нет. Просто сравниваете отчетами потом.  Делаете отчет в новой и старой базе, тупо сравниваете.
   Serg_1960
 
14 - 15.05.18 - 09:55
(не в тему) Чисто теоретически я могу написать обработку в 1С, которая просканирует и сравнит все объекты рабочей базы и базы устаревшего архива, выявляя все изменения... Но  это не наш путь :)
   Serg_1960
 
15 - 15.05.18 - 10:02
(опять же не в тему) Берём любую базу, где есть РАУЗ и расчет себестоимости, исправляем пару документов "задним числом" в
закрытом периоде, пересчитываем себестоимость... и после этого внимательно слушаем, что скажет четыре буквы "h" про то, как вернуть базу к исходному оригинальному состоянию  :)
   Serg_1960
 
16 - 15.05.18 - 10:08
(уже уходя) Не исключаю вероятность возникновения проблемы автора, как говорится, на ровном месте. Например, когда автор "Откатился к конфигурации БД и зашел в 1С."(0) - забыли почистить кэши конфигурации.
   ASU_Diamond
 
17 - 15.05.18 - 10:10
(11) При таком режиме работы и вносить изменения сразу в рабочую базу... И да как это соотносится с "база висела 4 часа, делала обновление и реиндексацию"
   anchar007
 
18 - 16.05.18 - 08:58
Проблема была в том, что не хватило место на жестком диске из-за того, что Postgres несколько дней назад начал создавать большое количество объёмных временных файлов в папку pgsql_tmp. Из-за этого 1С не смогла закончить реструктуризацию и не открывала самописный документ, таблицы которого изменились и нуждались в реструктуризации.

Решение: удалил временные файлы в папке pgsql_tmp, сделал копию выгрузкой dt, и запустил ТиИ с галочками реиндексация, реструктуризация. После этого база как новая. Работает быстро, все документы открываются без проблем.

P.S. у клиента стояла платформа 8.3.10.2561. По идее с версии 8.3.11.2867 такой проблемы в теории возникнуть не должно, т.к. там реализован новый алгоритм реструктуризации после обновления (https://wonderland.v8.1c.ru/blog/optimizatsiya-restrukturizatsii-bazy-dannykh/)
   ildary
 
19 - 16.05.18 - 09:21
(17) Ага, а еще для такой нагруженной системы применять бесплатную БД, без хороших знаний по ней - путь к (0).

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует