|
|
|
|
Joined: 3/26/2015
Posts: 14
|
|
|
In the DNN installation, the Host > Extensions page is showing the following error message.
--- A critical error has occurred. Please check the Event Viewer for further details. ---
The portal logs is showing the following details.
--- 2015-03-26 13:05:17,525 [xxx][Thread:38][FATAL] DotNetNuke.Framework.PageBase - An error has occurred while loading page. System.NullReferenceException: Object reference not set to an instance of an object. at DotNetNuke.Services.Installer.Packages.PackageController.CanDeletePackage(PackageInfo package, PortalSettings portalSettings) at DotNetNuke.Modules.Admin.Extensions.InstalledExtensions.extensionsGrid_ItemDataBound(Object sender, DataGridItemEventArgs e) at System.Web.UI.WebControls.DataGrid.OnItemDataBound(DataGridItemEventArgs e) at System.Web.UI.WebControls.DataGrid.CreateItem(Int32 itemIndex, Int32 dataSourceIndex, ListItemType itemType, Boolean dataBind, Object dataItem, DataGridColumn[] columns, TableRowCollection rows, PagedDataSource pagedDataSource) at System.Web.UI.WebControls.DataGrid.CreateControlHierarchy(Boolean useDataSource) at System.Web.UI.WebControls.BaseDataList.OnDataBinding(EventArgs e) at System.Web.UI.WebControls.BaseDataList.DataBind() at DotNetNuke.Modules.Admin.Extensions.InstalledExtensions.BindGrid(String packageType, DataGrid grid, Label noResultsLabel) at DotNetNuke.Modules.Admin.Extensions.InstalledExtensions.extensionTypeRepeater_ItemDataBound(Object sender, RepeaterItemEventArgs e) at System.Web.UI.WebControls.Repeater.OnItemDataBound(RepeaterItemEventArgs e) at System.Web.UI.WebControls.Repeater.CreateItem(Int32 itemIndex, ListItemType itemType, Boolean dataBind, Object dataItem) at System.Web.UI.WebControls.Repeater.CreateControlHierarchy(Boolean useDataSource) at System.Web.UI.WebControls.Repeater.OnDataBinding(EventArgs e) at System.Web.UI.WebControls.Repeater.DataBind() at DotNetNuke.Modules.Admin.Extensions.InstalledExtensions.BindPackageTypes() at DotNetNuke.Modules.Admin.Extensions.InstalledExtensions. (EventArgs e) at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) 2015-03-26 13:05:17,634 [xxx][Thread:38][ERROR] DotNetNuke.Services.Exceptions.Exceptions - ~/Default.aspx?tabid=36&error=Object+reference+not+set+to+an+instance+of+an+object.&content=0 System.NullReferenceException: Object reference not set to an instance of an object. at DotNetNuke.Services.Installer.Packages.PackageController.CanDeletePackage(PackageInfo package, PortalSettings portalSettings) at DotNetNuke.Modules.Admin.Extensions.InstalledExtensions.extensionsGrid_ItemDataBound(Object sender, DataGridItemEventArgs e) at System.Web.UI.WebControls.DataGrid.OnItemDataBound(DataGridItemEventArgs e) at System.Web.UI.WebControls.DataGrid.CreateItem(Int32 itemIndex, Int32 dataSourceIndex, ListItemType itemType, Boolean dataBind, Object dataItem, DataGridColumn[] columns, TableRowCollection rows, PagedDataSource pagedDataSource) at System.Web.UI.WebControls.DataGrid.CreateControlHierarchy(Boolean useDataSource) at System.Web.UI.WebControls.BaseDataList.OnDataBinding(EventArgs e) at System.Web.UI.WebControls.BaseDataList.DataBind() at DotNetNuke.Modules.Admin.Extensions.InstalledExtensions.BindGrid(String packageType, DataGrid grid, Label noResultsLabel) at DotNetNuke.Modules.Admin.Extensions.InstalledExtensions.extensionTypeRepeater_ItemDataBound(Object sender, RepeaterItemEventArgs e) at System.Web.UI.WebControls.Repeater.OnItemDataBound(RepeaterItemEventArgs e) at System.Web.UI.WebControls.Repeater.CreateItem(Int32 itemIndex, ListItemType itemType, Boolean dataBind, Object dataItem) at System.Web.UI.WebControls.Repeater.CreateControlHierarchy(Boolean useDataSource) at System.Web.UI.WebControls.Repeater.OnDataBinding(EventArgs e) at System.Web.UI.WebControls.Repeater.DataBind() at DotNetNuke.Modules.Admin.Extensions.InstalledExtensions.BindPackageTypes() at DotNetNuke.Modules.Admin.Extensions.InstalledExtensions. (EventArgs e) at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) ---
The tabid 36 is the Host > Extensions page. Cannot identify what is causing the problem and how to correct it.
Has anyone noticed this type of errors? The DNN was recently upgraded to the latest version 7.4.
|
|
|
|
| |
|
|
|
I would assume there is some inconsistence in your metadata, a module without a package or sth like this. Unfortunately the stack trace doesn't tell the concrete issue. Did you recently uninstall an Extension or an install failed?
|
|
|
|
| |
|
|
|
|
https://www.dnnwerk.at Joined: 6/27/2005
Posts: 2083
|
|
|
Please check all the upgrade logs from the version before you upgraded to 7.4.0. (you can find them under Host :: Host Settings at the bottom of the bage, or in the file system under /Providers/DataProviders/SqlDataProvider/xx.xx.xx.log.resources, where xx.xx.xx indicates the target version). Maybe you find some errors there.
Happy DNNing! Michael
|
|
|
|
| |
|
|
|
Joined: 3/26/2015
Posts: 14
|
|
|
Thanks for the responses.
@Sebastian: I'm trying to get this information. As far as I know, the Host Extensions had this problem at times before upgrading to the latest version.
@Michael: Yes, I have noticed the following error message.
--- System.Data.SqlClient.SqlException (0x80131904): Subquery returned more than 1 value. This is not permitted when the subquery follows =, !=, <, <= , >, >= or when the subquery is used as an expression. 'FK_PortalSettings_Portals' is not a constraint. Could not drop constraint. See previous errors. at System.Data.SqlClient.SqlConnection. (SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction) at System.Data.SqlClient.SqlInternalConnection. (SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction) at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose) at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady) at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async, Int32 timeout, Boolean asyncWrite) at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean asyncWrite) at System.Data.SqlClient.SqlCommand.ExecuteNonQuery() at DotNetNuke.Data.SqlDataProvider.ExecuteScriptInternal(String connectionString, String script) ClientConnectionId:c8ac2ac9-e47a-4979-9993-acbb37079d7f
-- make sure we don't have any duplicate amail addresses on portals where Registration_UseEmailAsUserName is turned on -- if so we need to turn off the feature here
DECLARE @PortalId int DECLARE @DupCount int
DECLARE Portals_Cursor CURSOR FOR Select PortalId from dbo.[PortalSettings] Where SettingName = 'Registration_UseEmailAsUserName' and SettingValue = 'true'
OPEN Portals_Cursor
FETCH NEXT FROM Portals_Cursor INTO @PortalId
WHILE @@FETCH_STATUS = 0 BEGIN
set @DupCount = ISNULL((SELECT COUNT(*) TotalCount FROM dbo.[Users] U Inner Join dbo.[UserPortals] UP on UP.[UserId] = U.[UserId] WHERE UP.PortalId = @PortalId GROUP BY U.[Email] HAVING COUNT(*) > 1), 0) if(@DupCount > 0) BEGIN Update dbo.[PortalSettings] set SettingValue = 'false' where SettingName = 'Registration_UseEmailAsUserName' and PortalID = @PortalId END FETCH NEXT FROM Portals_Cursor INTO @PortalId
END CLOSE Portals_Cursor; DEALLOCATE Portals_Cursor;
/******************************************************** * Table: PortalSettings (allow CultureCode Null, DNN-5743) ********************************************************/
--Drop Foreign Key ALTER TABLE dbo.PortalSettings DROP CONSTRAINT FK_PortalSettings_Portals
System.Data.SqlClient.SqlException (0x80131904): The ALTER TABLE statement conflicted with the FOREIGN KEY constraint "FK_PortalSettings_Portals". The conflict occurred in database "xxx_db", table "dbo.Portals", column 'PortalID'. at System.Data.SqlClient.SqlConnection. (SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction) at System.Data.SqlClient.SqlInternalConnection. (SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction) at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose) at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady) at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async, Int32 timeout, Boolean asyncWrite) at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean asyncWrite) at System.Data.SqlClient.SqlCommand.ExecuteNonQuery() at DotNetNuke.Data.SqlDataProvider.ExecuteScriptInternal(String connectionString, String script) ClientConnectionId:c8ac2ac9-e47a-4979-9993-acbb37079d7f
-- add back foreign key ALTER TABLE dbo.PortalSettings ADD CONSTRAINT FK_PortalSettings_Portals FOREIGN KEY ( PortalID ) REFERENCES dbo.Portals ( PortalID ) ON UPDATE NO ACTION ON DELETE CASCADE ---
The error is about a foreign key constraint FK_PortalSettings_Portals. I made sure that there is no portals with Registration_UseEmailAsUserName attribute set to true in table PortalSettings. Further, I'm no longer seeing the constraint FK_PortalSettings_Portals in tables PortalSettings or Portals.
|
|
|
|
| |
|
| |
| |