Resolve using mine causes erroneous warning and deletion of documents

0
We recently migrated our project to git versioning (Mendix version 9.24.1 – we can’t upgrade to 10 right now). In any merge conflicts where I attempt to ‘Resolve conflict using my whole document’ the below pop-up displays. It seems to think we’ve moved the document in question to/from a module but that is not the case. So it deletes the original and creates a duplicate, excluded document named: [original name]_RECOVERED. So we have to take additional steps when resolving conflicts ‘using my whole document’: Select ‘Restore as excluded duplicate’ from the pop-up (otherwise it won’t merge) Revert the deletion of the original document that Mendix deleted In doing this there is a Mendix error pop-up (see end of question) Delete the _RESTORED version Doing this series of steps seems to work but it doesn’t feel great since it’s very manual and seems very close to losing work. Does anyone else experience this even when they haven’t moved a document between modules? Is this a bug or do I just not understand git?   The mendix error (doesn’t seem to be the cause just another symptom): System.InvalidOperationException: Collection was modified; enumeration operation may not execute.    at System.Collections.Generic.List`1.Enumerator.MoveNextRare()    at Mendix.Modeler.Projects.FolderBase.GetDocuments(Boolean recursive, Boolean includeExcluded)+MoveNext() in Mendix.Modeler.Core\Projects\Modules\FolderBase.cs:line 38    at Mendix.Modeler.Projects.FolderBase.GetDocuments(Boolean recursive, Boolean includeExcluded)+MoveNext() in Mendix.Modeler.Core\Projects\Modules\FolderBase.cs:line 39    at System.Linq.Enumerable.WhereEnumerableIterator`1.MoveNext()    at System.Linq.Enumerable.CastIterator[TResult](IEnumerable source)+MoveNext()    at System.Linq.Enumerable.WhereEnumerableIterator`1.MoveNext()    at System.Collections.Generic.LargeArrayBuilder`1.AddRange(IEnumerable`1 items)    at System.Collections.Generic.EnumerableHelpers.ToArray[T](IEnumerable`1 source)    at Mendix.Modeler.Common.Identifier`1.VerifySingle[T](IEnumerable`1 _namedObjects) in Mendix.Modeler.Core\Common\Usages\IdentifierOfT.cs:line 49    at Mendix.Modeler.Common.IdentifierWithParent`3.ResolveUntypedUncached(IHasContext context) in Mendix.Modeler.Core\Common\Usages\IdentifierWithParent.cs:line 85    at Mendix.Modeler.Common.Identifier`1.ResolveUncached(IHasContext context) in Mendix.Modeler.Core\Common\Usages\IdentifierOfT.cs:line 29    at Mendix.Modeler.Common.ResolveCache.DoResolve[T](IIdentifier`1 targetId, IHasContext context) in Mendix.Modeler.Core\Common\Problems\ResolveCache.cs:line 131    at Mendix.Modeler.Common.ResolveCache.Resolve[T](IIdentifier`1 targetId, IHasContext context) in Mendix.Modeler.Core\Common\Problems\ResolveCache.cs:line 106    at Mendix.Modeler.Projects.Project.Resolve[T](IIdentifier`1 identifier) in Mendix.Modeler.Core\Projects\Project.cs:line 199    at Mendix.Modeler.Common.IdentifierUtil.Resolve[T](IIdentifier`1 identifier, IHasContext context) in Mendix.Modeler.Core\Common\Usages\IdentifierUtil.cs:line 17    at Mendix.Modeler.Microflows.MicroflowCall.get_Callee() in Mendix.Modeler.Microflows\Common\MicroflowCall.cs:line 17    at Mendix.Modeler.Microflows.Actions.MicroflowCallAction.get_Variable() in Mendix.Modeler.Microflows\Actions\Calls\MicroflowCallActions\MicroflowCallAction.cs:line 23    at Mendix.Modeler.Microflows.VariableSourceUtil.GetVariableDefinition(Object obj) in Mendix.Modeler.Microflows\Common\VariableSourceUtil.cs:line 16    at Mendix.Modeler.Microflows.VariableSourceUtil.GetVariableDefinition(Object obj) in Mendix.Modeler.Microflows\Common\VariableSourceUtil.cs:line 16    at Mendix.Modeler.Microflows.ScopeAlgorithm.CalculateScopeVariables(IMicroflowObject obj, Dictionary`2 infos, IEnumerable`1 incomingScope) in Mendix.Modeler.Microflows\ScopeAlgorithm.cs:line 154    at Mendix.Modeler.Microflows.ScopeAlgorithm.CalculateScopeVariables(IMicroflowObject obj, Dictionary`2 infos, IEnumerable`1 incomingScope) in Mendix.Modeler.Microflows\ScopeAlgorithm.cs:line 166    at Mendix.Modeler.Microflows.ScopeAlgorithm.CalculateScopeVariables(IMicroflowObject obj, Dictionary`2 infos, IEnumerable`1 incomingScope) in Mendix.Modeler.Microflows\ScopeAlgorithm.cs:line 166    at Mendix.Modeler.Microflows.ScopeAlgorithm.CalculateScopeVariables(IMicroflowObject obj, Dictionary`2 infos, IEnumerable`1 incomingScope) in Mendix.Modeler.Microflows\ScopeAlgorithm.cs:line 166    at Mendix.Modeler.Microflows.ScopeAlgorithm.CalculateScopeVariables(IMicroflowObjectCollection collection, Dictionary`2 infos, List`1 currentScope) in Mendix.Modeler.Microflows\ScopeAlgorithm.cs:line 125    at Mendix.Modeler.Microflows.ScopeAlgorithm.CalculateScopeVariables() in Mendix.Modeler.Microflows\ScopeAlgorithm.cs:line 49    at Mendix.Modeler.Projects.Postprocessing.Postprocessor.<>c.<ApplyPostprocessRecursively>b__10_0(IPostprocess obj) in Mendix.Modeler.Core\Projects\Postprocessing\Postprocessor.cs:line 83    at Mendix.Modeler.Storage.TypeWalks.TypeWalk.CollectObjects(IStorageObject root, Func`2 shouldVisitChildren, Boolean skipExcludedObjects)+MoveNext() in Mendix.Modeler.Storage\TypeWalks\TypeWalk.cs:line 63    at System.Linq.Enumerable.CastIterator[TResult](IEnumerable source)+MoveNext()    at Mendix.Modeler.Storage.StorageUtil.ForEachStorageObjectDo[T](IStorageObject root, Func`2 work, Boolean skipExcludedObjects) in Mendix.Modeler.Storage\StorageUtil.cs:line 140    at Mendix.Modeler.Common.ResolveCache.TrackResolves(Action code) in Mendix.Modeler.Core\Common\Problems\ResolveCache.cs:line 100    at Mendix.Modeler.Projects.Postprocessing.Postprocessor.PostprocessDocument(IDocument document) in Mendix.Modeler.Core\Projects\Postprocessing\Postprocessor.cs:line 75    at Mendix.Modeler.Projects.Changes.ChangedDocumentsProcessor`1.<>c__DisplayClass6_0.<ProcessChangedDocuments>g__DoProcess|2(IDocument document) in Mendix.Modeler.Core\Projects\Changes\ChangedDocumentsProcessor.cs:line 90    at Mendix.Common.Util.EnumerableUtil.ForEach[T](IEnumerable`1 source, Action`1 action) in Mendix.Common\Util\EnumerableUtil.cs:line 51    at Mendix.Modeler.Projects.Changes.ChangedDocumentsProcessor`1.ProcessChangedDocuments(IProject project, ProjectChanges projectChanges, Func`2 processDocument) in Mendix.Modeler.Core\Projects\Changes\ChangedDocumentsProcessor.cs:line 84    at Mendix.Modeler.Projects.Postprocessing.Postprocessor.<>c__DisplayClass5_0.<PostprocessWithChanges>b__1() in Mendix.Modeler.Core\Projects\Postprocessing\Postprocessor.cs:line 39    at Mendix.Modeler.Common.ResolveCache.WithCache[T](IProject project, Func`1 action) in Mendix.Modeler.Core\Common\Problems\ResolveCache.cs:line 62    at Mendix.Modeler.Projects.Postprocessing.Postprocessor.<>c__DisplayClass5_0.<PostprocessWithChanges>b__0() in Mendix.Modeler.Core\Projects\Postprocessing\Postprocessor.cs:line 38    at Mendix.Modeler.ProtectedModules.ProtectedModulesUnlocker.ExecuteInContext[T](Boolean unlockImplementation, Func`1 code) in Mendix.Modeler.Core\ProtectedModules\ProtectedModulesUnlocker.cs:line 48    at Mendix.Modeler.Projects.Postprocessing.Postprocessor.PostprocessWithChanges(IProject project, ProjectChanges changes) in Mendix.Modeler.Core\Projects\Postprocessing\Postprocessor.cs:line 37    at Mendix.Modeler.Projects.Postprocessing.Postprocessor.PostprocessProject(IProject project) in Mendix.Modeler.Core\Projects\Postprocessing\Postprocessor.cs:line 32    at Mendix.Modeler.Core.ProjectManager.Postprocess() in Mendix.Modeler.Core\Core\ProjectManager.cs:line 120    at Mendix.Modeler.Core.ProjectManager.DoRaiseStructureChanged() in Mendix.Modeler.Core\Core\ProjectManager.cs:line 112    at Mendix.Modeler.Core.ProjectManager.<ProjectOnStructureChanged>b__39_0() in Mendix.Modeler.Core\Core\ProjectManager.cs:line 89    at Mendix.Modeler.Controls.GuiThreadExecutor.<>c__DisplayClass5_0.<WrapActionWithRethrowHack>b__0() in Mendix.Modeler.Controls\GuiThreadExecutor.cs:line 43 --- End of stack trace from previous location ---    at Mendix.Modeler.Controls.GuiThreadExecutor.Rethrow(Exception ex) in Mendix.Modeler.Controls\GuiThreadExecutor.cs:line 74    at Mendix.Modeler.Controls.GuiThreadExecutor.<>c__DisplayClass5_0.<WrapActionWithRethrowHack>b__0() in Mendix.Modeler.Controls\GuiThreadExecutor.cs:line 43    at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)    at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
asked
0 answers