I did an upgrade from 4.7.0 to 5.0.0 and started to have problems. Below are the errors based on the Host Upgrade Log:
4.7.0 : The log file is empty for the script version specified. This generally indicates that the script ran successfully.
4.8.0: The log file is empty for the script version specified. This generally indicates that the script ran successfully.
4.8.1: The log file is empty for the script version specified. This generally indicates that the script ran successfully.
4.8.2: The log file is empty for the script version specified. This generally indicates that the script ran successfully.
4.9.0: The log file is empty for the script version specified. This generally indicates that the script ran successfully.
4.9.1: The log file is empty for the script version specified. This generally indicates that the script ran successfully.
5.0.0: ERROR (refer to the end of this post for full log)
I was logged in while doing the upgrade, so I could still see the Admin and Host menu after that. But the Admin and Host menu were missing several items e.g. Extensions, Dashboard etc.
I also could not access Skin Management, Module Definitions etc. The items are available in the menu, but when clicked; does not load any of the admin controls, just a blank page. However, I can still access Site Settings and Host Settings, and can edit the Text/HTML modules.
Then I logged out, closed the browser (Firefox), cleared browser cache and tried to access again. This time I could not log in and got the following error:
A critical error has occurred.
Method not found: 'System.Collections.Hashtable DotNetNuke.Services.Authentication.AuthenticationConfigBase.get_ModuleSettings()'.
I then upgraded to 5.0.1: The log file is empty for the script version specified. This generally indicates that the script ran successfully.
The upgrade fixed the login problem, but I am still missing Admin and Host menu items and cannot access the Skin Management and Module Definition options.
I've gone through 35 pages of forum posts and googled for a solution and couldn't find any. The closest I got was this forum post. I tried what Tim Simpson did but somehow I couldn't get it to work, or probably I did it wrong. I think I might need to make some changes to the database in order to fix the problem that I am facing.
Can anyone guide me on the changes that I need to make? Thanks!
The 5.0.0 Host Upgrade Log
System.Data.SqlClient.SqlException: For DROP INDEX, you must give both the table and the index name, in the form tablename.indexname.
at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)
at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async)
at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe)
at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
at DotNetNuke.Data.SqlDataProvider.ExecuteADOScript(String SQL)
at DotNetNuke.Data.SqlDataProvider.ExecuteScript(String Script, Boolean UseTransactions)
/***********************************************************/
/* End Update Admin Modules to conform to Module Standards */
/***********************************************************/
/* Update Packages */
/*******************/
ALTER TABLE dbo.Packages
ADD PortalID int NULL
ALTER TABLE dbo.Packages
ALTER COLUMN Description nvarchar(2000) NULL
ALTER TABLE dbo.Packages
ALTER COLUMN License ntext NULL
ALTER TABLE dbo.Packages
ALTER COLUMN Manifest ntext NULL
ALTER TABLE dbo.Packages
ADD Owner nvarchar(100) NULL
ALTER TABLE dbo.Packages
ADD Organization nvarchar(100) NULL
ALTER TABLE dbo.Packages
ADD Url nvarchar(250) NULL
ALTER TABLE dbo.Packages
ADD Email nvarchar(100) NULL
ALTER TABLE dbo.Packages
ADD ReleaseNotes ntext NULL
ALTER TABLE dbo.Packages
ADD IsSystemPackage bit NOT NULL CONSTRAINT DF_Packages_IsSystemPackage DEFAULT 0
DROP INDEX IX_Packages ON dbo.Packages
CREATE UNIQUE NONCLUSTERED INDEX IX_Packages ON dbo.Packages ( Owner, Name, PortalID )
System.Data.SqlClient.SqlException: Invalid column name 'PortalID'.
at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)
at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async)
at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe)
at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
at DotNetNuke.Data.SqlDataProvider.ExecuteADOScript(String SQL)
at DotNetNuke.Data.SqlDataProvider.ExecuteScript(String Script, Boolean UseTransactions)
CREATE PROCEDURE dbo.[AddPackage]
@PortalID int,
@Name nvarchar(50),
@FriendlyName nvarchar(250),
@Description nvarchar(2000),
@PackageType nvarchar(50),
@Version nvarchar(50),
@License ntext,
@Manifest ntext,
@Owner nvarchar(100),
@Organization nvarchar(100),
@Url nvarchar(250),
@Email nvarchar(100),
@ReleaseNotes ntext,
@IsSystemPackage bit
AS
INSERT INTO dbo.Packages
(
PortalID,
[Name],
FriendlyName,
[Description],
PackageType,
Version,
License,
Manifest,
ReleaseNotes,
[Owner],
Organization,
Url,
Email,
IsSystemPackage
)
VALUES (
@PortalID,
@Name,
@FriendlyName,
@Description,
@PackageType,
@Version,
@License,
@Manifest,
@ReleaseNotes,
@Owner,
@Organization,
@Url,
@Email,
@IsSystemPackage
)
SELECT SCOPE_IDENTITY()
System.Data.SqlClient.SqlException: Invalid column name 'PortalID'.
at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)
at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async)
at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe)
at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
at DotNetNuke.Data.SqlDataProvider.ExecuteADOScript(String SQL)
at DotNetNuke.Data.SqlDataProvider.ExecuteScript(String Script, Boolean UseTransactions)
CREATE PROCEDURE dbo.[UpdatePackage]
@PortalID int,
@Name nvarchar(50),
@FriendlyName nvarchar(250),
@Description nvarchar(2000),
@PackageType nvarchar(50),
@Version nvarchar(50),
@License ntext,
@Manifest ntext,
@Owner nvarchar(100),
@Organization nvarchar(100),
@Url nvarchar(250),
@Email nvarchar(100),
@ReleaseNotes ntext,
@IsSystemPackage bit
AS
UPDATE dbo.Packages
SET
PortalID = @PortalID,
FriendlyName = @FriendlyName,
[Description] = @Description,
PackageType = @PackageType,
Version = @Version,
License = @License,
Manifest = @Manifest,
[Owner] = @Owner,
Organization = @Organization,
Url = @Url,
Email = @Email,
ReleaseNotes = @ReleaseNotes,
IsSystemPackage = @IsSystemPackage
WHERE [Name] = @Name
System.Data.SqlClient.SqlException: Invalid column name 'PortalID'.
Invalid column name 'PortalID'.
at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)
at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async)
at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe)
at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
at DotNetNuke.Data.SqlDataProvider.ExecuteADOScript(String SQL)
at DotNetNuke.Data.SqlDataProvider.ExecuteScript(String Script, Boolean UseTransactions)
CREATE PROCEDURE dbo.[GetPackages]
@PortalID int
AS
SELECT *
FROM dbo.Packages
WHERE (PortalID = @PortalID OR @PortalID IS NULL OR PortalID IS NULL)
ORDER BY PackageType ASC, [FriendlyName] ASC
System.Data.SqlClient.SqlException: Invalid column name 'PortalID'.
Invalid column name 'PortalID'.
at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)
at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async)
at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe)
at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
at DotNetNuke.Data.SqlDataProvider.ExecuteADOScript(String SQL)
at DotNetNuke.Data.SqlDataProvider.ExecuteScript(String Script, Boolean UseTransactions)
CREATE PROCEDURE dbo.[GetPackagesByType]
@PortalID int,
@PackageType nvarchar(50)
AS
SELECT *
FROM dbo.Packages
WHERE (PortalID = @PortalID OR @PortalID IS NULL OR PortalID IS NULL)
AND PackageType = @PackageType
ORDER BY [FriendlyName] ASC
System.Data.SqlClient.SqlException: Invalid column name 'PortalID'.
at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)
at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async)
at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe)
at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
at DotNetNuke.Data.SqlDataProvider.ExecuteADOScript(String SQL)
at DotNetNuke.Data.SqlDataProvider.ExecuteScript(String Script, Boolean UseTransactions)
CREATE PROCEDURE dbo.GetPackageByName
@PortalID int,
@Name nvarchar(250)
AS
SELECT *
FROM dbo.Packages
WHERE [Name] = @Name
AND (PortalID = @PortalID OR @PortalID IS NULL)
Error: The stored procedure 'dbo.AddPackage' doesn't exist.