-
Notifications
You must be signed in to change notification settings - Fork 46
gitsync: В случае непредвиденного прерывания выгрузки версии конфигурации при следующем запуске начинает выгружать следующую версию #121
Comments
В МенеджерСинхронизации.os сейчас есть обработка исключения, которая запишет текущую версию, до инкрементации, в случае вылета исключения во время выгрузки. Но этого не произойдет если прервется поток самого МенеджерСинхронизации.os |
@dammanapov я не понял сценарий:
Поясни, что не так в |
Если выключится компьютер некому будет вернуть прежнюю версию синхронизации, обработка исключения не сработает. |
@dammanapov нельзя записывать инкремент после, ибо как раз это изменение и коммитится в git. Т.е. мы изменяем ДО как раз для того, чтобы это изменение попало в коммит. После коммита изменять нет смысла. |
Есть вариант проверять перед синхронизацией через |
Уменьшить вероятность данной ситуации можно перенеся инкрементацию в конец ф-ии, перед коммитом в гит. |
Может на каждом шаге копировать файл с текущей версией в "VersionInProgress" (в гитигноре) и удалять его после успешного коммита. Соответственно, любая команда на сигхронизацию при наличии "VersionInProgress" копирует его в VERSION и только потом стартует? (то есть по хорошему, "VersionInProgress" будет существовать только во время экспорта, и оставаться только при сбое) |
gitsync: В случае непредвиденного прерывания выгрузки версии конфигурации при следующем запуске начинает выгружать следующую версию.
Происходит из-за того что файл VERSION инкрементируется перед началом синхронизации, предлагаю инкрементацию перенести в конец скрипта, чтобы в случае какого-то падения началась синхронизация версии которую не удалось синхронизировать в прошлый раз.
The text was updated successfully, but these errors were encountered: