1

Resolved

Activity log error while debugging

description

VS 2013, Jan 28 2014 devbuild

Error when hovering mouse over python code while debugging. Stack trace from the activity log:
System.InvalidOperationException: Collection was modified; enumeration operation may not execute.
 at System.Collections.Generic.HashSet`1.Enumerator.MoveNext()
 at System.Collections.Generic.HashSet`1.UnionWith(IEnumerable`1 other)
 at Microsoft.PythonTools.Analysis.AnalysisSetDetails.AnalysisSetManyObject.Union(IEnumerable`1 items, Boolean canMutate)
 at Microsoft.PythonTools.Analysis.Analyzer.InterpreterScope.GetMergedVariableTypes(String name)
 at Microsoft.PythonTools.Analysis.Analyzer.ExpressionEvaluator.LookupAnalysisSetByName(Node node, String name, Boolean addRef)
 at Microsoft.PythonTools.Analysis.Analyzer.ExpressionEvaluator.EvaluateName(ExpressionEvaluator ee, Node node)
 at Microsoft.PythonTools.Analysis.Analyzer.ExpressionEvaluator.EvaluateWorker(Node node)
 at Microsoft.PythonTools.Analysis.ModuleAnalysis.GetValuesByIndex(String exprText, Int32 index)
 at Microsoft.PythonTools.Intellisense.ExpressionAnalysis.get_Values()
 at Microsoft.PythonTools.Intellisense.QuickInfoSource.AugmentQuickInfoWorker(ExpressionAnalysis vars, IList`1 quickInfoContent, ITrackingSpan& applicableToSpan)
 at Microsoft.PythonTools.Intellisense.QuickInfoSource.AugmentQuickInfoSession(IQuickInfoSession session, IList`1 quickInfoContent, ITrackingSpan& applicableToSpan)
 at Microsoft.VisualStudio.Language.Intellisense.Implementation.QuickInfoSession.Recalculate()
 at Microsoft.VisualStudio.Language.Intellisense.Implementation.QuickInfoSession.Start()
 at Microsoft.VisualStudio.Language.Intellisense.Implementation.QuickInfoBroker.TriggerQuickInfo(ITextView textView, ITrackingPoint triggerPoint, Boolean trackMouse)
 at Microsoft.PythonTools.Intellisense.IntellisenseController.TextViewMouseHover(Object sender, MouseHoverEventArgs e)
 at Microsoft.VisualStudio.Text.Editor.Implementation.WpfTextView.RaiseHoverEvents()

comments

huguesv wrote Feb 4 at 5:15 PM

Mouse was over this part of the code, in servicemanagement's init.py (azure sdk)
        for element in data:
            name = element[0]
            val = element[1]
            if len(element) > 2:
                converter = element[2]
            else:
                converter = None