eg_1541 и удаляем их.
В связи с переходом на SSD с одной стороны, и с увеличением размеров КЭШа (для ERP например доходит до 6Гб) — вновь стало актуальным удаление устаревших папок кэша.
Алгоритмы:
а) ищем все папки кэша, сравниваем их имена (по-сути, ГУИДы) с файлом ibases.v8i — если в файле нет таких ГУИДов, то значит можно удалить эти папки. Если 1С запущена от имени админа — то можно просканировать папки всех пользователей Windows — полезно для терминальных серверов.
б) ищем папки в C:Program Files1cv8xsrvinfo
eg_1541 кэша, сравниваем их имена (по-сути, ГУИДы) с файлом C:Program Files1cv8xsrvinfo
eg_15411CV8Reg.lst. Не обнаруженные в файле можно или удалить (что не рекомендуется, т.к. для 8.2 там лежат журналы регистрации, а иногда возникает задача их просмотра), или переместить в zip. Есть возможность указать обработке на 1CV8Reg.lst в другой папке.
Обработка выводит список всех папок, если для папки есть запись в файле — будет написано чья это папка. Т.о. для имеющихся в файле баз позволяет понять, какая папка от какой базы, и в экстренных случаях для действующей базы вручную вычистить кэш или найти и удалить журнал регистрации (для отсутствующих в файле папок удаление доступно из обработки).
Работает и на WinXP и на Win7, и на 8.2 и на 8.3. За основу взята //infostart.ru/public/152207/
upd 21/09/2024: теперь и УФ
А если развернуты разные платформы 1С на одном сервере по разным портам? Можно добавить выбор порта?
Не обрабатывается случай если есть файл location.cfg
Конфигурационный файл location.cfg позволяет указать «1С:Предприятию», где выполнять поиск служебных данных.
Во время установки версии 8.3, выполняется поиск каталогов с данными (профили пользователей, конфигурационные файлы, файлы программных лицензий и т.д.) от версии 8.2 в каталогах, доступных данному пользователю. Если каталоги с данными от версии 8.2 найдены, то в каталогах с данными версии 8.3 формируется файл location.cfg с указанием на каталоги с данными версии 8.2. Таким образом, установка новой версии не ведет к необходимости полного переноса всех данных и настроек из каталогов версии 8.2 в каталоги версии 8.3.
(1) Famza,внизу формы выводится автосформированный путь — там есть и номер порта.
(2) ivanleb, пример такого файла?
добавил установку имени файла как 1CV8Clst.lst (для 8.3) вместо 1CV8Reg.lst (для 8.2)
Общие списки баз учитывает?
Внутри что-то екнуло, когда после нажатия на кнопку «Удалить КЭШ» очистилась вся таблица.
А нельзя ли чтобы в процессе очистки таблиц корректировалась построчно?
Не у всех ведь крепкое сердце и устойчивая психика!
(6) Zhilyakovdr, пока нет
(7) lvictor58, Там ведь 2 кнопки сканирования, и какую из них нажал пользователь — не запоминает. Добавил предупреждение «таблица очищена, повторите сканирование».
А для серверного кэша — изначально после очистки вызывается обработчик нажатия кнопки «сканировать».
(8) т.е. ваша обработка умеет только анализировать случаи когда клиент работает на одном физическом сервере с сервером предприятия?
(10) Zhilyakovdr, по сети сама не ищет. Но можно вручную указать путь к серверному файлу регистрации баз (*.lst) в сети — обработка анализирует папки кэша рядом с ним.
Маленький скриптик для поиска мусора (powershell):
Показать
(12) Очень полезный скриптик, спасибо
Обнаружил ошибку: для приведения кб в мб в функции РазмерПапки() возвращаемое значение делил на 1024. В т.к. функция используется в рекурсии — размер папок занижался. Необходимо убрать «/1024» в этой функции, и добавить в местах вызова функции.