I'm trying to upgrade from 4.0.2 to something newer. Downloaded the 4.8.4 upgrade; unzipped; updated web.config; ran the install and got a couple database errors. Restored my 4.0.2 files and database. Downloaded the 4.6.2 upgrade; unzipped; updated web.config again, ran the install and this time I wrote down the errors. :-)
What follows is the results of the install and the three referenced log files. Any clues as to what's going on?
Fortunately I backed everything up so I'm back to 4.0.2 (or at least I will be soon when my backup finishes uploading).
Craig
Upgrading DotNetNuke
Current Assembly Version: 04.06.02
Current Database Version: 04.00.02
00:00:00.015 - Executing Script: Upgrade.SqlDataProvider Success
Upgrade Status Report
00:00:00.406 - Upgrading to Version: 4.6.2
00:00:00.437 - Executing Script: 04.00.03.SqlDataProvider Success
00:00:00.593 - Executing Script: 04.00.04.SqlDataProvider Error! (see 04.00.04.log for more information)
00:00:05.218 - Executing Script: 04.00.05.SqlDataProvider Success
00:00:05.218 - Executing Script: 04.00.06.SqlDataProvider Success
00:00:05.218 - Executing Script: 04.00.07.SqlDataProvider Success
00:00:05.218 - Executing Script: 04.03.00.SqlDataProvider Success
00:00:05.265 - Executing Script: 04.03.01.SqlDataProvider Success
00:00:05.296 - Executing Script: 04.03.02.SqlDataProvider Success
00:00:05.359 - Executing Script: 04.03.03.SqlDataProvider Success
00:00:05.515 - Executing Script: 04.03.04.SqlDataProvider Success
00:00:05.531 - Executing Script: 04.03.05.SqlDataProvider Error! (see 04.03.05.log for more information)
00:00:05.781 - Executing Script: 04.03.06.SqlDataProvider Success
00:00:05.921 - Executing Script: 04.03.07.SqlDataProvider Success
00:00:05.968 - Executing Script: 04.04.00.SqlDataProvider Error! (see 04.04.00.log for more information)
00:00:07.093 - Executing Script: 04.04.01.SqlDataProvider Success
00:00:07.140 - Executing Script: 04.05.00.SqlDataProvider Success
00:00:08.828 - Executing Script: 04.05.01.SqlDataProvider Success
00: - Executing Script: 04.05.02.SqlDataProvider Success
00:00:09.781 - Executing Script: 04.05.03.SqlDataProvider Success
00:00:09.953 - Executing Script: 04.05.04.SqlDataProvider Success
00:00:10.046 - Executing Script: 04.05.05.SqlDataProvider Success
00:00:10.046 - Executing Script: 04.06.00.SqlDataProvider Success
00:00:11.671 - Executing Script: 04.06.01.SqlDataProvider Success
00:00:11.671 - Executing Script: 04.06.02.SqlDataProvider Success
00:00:11.671 - Performing General Upgrades
00:00:12.781 - Installing Package File LiveID_01.00.00_Install: Success
00:00:13.421 - Installing Package File OpenID_01.00.00_Install: Success
Upgrade Complete
Click Here To Access Your Portal
04.00.04.log:
System.Data.SqlClient.SqlException: Incorrect syntax near 'LastUpdated'.
Incorrect syntax near 'LastUpdated'.
Incorrect syntax near 'LastUpdated'.
Incorrect syntax near 'LastUpdated'.
Incorrect syntax near 'LastUpdated'.
Incorrect syntax near 'LastUpdated'.
Incorrect syntax near 'LastUpdated'.
Incorrect syntax near 'LastUpdated'.
Incorrect syntax near 'LastUpdated'.
Incorrect syntax near 'LastUpdated'.
Incorrect syntax near 'LastUpdated'.
Incorrect syntax near 'LastUpdated'.
Incorrect syntax near 'LastUpdated'.
Incorrect syntax near 'LastUpdated'.
Incorrect syntax near 'LastUpdated'.
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)
/* Transfer Profile */
/*********************/
If (SELECT dbo.fn_GetVersion(3,2,3)) = 0
BEGIN
--Create Temp Table
CREATE TABLE dbo.FlatProfile (
[UserID] [int] ,
[PortalID] [int],
[Username] [nvarchar] (256) NULL ,
[FirstName] [nvarchar] (256) NULL ,
[LastName] [nvarchar] (256) NULL ,
[Street] [nvarchar] (256) NULL ,
[Unit] [nvarchar] (128) NULL ,
[City] [nvarchar] (256) NULL ,
[Country] [nvarchar] (256) NULL ,
[Region] [nvarchar] (256) NULL ,
[PostalCode] [nvarchar] (128) NULL ,
[Telephone] [nvarchar] (128) NULL ,
[Cell] [nvarchar] (128) NULL ,
[Fax] [nvarchar] (128) NULL ,
[Website] [nvarchar] (256) NULL ,
[IM] [nvarchar] (256) NULL,
[PreferredLocale] [nvarchar] (128) NULL ,
[TimeZone] [nvarchar] (256) NULL,
[LastUpdatedDate] [datetime]
)
--Extract from Profile Blob to Temp Table
INSERT INTO dbo.FlatProfile
SELECT
dbo.users.userid,
dbo.userportals.portalid,
dbo.users.username,
dbo.users.firstname,
dbo.users.lastname,
dbo.GetProfileElement('Street',PropertyNames,PropertyValuesString) Street,
dbo.GetProfileElement('Unit',PropertyNames,PropertyValuesString) Unit,
dbo.GetProfileElement('City',PropertyNames,PropertyValuesString) City,
dbo.GetProfileElement('Country',PropertyNames,PropertyValuesString) Country,
dbo.GetProfileElement('Region',PropertyNames,PropertyValuesString) Region,
dbo.GetProfileElement('PostalCode',PropertyNames,PropertyValuesString) PostalCode,
dbo.GetProfileElement('Telephone',PropertyNames,PropertyValuesString) Telephone,
dbo.GetProfileElement('Cell',PropertyNames,PropertyValuesString) Cell,
dbo.GetProfileElement('Fax',PropertyNames,PropertyValuesString) Fax,
dbo.GetProfileElement('Website',PropertyNames,PropertyValuesString) Website,
dbo.GetProfileElement('IM',PropertyNames,PropertyValuesString) IM,
dbo.GetProfileElement('PreferredLocale',PropertyNames,PropertyValuesString) PreferredLocale,
dbo.GetProfileElement('TimeZone',PropertyNames,PropertyValuesString) TimeZone,
aspnet_profile.LastUpdatedDate
FROM dbo.Users
inner join dbo.userportals on dbo.users.userid = dbo.userportals.userid
inner join aspnet_users on dbo.users.username = aspnet_users.username
inner join aspnet_profile on aspnet_profile.userid = aspnet_users.userid
where dbo.userportals.portalid = PortalID
--Move to UserProfile Table
EXECUTE dbo.TransferUsersFromFlatProfile N'FirstName'
EXECUTE dbo.TransferUsersFromFlatProfile N'LastName'
EXECUTE dbo.TransferUsersFromFlatProfile N'Unit'
EXECUTE dbo.TransferUsersFromFlatProfile N'Street'
EXECUTE dbo.TransferUsersFromFlatProfile N'City'
EXECUTE dbo.TransferUsersFromFlatProfile N'Region'
EXECUTE dbo.TransferUsersFromFlatProfile N'PostalCode'
EXECUTE dbo.TransferUsersFromFlatProfile N'Country'
EXECUTE dbo.TransferUsersFromFlatProfile N'Telephone'
EXECUTE dbo.TransferUsersFromFlatProfile N'Fax'
EXECUTE dbo.TransferUsersFromFlatProfile N'Cell'
EXECUTE dbo.TransferUsersFromFlatProfile N'Website'
EXECUTE dbo.TransferUsersFromFlatProfile N'IM'
EXECUTE dbo.TransferUsersFromFlatProfile N'TimeZone'
EXECUTE dbo.TransferUsersFromFlatProfile N'PreferredLocale'
--Drop temp objects
DROP TABLE dbo.FlatProfile
DROP PROCEDURE dbo.TransferUsersFromFlatProfile
END
04.03.05.log
System.Data.SqlClient.SqlException: Invalid column name 'LastUpdated'.
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.AddFolder
@PortalID int,
@FolderPath varchar(300),
@StorageLocation int,
@IsProtected bit,
@IsCached bit
AS
IF NOT EXISTS (SELECT 1 FROM dbo.Folders WHERE PortalID = @PortalID and FolderPath = @FolderPath)
BEGIN
INSERT INTO dbo.Folders
(PortalID, FolderPath, StorageLocation, IsProtected, IsCached, LastUpdated)
VALUES
(@PortalID, @FolderPath, @StorageLocation, @IsProtected, @IsCached, getUtcDate())
SELECT SCOPE_IDENTITY()
END
System.Data.SqlClient.SqlException: Invalid column name 'LastUpdated'.
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.AddFile
@PortalId int,
@FileName nvarchar(100),
@Extension nvarchar(100),
@Size int,
@WIdth int,
@Height int,
@ContentType nvarchar(200),
@Folder nvarchar(200),
@FolderID int
AS
DECLARE @FileID int
SET @FileID = (SELECT FileId FROM dbo.Files WHERE FolderID = @FolderID and FileName = @FileName)
IF @FileID IS NULL
BEGIN
INSERT INTO dbo.Files (
PortalId,
FileName,
Extension,
Size,
Width,
Height,
ContentType,
Folder,
FolderID
)
VALUES (
@PortalId,
@FileName,
@Extension,
@Size,
@Width,
@Height,
@ContentType,
@Folder,
@FolderID
)
END
ELSE
BEGIN
UPDATE dbo.Files
SET FileName = @FileName,
Extension = @Extension,
Size = @Size,
Width = @Width,
Height = @Height,
ContentType = @ContentType,
Folder = @Folder,
FolderID = @FolderID
WHERE FileId = @FileID
END
UPDATE dbo.Folders
SET LastUpdated = getUtcDate()
WHERE FolderID = @FolderID
SELECT SCOPE_IDENTITY()
System.Data.SqlClient.SqlException: Invalid column name 'LastUpdated'.
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.DeleteFile
@PortalId int,
@FileName nvarchar(100),
@FolderID int
AS
DELETE
FROM dbo.Files
WHERE FileName = @FileName
AND FolderID = @FolderID
AND ((PortalId = @PortalId) OR (@PortalId is null and PortalId is null))
UPDATE dbo.Folders
SET LastUpdated = getUtcDate()
WHERE FolderID = @FolderID
System.Data.SqlClient.SqlException: Invalid column name 'LastUpdated'.
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.UpdateFile
@FileId int,
@FileName nvarchar(100),
@Extension nvarchar(100),
@Size int,
@Width int,
@Height int,
@ContentType nvarchar(200),
@Folder nvarchar(200),
@FolderID int
AS
UPDATE dbo.Files
SET FileName = @FileName,
Extension = @Extension,
Size = @Size,
Width = @Width,
Height = @Height,
ContentType = @ContentType,
Folder = @Folder,
FolderID = @FolderID
WHERE FileId = @FileId
UPDATE dbo.Folders
SET LastUpdated = getUtcDate()
WHERE FolderID = @FolderID
System.Data.SqlClient.SqlException: Invalid column name 'LastUpdated'.
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.UpdateFolder
@PortalID int,
@FolderID int,
@FolderPath varchar(300),
@StorageLocation int,
@IsProtected bit,
@IsCached bit
AS
UPDATE dbo.Folders
SET FolderPath = @FolderPath,
StorageLocation = @StorageLocation,
IsProtected = @IsProtected,
IsCached = @IsCached,
LastUpdated = getUtcDate()
WHERE ((PortalID = @PortalID) or (PortalID is null and @PortalID is null))
AND FolderID = @FolderID
System.Data.SqlClient.SqlException: Invalid column name 'LastUpdated'.
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.GetFoldersByUser
@PortalID int,
@UserID int,
@IncludeSecure bit,
@IncludeDatabase bit,
@AllowAccess bit,
@PermissionKeys nvarchar(200)
AS
SELECT DISTINCT
F.FolderID,
F.PortalID,
F.FolderPath,
F.StorageLocation,
F.IsProtected,
F.IsCached,
F.LastUpdated
FROM dbo.Roles R
INNER JOIN dbo.UserRoles UR ON R.RoleID = UR.RoleID
RIGHT OUTER JOIN dbo.Folders F
INNER JOIN dbo.FolderPermission FP ON F.FolderID = FP.FolderID
INNER JOIN dbo.Permission P ON FP.PermissionID = P.PermissionID
ON R.RoleID = FP.RoleID
WHERE ( UR.UserID = @UserID
OR (FP.RoleID = - 1 AND @UserID Is Not NULL)
OR (FP.RoleID = - 3)
)
AND CHARINDEX(P.PermissionKey, @PermissionKeys) > 0
AND FP.AllowAccess = @AllowAccess
AND F.PortalID = @PortalID
AND (F.StorageLocation = 0
OR (F.StorageLocation = 1 AND @IncludeSecure = 1)
OR (F.StorageLocation = 2 AND @IncludeDatabase = 1)
)
04.04.00.log
Error: HelpURL