Программа стала очень долго сканировать исходную папку
Михаил, добрый день.
Помогите пожалуйста подкорректировать вашу удобную программу.
В последнее время замечаю, что она периодически стала очень долго сканировать исходную папку. Я решил, что количество файлов в моей сетевой папке уже очень большое, а т.к. я каждые январские выходные чищу и пересоздаю с нуля копию сетевой папки, то на этот раз решил провести глобальную чистку.
На данный момент в папке 300К файлов и 850 Гб. Помимо неё есть конечно и другие ресурсы, которые настроены перекрестным копированием.
Файл настроек *.tid уже 140 Мб !, ого. Решил, что может пора его очистить, а кнопка "сжать" не на много его облегчила, то просто переименовал.
При запуске программа создала новый файл настроек, но запросила лицензию. И увы, почему то не принимает мою учётку. Пришлось вернуть старый файл настроек.
Отсюда у меня конечно же от любопытства возникает вопрос, а что же у вас там в файл настроек записывается?
Очистил я конечную папку, программа долго висела на "анализе данных" и вместо того, чтобы сделать копию с "нуля", просто добавила измененные файлы. Такого я не ожидал, время до конца праздников уже поджимает. Подскажите пожалуйста как мне подправить настройки.
С уважением, Дмитрий.
Здравствуйте, Дмитрий
Время сканирования не должно было увеличиться с выходом новой версии, т.к. в этой части алгоритма мы ничего не меняли.
Вы пишите, что "она периодически стала очень долго сканировать исходную папку", т.е. не каждое сканирование является долгим? Может от текущей нагрузки на сеть и ПК зависит?
На данный момент в папке 300К файлов и 850 Гб.
Желательно в одно задание не пихать все подряд папки. Если одна из папок уже и так большая, другие папки желательно резервировать в другом задании.
Помимо неё есть конечно и другие ресурсы, которые настроены перекрестным копированием.
Что такое "перекрестное копирование" ?
Файл настроек *.tid уже 140 Мб !, ого. Решил, что может пора его очистить
ExilandBackup.tid - это база данных, в которой хранятся все настройки программы, лицензионная информация, журналы выполнения задания, списки файлов каждой резервной копии и т.п.
а кнопка "сжать" не на много его облегчила
Значит сжала то, что смогла, больше нет пустот в базе.
140 МБ - размер tid-файла не слишком большой. Конечно, чем он меньше, тем лучше. Если размер файла БД более 1 ГБ, то это уже много. Чтобы уменьшить размер файла БД, нужно уменьшить максимальное кол-во резервных копий в заданиях, уменьшить кол-во журналов (есть настройка в Общих настройках задания). После уменьшения этих значений и очередного запуска заданий, программа удалит старые резервные копии и журналы из базы. Можно удалить вручную. После этого можно войти в Общие настройки программы и нажать кнолпку "Сжать" файл настроек. Размер должен уменьшиться.
просто переименовал.
Файл ExilandBackup.tid нельзя трогать (перемещать, переименовывать, удалять). Иначе программа при следующем запуске его не найдет и создаст новый пустой.
При запуске программа создала новый файл настроек, но запросила лицензию.
Всё верно. Нужно просто файл вернуть на место.
И увы, почему то не принимает мою учётку.
В файле настроек нет учёток. Не принимает лицензионную информацию? Возможно Вы перепутали поля, надо внимательно вводить лицензионную информацию. Но в вашем случае - не надо заново создавать новый файл настроек, а просто вернуть файл ExilandBackup.tid на место.
Очистил я конечную папку, программа долго висела на "анализе данных" и вместо того, чтобы сделать копию с "нуля", просто добавила измененные файлы.
Если конечная папка пустая, то программа после анализа изменений в журнале должна была написать, что найдены только новые файлы, а измененных и удаленных - нет . Возможно, все таки не до конца очистили конечную папку, возможно в ней остались скрытые файлы. Для надежности надо было конечную папку полностью грохнуть.
Добрый день, Михаил.
Вы пишите, что "она периодически стала очень долго сканировать исходную папку", т.е. не каждое сканирование является долгим? Может от текущей нагрузки на сеть и ПК зависит?
Возможно и от нагрузки на сеть, но она может и сутки "висеть" на анализе изменений. Обычно прерываю процесс, и на следующий день он отрабатывает нормально. Как снова повторится я готов скинуть логи, может это поможет выяснить причину.
Желательно в одно задание не пихать все подряд папки. Если одна из папок уже и так большая, другие папки желательно резервировать в другом задании.
Задания разбиты по классификации ресурсов (сетевая папка, 1С и т.п.). Самую большую папку - файловое хранилище, логичнее оставить в одной задаче.
Что такое "перекрестное копирование" ?
У меня пару офисов территориально находятся в разных местах. И т.к. ресурсы есть в каждом фоисе, то они копируются как локально, так и закидываются в другой офис по ночам. Получается информация 1-го офиса перекидывается 2-му и наоборот. Всё отлажено, ночного времени хватает.
ExilandBackup.tid - это база данных, в которой хранятся все настройки программы, лицензионная информация, журналы выполнения задания, списки файлов каждой резервной копии и т.п.
Воооот, это я и хотел узнать. Получается в БД записывается информация по каждому файлу. Предполагаю, что тут и кроются ошибки в моём случае, т.к. кол-во файлов у меня перевалило за 1М. На этих выходных плотно занялся хранилищем и путём архивирования уменьшил объём до 350К файлов.
140 МБ - размер tid-файла не слишком большой. Конечно, чем он меньше, тем лучше. Если размер файла БД более 1 ГБ, то это уже много. Чтобы уменьшить размер файла БД, нужно уменьшить максимальное кол-во резервных копий в заданиях, уменьшить кол-во журналов (есть настройка в Общих настройках задания). После уменьшения этих значений и очередного запуска заданий, программа удалит старые резервные копии и журналы из базы. Можно удалить вручную. После этого можно войти в Общие настройки программы и нажать кнолпку "Сжать" файл настроек. Размер должен уменьшиться.
У меня 12 заданий настроено на синхронизацию, без удаления. Кол-во журналов стоит по умолчанию - 40. Выставил 20 и БД сократилось со 110 до 55. Будем посмотреть как повлияет на работу.
Файл ExilandBackup.tid нельзя трогать (перемещать, переименовывать, удалять). Иначе программа при следующем запуске его не найдет и создаст новый пустой.
Да, на это я и рассчитывал. Как я писал в письме моя задача была пересоздать ВСЕ резервные копии с нуля. Это помогает очистить задублированные в течении года файлы и намеренно удаленную информацию пользователями.
В файле настроек нет учёток. Не принимает лицензионную информацию? Возможно Вы перепутали поля, надо внимательно вводить лицензионную информацию. Но в вашем случае - не надо заново создавать новый файл настроек, а просто вернуть файл ExilandBackup.tid на место.
Данные учётки копи-пастил с письма. Файл я вернул на место, но вместо полной копии скопировались только измененные файлы. После удаления журналов надеюсь пересоздаст полную.
Если конечная папка пустая, то программа после анализа изменений в журнале должна была написать, что найдены только новые файлы, а измененных и удаленных - нет . Возможно, все таки не до конца очистили конечную папку, возможно в ней остались скрытые файлы. Для надежности надо было конечную папку полностью грохнуть.
Уверяю, удалил всё полностью. Одна из копий ушла в годовой архив, все остальные очищены.
Увы, копию "с нуля" так и не сделал. Скопировал 49К файлов из 335К.
Фото прикладываю, так висит почти сутки. Прошу обратить внимание на кол-во потоков.
Подозреваю самое простое это очистить БД, но может я смогу предоставить логи и найдётся ошибка, по которой так происходит.
Здравствуйте,
Пришлите нам журнал службы для анализа.
Вчерашние логи забиты на 140 Мб одной и той же циклической ошибкой:
[14.01.2026 10:21:17.087] File deleted
[14.01.2026 10:21:17.087] FileExists=0. CopyFileAgain ...
[14.01.2026 10:21:17.430] Warning: thread[1], NumTryCopy=1, file1: "****************", ErrorCurFile: "SourceStream create error. Cannot open file "*******************************". Процесс не может получить доступ к файлу, так как этот файл занят другим процессом"
[14.01.2026 10:21:17.430] FileExists(\\?\***********************************)=1. Trying to delete
Простите, подтёр название.
Хорошо, я этот файл уберу.
Ну а за 14 число я работу программы ещё не прерывал.
Дмитрий,
Вчерашние логи забиты разными файлами или одним и тем же?
И почему этот файл не может открыться для чтения (SourceStream create error. Cannot open file)? Каким процессом он занят?
Наша программа делает 2 попытки копирования каждого файла и затем пропускает его и выводит в журнал.
Наша программа делает 2 попытки копирования каждого файла и затем пропускает его и выводит в журнал.
Тогда скорее всего я неправильно читаю логи программы. Прикладываю полный лог за 14 число. В самом начале у меня надолго отключилось электичество, затем я снова запустил задание вручную.
Акцентирую ваше внимание, что резервное копирование происходит не полное. Завтра буду пробовать снова создать чистую БП.
Здравствуйте, Дмитрий
Спасибо за журнал. В нем мы увидели цикличность выдачи следующего блока:
[13.01.2026 18:19:00.080] Warning: thread[1], NumTryCopy=1, file1: "\\192.168.0.232\shared\БСП\ПДД\2024\24-001_Улан-Удэ\РД\КЖ_ГСМ\Модель\Испр 27.12\24-001-КЖ_Р_ГСМ.rvt", Размер: 153 МБ, file2: "D:\BU\2\shared\БСП\ПДД\2024\24-001_Улан-Удэ\РД\КЖ_ГСМ\Модель\Испр 27.12\24-001-КЖ_Р_ГСМ.rvt", ErrorCurFile: "SourceStream create error. Cannot open file "\\?\UNC\192.168.0.232\shared\БСП\ПДД\2024\24-001_Улан-Удэ\РД\КЖ_ГСМ\Модель\Испр 27.12\24-001-КЖ_Р_ГСМ.rvt". Процесс не может получить доступ к файлу, так как этот файл занят другим процессом"
[13.01.2026 18:19:00.080] FileExists(\\?\D:\BU\2\shared\БСП\ПДД\2024\24-001_Улан-Удэ\РД\КЖ_ГСМ\Модель\Испр 27.12\24-001-КЖ_Р_ГСМ.rvt)=1. Trying to delete ...
[13.01.2026 18:19:00.080] File deleted
[13.01.2026 18:19:00.080] FileExists=0. CopyFileAgain ...
Стало понятно, что алгоритм в программе работает неверно. Исправили эту проблему.
Запустите программу и обновите ее через меню "Справка - Проверка обновлений".
После обновления протестируйте ее на том же задании "Shared_2"
