Search code examples
deploymentazureservicebus

waiishost crashing on deploy


I have set up an environment which should run my azure-project locally.

It begins with a simple batch-file:

E:
cd "E:\Procurement\Source\Procurement\trunk\Azure_Procurement\Azure_Procurement"
MSBuild.exe Azure_Procurement.ccproj /p:PackageForComputeEmulator=true /p:PackageWebRole=False
MSBuild.exe Azure_Procurement.ccproj /t:Publish
"C:\Program Files\Windows Azure Emulator\emulator\CSRun.exe" "E:\Procurement\Source\Procurement\trunk\Azure_Procurement\Azure_Procurement\csx\Release" "E:\Procurement\Source\Procurement\trunk\Azure_Procurement\Azure_Procurement\bin\Release\ServiceConfiguration.cscfg"

When i run this file, my project gets compiled and deployed to iis. However, after a few seconds the emulated hosts crashes and i managed to get my hands on the following info:

Problem signature:
  Problem Event Name:   CLR20r3
  Problem Signature 01: waiishost.exe
  Problem Signature 02: 1.6.0.0
  Problem Signature 03: 4eb3102e
  Problem Signature 04: System.ServiceModel
  Problem Signature 05: 4.0.0.0
  Problem Signature 06: 4d930801
  Problem Signature 07: 573e
  Problem Signature 08: 1bd
  Problem Signature 09: KFM023AO4DTNWT0EKMSKUWE5BRORH3FC
  OS Version:   6.1.7601.2.1.0.272.7
  Locale ID:    1053
  Additional Information 1: af3a
  Additional Information 2: af3a02be113369c664147fe8f0201429
  Additional Information 3: 9edf
  Additional Information 4: 9edf9a509c5231db61e45a805b3d35ff

Exception Message: Method failed with unexpected error code 3.

Stack Trace:
   at System.Security.AccessControl.NativeObjectSecurity.CreateInternal(ResourceType resourceType, Boolean isContainer, String name, SafeHandle handle, AccessControlSections includeSections, Boolean createByName, ExceptionFromErrorCode exceptionFromErrorCode, Object exceptionContext)
   at System.Security.AccessControl.DirectorySecurity..ctor(String name, AccessControlSections includeSections)
   at System.IO.DirectoryInfo.GetAccessControl(AccessControlSections includeSections)
   at Microsoft.WindowsAzure.ServiceRuntime.IISConfigurator.FileManager.AddAllowAceIterative(DirectoryInfo dir, FileSystemRights rights, IdentityReference[] accounts)
   at Microsoft.WindowsAzure.ServiceRuntime.IISConfigurator.FileManager.AddAllowAce(DirectoryInfo dir, FileSystemRights rights, Boolean inherit, IdentityReference[] accounts)
   at Microsoft.WindowsAzure.ServiceRuntime.IISConfigurator.Security.AddAppPoolSidAceToVdir(String appPoolName, String sitePath, String appPoolSid)
   at Microsoft.WindowsAzure.ServiceRuntime.IISConfigurator.IISConfigurator.Deploy(String roleId, WebAppModel appModel, String roleRootDirectory, String sitesDestinationDirectory, String diagnosticsRootFolder, String roleGuid, Dictionary`2 globalEnvironment)
   at SyncInvokeDeploy(Object , Object[] , Object[] )
   at System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs)
   at System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageRpc& rpc)
   at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage5(MessageRpc& rpc)
   at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage4(MessageRpc& rpc)
   at System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet)

The project runs when i debug it using visual studio and it even works when i run the same batch-script on another server.

Thanks in advance!


Solution

  • I found the solution!

    The error was caused by an attempt to activate WCF-Tracing through azure diagnostics. As seen in the stacktrace something went wrong in "System.ServiceModel" (which for anybody who didn´t know is a part of WCF) and it was caused by an error in my web.config. On top of all this i also forgot that my script pointed towards the builds compiled with the "Release" -buildconfiguration while i was actually compiling with the "Debug" configuration.