We have been using DNN from source for quite a while now. Up until recently, we have not had any issues. However, this last time,we tried setting up a brand new installation of DNN on the server from our source verson (still 4.8.2) and got an error during the install (we use the auto-install) that we've never seen before. It seems to install everything correctly until it gets to the point where it is setting up portal 0. When it gets this error, the portal is not set up in the database and I cannot find a log anywhere that would tell me what the actual error is. If I could attach a screenshot, I would, so here is the auto-install screen:
00:00:00.015 - Installing Version: 4.4.0
00:00:00.015 - Executing Script: DotNetNuke.SetUp.SqlDataProvider Success
00:00:00.031 - Executing Script: DotNetNuke.Schema.SqlDataProvider Success
00:00:02.921 - Executing Script: DotNetNuke.Data.SqlDataProvider Success
00:00:05.734 - Installing MemberRole Provider:
00:00:05.734 - Executing Script: InstallCommon
00:00:06.296 - Executing Script: InstallMembership
00:00:06.671 - Executing Script: InstallProfile
00:00:06.843 - Executing Script: InstallRoles
00:00:07.093 - Upgrading to Version: 4.8.2
00:00:07.124 - Executing Script: 04.04.01.SqlDataProvider Success
00:00:07.218 - Executing Script: 04.05.00.SqlDataProvider Success
00:00:07.999 - Executing Script: 04.05.01.SqlDataProvider Success
00:00:08.124 - Executing Script: 04.05.02.SqlDataProvider Success
00:00:08.374 - Executing Script: 04.05.03.SqlDataProvider Success
00:00:08.437 - Executing Script: 04.05.04.SqlDataProvider Success
00:00:08.484 - Executing Script: 04.05.05.SqlDataProvider Success
00:00:08.499 - Executing Script: 04.06.00.SqlDataProvider Success
00:00:09.187 - Executing Script: 04.06.01.SqlDataProvider Success
00:00:09.187 - Executing Script: 04.06.02.SqlDataProvider Success
00:00:09.202 - Executing Script: 04.07.00.SqlDataProvider Success
00:00:09.421 - Executing Script: 04.08.00.SqlDataProvider Success
00:00:09.531 - Executing Script: 04.08.01.SqlDataProvider Success
00:00:09.577 - Executing Script: 04.08.02.SqlDataProvider Success
00:00:09.593 - Performing General Upgrades
00:00:10.468 - Loading Host Settings:
00:00:10.656 - Configuring SuperUser:
00:00:15.030 - Synchronizing Host Files:
00:00:15.234 - Installing Modules:
00:00:15.234 - Executing Additional Scripts:
00:00:15.234 - Creating Portal: My Website
00:00:15.640 - Error: An Unexpected Error Occurred During Registration. Please Contact The Portal Administrator For Futher Information.
00:00:15.640 - Portal failed to install:Error!
00:00:15.640 - Installing Optional Resources:
Installation Complete
We also see the following when visiting the site after the failed installation (we changed RemoteOnly to Off):
Object reference not set to an instance of an object.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.NullReferenceException: Object reference not set to an instance of an object.
Source Error:
An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below. |
Stack Trace:
[NullReferenceException: Object reference not set to an instance of an object.]
DotNetNuke.Entities.Portals.PortalSettings.GetPortalSettings(Int32 TabId, PortalAliasInfo objPortalAliasInfo) in C:\hgwork\Trunk\DotNetNuke.Library\DotNetNuke.Library\Components\Portal\PortalSettings.vb:605
DotNetNuke.Entities.Portals.PortalSettings..ctor(Int32 tabId, PortalAliasInfo objPortalAliasInfo) in C:\hgwork\Trunk\DotNetNuke.Library\DotNetNuke.Library\Components\Portal\PortalSettings.vb:551
DotNetNuke.HttpModules.UrlRewriteModule.OnBeginRequest(Object s, EventArgs e) in C:\hgwork\Trunk\DotNetNuke.Library\DotNetNuke.HttpModules\UrlRewrite\UrlRewriteModule.vb:464
System.Web.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +92
System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +64
|
I'm pretty sure that error message is caused by the fact that no portals exist.
I have found that there are a few problems with this happening:
1. That it happens with no real explanation why.
2. That there is no way to re-run the installation and attempt to finish whatever failed. I have to delete the database and start over.
3. That there isn't a better handling of the situation where no portal gets created during installation. It should give you the option of attempting to re-install the default.
One disturbing thing was that I had seen on DNNCreative, a developer mentioning that the source version offered for download is never to be used to install instances of DNN. If that's the case, it should have been made very clear on dotnetnuke.com. We need to use the source as we need to be able to change the source code as needed and track it via source control (yes, we manage upgrades carefully with our local changes). If it's not the case, which I hope it isn't, does anyone have any idea why the above error is happening? Note, we are *not* using the Install Wizard. We have that turned off in Web.config.