HPC Diagnostics Fail with ArgumentException
-
Thursday, December 01, 2011 7:22 PM
I've got a small Windows HPC Server 2008 R2 cluster for testing with a new application with which I am having some issues. I'm running through the diagnostics to validate everything (particularly MPI) is working correctly, but I am receiving an error that I am not sure how to resolve. The Results tab for the MPI:PingPong and Network Ping diagnostics run contains the following:
Pre Step run failed due to : Unhandled Exception: System.ArgumentException: Item has already been added. Key in dictionary: 'f3d_home' Key being added: 'f3d_home' at System.Collections.Hashtable.Insert(Object key, Object nvalue, Boolean add) at System.Collections.Specialized.StringDictionary.Add(String key, String value) at System.CodeDom.Compiler.Executor.ExecWaitWithCaptureUnimpersonated(SafeUserTokenHandle userToken, String cmd, String currentDir, TempFileCollection tempFiles, String& outputName, String& errorName, String trueCmdLine) at System.CodeDom.Compiler.Executor.ExecWaitWithCapture(SafeUserTokenHandle userToken, String cmd, String currentDir, TempFileCollection tempFiles, String& outputName, String& errorName, String trueCmdLine) at Microsoft.CSharp.CSharpCodeGenerator.Compile(CompilerParameters options, String compilerDirectory, String compilerExe, String arguments, String& outputFile, Int32& nativeReturnValue, String trueArgs) at Microsoft.CSharp.CSharpCodeGenerator.FromFileBatch(CompilerParameters options, String[] fileNames) at Microsoft.CSharp.CSharpCodeGenerator.FromSourceBatch(CompilerParameters options, String[] sources) at Microsoft.CSharp.CSharpCodeGenerator.System.CodeDom.Compiler.ICodeCompiler.CompileAssemblyFromSourceBatch(CompilerParameters options, String[] sources) at System.CodeDom.Compiler.CodeDomProvider.CompileAssemblyFromSource(CompilerParameters options, String[] sources) at System.Xml.Serialization.Compiler.Compile(Assembly parent, String ns, XmlSerializerCompilerParameters xmlParameters, Evidence evidence) at System.Xml.Serialization.TempAssembly.GenerateAssembly(XmlMapping[] xmlMappings, Type[] types, String defaultNamespace, Evidence evidence, XmlSerializerCompilerParameters parameters, Assembly assembly, Hashtable assemblies) at System.Xml.Serialization.TempAssembly..ctor(XmlMapping[] xmlMappings, Type[] types, String defaultNamespace, String location, Evidence evidence) at System.Xml.Serialization.XmlSerializer.GenerateTempAssembly(XmlMapping xmlMapping, Type type, String defaultNamespace) at System.Xml.Serialization.XmlSerializer..ctor(Type type, String defaultNamespace) at Microsoft.Hpc.Diagnostics.Helpers.StepResult.XmlSerializeToStream(Stream stm) at Microsoft.Hpc.Diagnostics.Helpers.StepResult.XmlSerializeToFile(String path) at Microsoft.Hpc.Diagnostics.Host.TestCommand.Execute(IDiagnosticProgram owner, CommandList parentCmdList, List`1 args) at Microsoft.Hpc.Diagnostics.Shared.CommandList.Execute(IDiagnosticProgram owner, CommandList parentCmdList, List`1 args) at Microsoft.Hpc.Diagnostics.Shared.CommandList.Execute(IDiagnosticProgram owner, CommandList parentCmdList, List`1 args) at Microsoft.Hpc.Diagnostics.Host.Program.Run(String[] argsIn) at Microsoft.Hpc.Diagnostics.Host.Program.Main(String[] args)
I tried the Network Configuration Report as something simple to run, and I got the following in the Results tab:
Post Step run failed due to : System.Exception: An error occurred while generating the result XML file. ---> System.ArgumentException: Item has already been added. Key in dictionary: 'f3d_home' Key being added: 'f3d_home' at System.Collections.Hashtable.Insert(Object key, Object nvalue, Boolean add) at System.Collections.Specialized.StringDictionary.Add(String key, String value) at System.CodeDom.Compiler.Executor.ExecWaitWithCaptureUnimpersonated(SafeUserTokenHandle userToken, String cmd, String currentDir, TempFileCollection tempFiles, String& outputName, String& errorName, String trueCmdLine) at System.CodeDom.Compiler.Executor.ExecWaitWithCapture(SafeUserTokenHandle userToken, String cmd, String currentDir, TempFileCollection tempFiles, String& outputName, String& errorName, String trueCmdLine) at Microsoft.CSharp.CSharpCodeGenerator.Compile(CompilerParameters options, String compilerDirectory, String compilerExe, String arguments, String& outputFile, Int32& nativeReturnValue, String trueArgs) at Microsoft.CSharp.CSharpCodeGenerator.FromFileBatch(CompilerParameters options, String[] fileNames) at Microsoft.CSharp.CSharpCodeGenerator.FromSourceBatch(CompilerParameters options, String[] sources) at Microsoft.CSharp.CSharpCodeGenerator.System.CodeDom.Compiler.ICodeCompiler.CompileAssemblyFromSourceBatch(CompilerParameters options, String[] sources) at System.CodeDom.Compiler.CodeDomProvider.CompileAssemblyFromSource(CompilerParameters options, String[] sources) at System.Xml.Serialization.Compiler.Compile(Assembly parent, String ns, XmlSerializerCompilerParameters xmlParameters, Evidence evidence) at System.Xml.Serialization.TempAssembly.GenerateAssembly(XmlMapping[] xmlMappings, Type[] types, String defaultNamespace, Evidence evidence, XmlSerializerCompilerParameters parameters, Assembly assembly, Hashtable assemblies) at System.Xml.Serialization.TempAssembly..ctor(XmlMapping[] xmlMappings, Type[] types, String defaultNamespace, String location, Evidence evidence) at System.Xml.Serialization.XmlSerializer.GenerateTempAssembly(XmlMapping xmlMapping, Type type, String defaultNamespace) at System.Xml.Serialization.XmlSerializer..ctor(Type type, String defaultNamespace) at Microsoft.Hpc.Diagnostics.Helpers.TestResult.XmlSerializeToFile(String path) at Microsoft.Hpc.Diagnostics.Host.TestResultRender.RenderTestResult(TestResult testResult) --- End of inner exception stack trace --- at Microsoft.Hpc.Diagnostics.Host.TestResultRender.RenderTestResult(TestResult testResult) at Microsoft.Hpc.Diagnostics.Host.NetworkConfigurationReport.ExecutePostStep(IDiagnosticProgram owner, List`1 nodes, List`1 args) at Microsoft.Hpc.Diagnostics.Host.TestCommand.Execute(IDiagnosticProgram owner, CommandList parentCmdList, List`1 args)
The 'f3d_home' item is an environment variable associated with the vendor app I'm working with.
I was running SP0 initially but have since upgraded to SP3 to validate that the problem was not addressed in a hotfix somewhere. At this point, I'm stumped. Any thoughts or suggestions are appreciated.
Jamie
All Replies
-
Thursday, December 08, 2011 7:54 PM
Hi Jamie,
You'll want to check out this thread - http://social.msdn.microsoft.com/Forums/en-US/vstsprofiler/thread/7e0c9a0f-eefb-4319-afc3-c8ce575e6086/
It would appear that there are duplicate environment variables named “f3d_home” in the system.
Mark