Tuesday, October 26, 2010

Server Application Unavailable

This was my first ASP.Net 4.0 application deployment on IIS 6.0. The website was published under "Default Web Site" that hosts other Virtual Directories too, targeting ASP.Net 1.1 & 2.0.

When I tried to access the site, I got the error:
Server Application Unavailable

The web application you are attempting to access on this web server is currently unavailable. Please hit the "Refresh" button in your web browser to retry your request.

Administrator Note: An error message detailing the cause of this specific request failure can be found in the application event log of the web server. Please review this log entry to discover what caused this error to occur.


And the event viewer said:
It is not possible to run two different versions of ASP.NET in the same IIS process. Please use the IIS Administration Tool to reconfigure your server to run the application in a separate process.


Looking for resolution, I came across this blog: http://weblogs.asp.net/owscott/archive/2006/01/26/436607.aspx

I rechecked and my application was using the application pool created for .Net 4.0 apps; so the issue was not with application pool. After a bit of more wandering I started checking all websites that were using the .Net 4.0 application pool. And it turned out somebody had their website use the .Net 4.0 application pool but target .Net framework 2.0. Argh!!

Thursday, October 14, 2010

The package failed to load due to error 0xC0010014

We recently got SQL Server 2008 and deployed an instance on one of our QA servers. Nothing out of the ordinary, till I tried to deploy a 2005 SSIS package on the QA server.

As usual I took SSISDeploymentManifest file, right click and selected Deploy. I was doing a file system deployment, so the first thing out of ordinary that I noticed was, the installer gave me SQL 2008 deployment path; which I assumed was okay as the 2008 installation may have overwritten some registry default value. So I selected the path where I wanted it to be and rest of the process went without a problem.

Now when I go to SQL 2005 to create a job process for the package, it gives me the error
TITLE: SSIS Execution Properties
------------------------------

The package failed to load due to error 0xC0010014 "One or more error occurred. There should be more specific errors preceding this one that explains the details of the errors. This message is used as a return value from functions that encounter errors.". This occurs when CPackage::LoadFromXML fails.


------------------------------
ADDITIONAL INFORMATION:

The package failed to load due to error 0xC0010014 "One or more error occurred. There should be more specific errors preceding this one that explains the details of the errors. This message is used as a return value from functions that encounter errors.". This occurs when CPackage::LoadFromXML fails.


It turned out the default SSIS installer launched was for SQL 2008 and it didn't read anything from the manifest to identify which installer it should invoke (like Visual studio does).

The way to deploy SSIS packages in such scenarios is to right click and go to "Open With". The interesting thing here was that both options listed here are : "SQL Server 2005 Integration Services Package Installation Utility". So prima-facie we won't know which one to select. I tried both and it turned out that the second option was the one that is for SQL 2005.

On a bit further investigation, I found that the "Description" on the "Version" tab of "Properties" of dtsinstall.exe is still "SQL Server 2005 Integration Services Package".

Looks like somebody at Microsoft overlooked this step of testing. :)

Tuesday, October 12, 2010

Login failed for user "username"

I ran into the login failed for user "username" again. This time it was different from what I had faced the first time around.

My package uses config file to get the sql credentials. When I have the package open in my IDE and add another parameter to the file it wipes out the previously saved password. So now when I try to execute the package from my IDE to test the changes, I get this dB login failure message.

What threw me off was I was looking at the connection defined in the package designer and all seemed well.

So if this happens again, you need to take a look again in the config file to check if the password value is still there.

Monday, October 4, 2010

DateTime String patterns

Once in a while I find myself confused with which string pattern to apply to a .Net DateTime object.

I have found this web page (http://www.geekzilla.co.uk/View00FF7904-B510-468C-A2C8-F859AA20581F.htm) to be very useful and handy.

Thought of putting it here -- for my ready reference and in case somebody stumbles across this post.

And the MSDN article: http://msdn.microsoft.com/en-us/library/az4se3k1.aspx