Hi guys,
Continua CI is screwing with me. We regularly encounter build errors due to missing folders and files in the workspace of our build agent. It’s always the same C# project that is missing. As I encountered the problem yesterday I reset the repository and the first build for a specific branch worked perfectly. After the next merge commit to the same branch our repository trigger for this branch triggered and started the next build of the branch. This time the project’s folder was missing again and the build failed.
I installed TortoiseHg on the Continua CI server to take a look at the internal HG repository. According to the log of the HG repository the project’s directory was deleted according to a specific commit in our Git repository. The thing is that not even a single line of code of the project was modified in this commit. The commit was a pull request merge in our GitHub Enterprise repository. These changes were made:
$ git show 2fe49907fc4769edfb8e30d004bf97bca31e8d0f --statcommit 2fe49907fc4769edfb8e30d004bf97bca31e8d0fMerge: 205957d 2ad17cdAuthor: Kay ZumbuschDate: Tue Jun 14 10:36:46 2016 +0200 Merge pull request #172 from mailstore/feature/jira-ms-45-unified-stores-manual-creation MS-45 : unified stores manual creation …/AdminTools/PageStorageLocations.Designer.cs | 63 ++++++++++±------ src/Client/AdminTools/PageStorageLocations.cs | 20 ++++± …/CreateAttachFileGroupBaseControl.cs | 13 +±- …/CreateAttachFileGroupDialog.cs | 26 +++++±- …/FirebirdPropertiesControl.cs | 21 ++±– …/PostgreSQLPropertiesControl.cs | 10 ±- …/SelectAdvancedFileGroupTypeControl.Designer.cs | 43 +±--------- …/SelectAdvancedFileGroupTypeControl.cs | 13 +±- …/SelectAdvancedFileGroupTypeControl.resx | 6 ± …/SelectFileGroupTypeControl.Designer.cs | 35 ++++++±– …/SelectFileGroupTypeControl.cs | 33 ++++++±– …/SelectFileGroupTypeControl.resx | 6 ± …/SqlServerPropertiesControl.cs | 10 ±- src/Client/CreateAttachFilegroup/UI.de.resx | 11 +±- src/Client/CreateAttachFilegroup/UI.resx | 11 +±- src/Common.Tests/Common.Tests.csproj | 1 + src/Common.Tests/Types/KnownFileGroupTypesTest.cs | 77 ++++++++++++++++++++++ src/Common.Tests/Utils/PathUtilsTests.cs | 36 ++++++++++ src/Common/Types/FileGroupInfo.cs | 9 +++ src/Common/Types/FileGroupProperties.cs | 49 ++++++++±---- src/Common/Types/KnownFileGroupTypes.cs | 63 ++++++++++++++++++ src/Common/Types/KnownFileGroupTypesSR.cs | 23 ++++±- src/Common/Types/KnownFileGroupTypesSR.de.resx | 3 + src/Common/Types/KnownFileGroupTypesSR.resx | 3 + src/Common/Types/KnownFileGroupTypesSR.strings | 2 + src/Common/Utils/PathUtils.cs | 36 +++++++±- src/FileGroups.Firebird/FileGroups.Firebird.csproj | 1 + …/FirebirdClassicFileGroupBuilder.cs | 8 ±- src/FileGroups.Firebird/FirebirdFileGroup.cs | 37 ++++±----- …/FirebirdFileGroupBuilder.cs | 8 ±- …/FirebirdInternalFileGroupBuilder.cs | 58 ++++++++++++++++ src/FileGroups.Firebird/SR.cs | 12 +±- src/FileGroups.Firebird/SR.de.resx | 5 ± src/FileGroups.Firebird/SR.resx | 5 ± src/FileGroups.Firebird/SR.strings | 4 ± src/FileGroups.Firebird/ThisAssembly.cs | 1 + src/FileGroups.Tests/FilegroupTest.cs | 9 +++ src/TestCore/FileGroupPreparer.cs | 12 ++± 38 files changed, 569 insertions(+), 214 deletions(-)And this is the corresponding changeset in ContinuaCI internal HG repository:
Commit message: Automated commit by Continua CI from ‘MailStoreGit’ repository for revision ‘2fe49907fc4769edfb8e30d004bf97bca31e8d0f’. Comment: Merge pull request #172 from mailstore/feature/jira-ms-45-unified-stores-manual-creationC:\ContinuaCI\Rc\da38c763>hg status --change 54b5a104bbabM src\Client\AdminTools\PageStorageLocations.Designer.csM src\Client\AdminTools\PageStorageLocations.csM src\Client\CreateAttachFilegroup\CreateAttachFileGroupBaseControl.csM src\Client\CreateAttachFilegroup\CreateAttachFileGroupDialog.csM src\Client\CreateAttachFilegroup\FirebirdPropertiesControl.csM src\Client\CreateAttachFilegroup\PostgreSQLPropertiesControl.csM src\Client\CreateAttachFilegroup\SelectAdvancedFileGroupTypeControl.Designer.csM src\Client\CreateAttachFilegroup\SelectAdvancedFileGroupTypeControl.csM src\Client\CreateAttachFilegroup\SelectAdvancedFileGroupTypeControl.resxM src\Client\CreateAttachFilegroup\SelectFileGroupTypeControl.Designer.csM src\Client\CreateAttachFilegroup\SelectFileGroupTypeControl.csM src\Client\CreateAttachFilegroup\SelectFileGroupTypeControl.resxM src\Client\CreateAttachFilegroup\SqlServerPropertiesControl.csM src\Client\CreateAttachFilegroup\UI.de.resxM src\Client\CreateAttachFilegroup\UI.resxM src\Common.Tests\Common.Tests.csprojM src\Common.Tests\Utils\PathUtilsTests.csM src\Common\Types\FileGroupInfo.csM src\Common\Types\FileGroupProperties.csM src\Common\Types\KnownFileGroupTypes.csM src\Common\Types\KnownFileGroupTypesSR.csM src\Common\Types\KnownFileGroupTypesSR.de.resxM src\Common\Types\KnownFileGroupTypesSR.resxM src\Common\Types\KnownFileGroupTypesSR.stringsM src\Common\Utils\PathUtils.csM src\FileGroups.Firebird\FileGroups.Firebird.csprojM src\FileGroups.Firebird\FirebirdClassicFileGroupBuilder.csM src\FileGroups.Firebird\FirebirdFileGroup.csM src\FileGroups.Firebird\FirebirdFileGroupBuilder.csM src\FileGroups.Firebird\SR.csM src\FileGroups.Firebird\SR.de.resxM src\FileGroups.Firebird\SR.resxM src\FileGroups.Firebird\SR.stringsM src\FileGroups.Firebird\ThisAssembly.csM src\FileGroups.Tests\FilegroupTest.csM src\TestCore\FileGroupPreparer.csA src\Common.Tests\Types\KnownFileGroupTypesTest.csA src\FileGroups.Firebird\FirebirdInternalFileGroupBuilder.csR src\FileGroups.PostgreSQL\FileGroups.PostgreSQL.csprojR src\FileGroups.PostgreSQL\PostgreSQLContentReadStream.csR src\FileGroups.PostgreSQL\PostgreSQLContentSystem.csR src\FileGroups.PostgreSQL\PostgreSQLDatabase.csR src\FileGroups.PostgreSQL\PostgreSQLFileGroup.csR src\FileGroups.PostgreSQL\PostgreSQLFileGroupBuilder.csR src\FileGroups.PostgreSQL\PostgreSQLTransactionHandle.csR src\FileGroups.PostgreSQL\SQL\PostgreSQLMailStoreFileGroup.sqlR src\FileGroups.PostgreSQL\SQL\PostgreSQLMailStoreFn_StringListToBigIntTable.sqlR src\FileGroups.PostgreSQL\SQL\PostgreSQLMailStoreIndexTable.sqlR src\FileGroups.PostgreSQL\SQL\PostgreSQLStoredFunction_AddTermToMail.sqlR src\FileGroups.PostgreSQL\SR.csR src\FileGroups.PostgreSQL\SR.de.resxR src\FileGroups.PostgreSQL\SR.resxR src\FileGroups.PostgreSQL\SR.stringsR src\FileGroups.PostgreSQL\SearchIndex\PostgreSQLPhraseSearch.csR src\FileGroups.PostgreSQL\SearchIndex\PostgreSQLPostings.csR src\FileGroups.PostgreSQL\SearchIndex\PostgreSQLSearchCriteriasSearch.csR src\FileGroups.PostgreSQL\SearchIndex\PostgreSQLSearchCriteriasSqlGenerator.csR src\FileGroups.PostgreSQL\SearchIndex\PostgreSQLSearchIndex.csR src\FileGroups.PostgreSQL\SearchIndex\PostgreSQLSearchIndexManager.csR src\FileGroups.PostgreSQL\SearchIndex\PostgreSQLTermSearch.csR src\FileGroups.PostgreSQL\ThisAssembly.csR vendor\Rebex\Zip\Shared\Adler32.csR vendor\Rebex\Zip\Shared\AsynchronousOperation.csR vendor\Rebex\Zip\Shared\BatchTransfer.csR vendor\Rebex\Zip\Shared\BatchTransferInternals.csR vendor\Rebex\Zip\Shared\Common.csR vendor\Rebex\Zip\Shared\Crc32.csR vendor\Rebex\Zip\Shared\DeflateCompressor.csR vendor\Rebex\Zip\Shared\DeflateDecompressor.csR vendor\Rebex\Zip\Shared\DeflateMisc.csR vendor\Rebex\Zip\Shared\EnumHelper.csR vendor\Rebex\Zip\Shared\EnumeratorHelper.csR vendor\Rebex\Zip\Shared\FileUtil.csR vendor\Rebex\Zip\Shared\HuffmanTree.csR vendor\Rebex\Zip\Shared\LZ77HashTable.csR vendor\Rebex\Zip\Shared\LZ77Window.csR vendor\Rebex\Zip\Shared\Messages.csR vendor\Rebex\Zip\Shared\RebexAsyncResult.csAs you can see the HG commit removes a lot of files that were not touched in the git commit.
Our environment:
Windows Server 2012 R2 with all updates applied
ContinuaCI 1.8.0.151
Git 2.6.1.windows.1
At the moment we could work around the problem by resetting the repository after every merge but that takes about 45 minutes each time and is not a viable solution.
If you need additional debug information I can try to extract the necessary data from the debug log files which are permanently activated on our ContinuaCI server.
Kind regards
Kay Zumbusch