Имя: Пароль:
1C
1С v8
Стал зависать динамический список после попытки индексации
0 slafor
 
26.08.23
00:08
Есть конфигурация на базе 1С:БГУ, сильно доработанная (свои документы, справочники, регистры).

В ней есть Документ1, у него - форма списка, там используется динамический список с произвольным запросом. При попытке отбора по некоторым реквизитам ссылочного типа он сильно зависал. Решили попробовать проиндексировать по одному из таких полей и сравнить быстродействие. Есть Реквизит1, который ссылается на Документ2, установили у него свойство "Индексировать с доп. упорядочиванием". Начали обновлять конфигурацию базы данных, пошла "реструктуризация" этого документа, длилась она минут 20, после чего выскочило сообщение об ошибке:

"В процессе обновления информационной базы произошла критическая ошибка
по причине:
Ошибка СУБД:
53100: ERROR:  could not write to file "base/pgsql_tmp/pgsql_tmp97442.18.sharedfileset/3.1": No space left on device
CONTEXT:  parallel worker".

Завершили работу конфигуратора, база осталась "висеть" в консоли кластера, удалили сеанс.

Потом запустили конфигуратор, на наименовании конфигурации - восклицательный знак (!), т.е. конфигурация базы данных не обновлена. Ладно, вернулись к конфигурации БД. Теперь мы открываем список Документ1, и он стал зависать значительно больше, чем до попытки индексации! Такое ощущение, что хоть конфигураци БД и не была обновлена, но часть индексов он создал, и пытается ими пользоваться. Или как еще это объяснить?

Что это может быть, и как можно хотя бы восстановить ту скорость выполнения запроса динамического списка, которая была раньше?

Общее количество документов Документ1 - 7 269 009, Документ2 - 2 638 427 . Количество реквизитов и данных очень большое. Точный объем базы сказать затрудняюсь, потому что она на SQL, и на данный момент обратиться к консоли SQL-сервера возможности нет.
1 slafor
 
26.08.23
00:12
+(0) Да, забыл добавить: к счастью, это копия рабочей базы. Она тоже на SQL. Можно, конечно, восстановить её из бекапа, но это как крайний вариант - потому что восстановление занимает порядка 5-ти часов.
2 sqr4
 
26.08.23
00:42
3 H A D G E H O G s
 
26.08.23
04:39
Ну так добавьте места на диске с временными файлами postgree, отключите инднкс, а потом включите снова.
4 АНДР
 
26.08.23
07:44
В ТиИ есть галочка Реиндексация таблиц информационной базы.
5 slafor
 
28.08.23
16:01
(3) А какой объём должен быть на диске с временными файлами, в процентном отношении к общему объёму БД?
6 АНДР
 
28.08.23
16:35
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс