July CTP -- Dev Fabric never spins up web roles
I'm running the July CTP on 64-bit Server 2008. With either VS2008SP1 or VS2010 Beta 1, I get similar problems. When I create a new cloud project, I try to run without making any changes. Eventualym the fabric times out and dies.
I can create and run web projects -- they're set to run against the dev server, not IIS.
IIS 7 is installed, ASP.NET is isntalled and WCF HTTP activation is enabled.
What I've tried:
1. Uninstalling and reinstalling the tools and SDK.
2. Setting the web role to run in full trust.
3. Removing all unused references.
4. My user name does NOT have a space in it.
Some additional information:
1. Local Table storage isn't spinning up (port conflict, I guess). I've fixed this issue before on a July CTP machine (Vista 32-bit), and it didn't help.
2. Whenver I try to run, I get a security log failure against the role host (Caller Process Name: C:\Program Files\Windows Azure SDK\v1.0\bin\devfabric\RdRoleHost.exe)
I'm running as admin.
Any ideas how to fix this?
Answers
- Aha! Now we're getting somewhere. I got this error:
Server Error in '/' Application.
Configuration Error
Description: An error occurred during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately.
Parser Error Message: Could not load file or assembly 'Oracle.Web, Version=2.111.6.20, Culture=neutral, PublicKeyToken=89b483f429c47342' or one of its dependencies. The system cannot find the file specified.
Source Error:
Line 172: <healthMonitoring> Line 173: <providers> Line 174: <add name="OracleWebEventProvider" type="Oracle.Web.Management.OracleWebEventProvider, Oracle.Web, Version=2.111.6.20, Culture=neutral, PublicKeyToken=89b483f429c47342" connectionStringName="OraAspNetConString" buffer="true" bufferMode="OracleNotification" /> Line 175: </providers> Line 176: </healthMonitoring>
Source File: C:\Windows\Microsoft.NET\Framework64\v2.0.50727\Config\machine.config Line: 174
Assembly Load Trace: The following information can be helpful to determine why the assembly 'Oracle.Web, Version=2.111.6.20, Culture=neutral, PublicKeyToken=89b483f429c47342' could not be loaded.
WRN: Assembly binding logging is turned OFF. To enable assembly bind failure logging, set the registry value [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) to 1. Note: There is some performance penalty associated with assembly bind failure logging. To turn this feature off, remove the registry value [HKLM\Software\Microsoft\Fusion!EnableLog].
- Marked As Answer byJeff CertainMVPTuesday, September 08, 2009 3:49 AM
- Oh, I see. If your application relies on Oracle.Web.dll, please make sure to set Copy Local to true for that assembly. Also, if unfortunately that assembly relies on some external resources, such as an Oracle product that must be installed on the local machine, I'm afraid you won't be able to use it in the cloud, because you cannot install software on cloud machines.
Lante, shanaolanxing This posting is provided "AS IS" with no warranties, and confers no rights.- Marked As Answer byJeff CertainMVPTuesday, September 08, 2009 3:51 AM
- I removed that entire block from machine.config.... it seems to work just fine now.
Thank you so much for your help!!- Marked As Answer byJeff CertainMVPTuesday, September 08, 2009 3:49 AM
All Replies
- Hello, can you provide more information? What error did you get? Or do you mean Visual Studio just hangs there? What about Development Fabric? Do you see a deployment there?
Also, to isolate the problem, first please disable development storage. Open the properties page of your cloud service project. In the Development tab, set Start Development Storage Services to False. Then when you launch your service, development storage will not be started. This can tell you whether the problem is in development fabric or development storage.
And what do you mean by security log failure? Where did you see it? In Windows event viewer?
If nothing works, you can try to debug the RdRoleHost.exe using another instance of Visual Studio or WinDbg.
Lante, shanaolanxing This posting is provided "AS IS" with no warranties, and confers no rights. Visual Studio hangs for ~30 seconds. Then I get the following message:
"Role instances did not start within the time allowed. Please try again. If you continue to encounter this behavior please try shutting down the Development Fabric."
I do, however, see deployments on the fabric -- as many instances as I set in the config.
The most verbose log I got was:
Role Instance: deployment(17).RD_Compute.RD_Compute_WebRole.0
Role state Unknown
Role state Created
Role state Suspended
Role state Started
Usually, it just shows "Role state Started."
Restarting the Dev Fabric doesn't solve the problem. Neither does disabling the Development Storage.
As you guessed, the security log failure is in the Windows Event Viewer, under Security. Type = Audit Failure.- Also, I tried attached VS2010 to RdRoleHost... it managed to throw the same error without telling me anything.
I'm not at all an expert on atteching to running processes, however. - Then if you start the service without debug, and once the Development Fabric displays Role state Started, you try to navigate to http://127.0.0.1:81/, will it work?
This security audit failure is normal. I'm also seeing an aduit failure on my machine. But it still works fine.
Also, have you tried to deploy the application to IIS?
Lante, shanaolanxing This posting is provided "AS IS" with no warranties, and confers no rights. - About the debugging to an attached instance, were you able to get a stack trace when the exception was thrown?
Lante, shanaolanxing This posting is provided "AS IS" with no warranties, and confers no rights. - No exception thrown. It "failed gracefully".
- Aha! Now we're getting somewhere. I got this error:
Server Error in '/' Application.
Configuration Error
Description: An error occurred during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately.
Parser Error Message: Could not load file or assembly 'Oracle.Web, Version=2.111.6.20, Culture=neutral, PublicKeyToken=89b483f429c47342' or one of its dependencies. The system cannot find the file specified.
Source Error:
Line 172: <healthMonitoring> Line 173: <providers> Line 174: <add name="OracleWebEventProvider" type="Oracle.Web.Management.OracleWebEventProvider, Oracle.Web, Version=2.111.6.20, Culture=neutral, PublicKeyToken=89b483f429c47342" connectionStringName="OraAspNetConString" buffer="true" bufferMode="OracleNotification" /> Line 175: </providers> Line 176: </healthMonitoring>
Source File: C:\Windows\Microsoft.NET\Framework64\v2.0.50727\Config\machine.config Line: 174
Assembly Load Trace: The following information can be helpful to determine why the assembly 'Oracle.Web, Version=2.111.6.20, Culture=neutral, PublicKeyToken=89b483f429c47342' could not be loaded.
WRN: Assembly binding logging is turned OFF. To enable assembly bind failure logging, set the registry value [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) to 1. Note: There is some performance penalty associated with assembly bind failure logging. To turn this feature off, remove the registry value [HKLM\Software\Microsoft\Fusion!EnableLog].
- Marked As Answer byJeff CertainMVPTuesday, September 08, 2009 3:49 AM
- Oh, I see. If your application relies on Oracle.Web.dll, please make sure to set Copy Local to true for that assembly. Also, if unfortunately that assembly relies on some external resources, such as an Oracle product that must be installed on the local machine, I'm afraid you won't be able to use it in the cloud, because you cannot install software on cloud machines.
Lante, shanaolanxing This posting is provided "AS IS" with no warranties, and confers no rights.- Marked As Answer byJeff CertainMVPTuesday, September 08, 2009 3:51 AM
- I removed that entire block from machine.config.... it seems to work just fine now.
Thank you so much for your help!!- Marked As Answer byJeff CertainMVPTuesday, September 08, 2009 3:49 AM
- Well, the weird thing is I don't depend on it. As I stated earlier, I'm just creating a new cloud service project and trying to test it.
However, we are an Oracle shop... I suspect the Oracle Developer Tools installer put some garbage into machine.config that bombed out. - In this case, if other software on your machine requires Oracle.Web.dll, they may stop working properly. On a second thought, the actual problem is probablly Oracle.Web.dll is missing from GAC. Because if the assembly can be found in GAC, the problem should not happen on your local machine. If you can make sure nothing on your machine relies on this assembly, you can safely remove it from machine.config. Otherwise try to add the assembly to GAC.
Lante, shanaolanxing This posting is provided "AS IS" with no warranties, and confers no rights. I'm not doing anything web related that depends on Oracle. It was probably a default option on their installer.
Which means I can undo the Oracle evilness with impunity!
Thanks again for all your help.
