Also having this problem upgrading a site from 4.6.2 to 4.8.4
My error is:
Upgrading DotNetNuke
Current Assembly Version: 04.08.04
Current Database Version: 04.06.02
Upgrade Status Report
00:00:00.015 - Upgrading to Version: 4.8.4
00:00:00.015 - Executing Script: 04.07.00.SqlDataProvider Error! (see 04.07.00.log for more information)
Server Error in '/' Application.
Violation of UNIQUE KEY constraint 'IX_Version'. Cannot insert duplicate key in object 'dbo.Version'.
The statement has been terminated.
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.Data.SqlClient.SqlException: Violation of UNIQUE KEY constraint 'IX_Version'. Cannot insert duplicate key in object 'dbo.Version'.
The statement has been terminated.
Source Error:
The source code that generated this unhandled exception can only be shown when compiled in debug mode. To enable this, please follow one of the below steps, then request the URL:
1. Add a "Debug=true" directive at the top of the file that generated the error. Example:
<%@ Page Language="C#" Debug="true" %>
or:
2) Add the following section to the configuration file of your application:
<configuration>
<system.web>
<compilation debug="true"/>
</system.web>
</configuration>
Note that this second technique will cause all files within a given application to be compiled in debug mode. The first technique will cause only that particular file to be compiled in debug mode.
Important: Running applications in debug mode does incur a memory/performance overhead. You should make sure that an application has debugging disabled before deploying into production scenario. |
Stack Trace:
[SqlException (0x80131904): Violation of UNIQUE KEY constraint 'IX_Version'. Cannot insert duplicate key in object 'dbo.Version'.
The statement has been terminated.]
System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection) +925466
System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection) +800118
System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) +186
System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) +1932
System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString) +149
System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async) +1005
System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result) +132
System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe) +149
System.Data.SqlClient.SqlCommand.ExecuteNonQuery() +135
Microsoft.ApplicationBlocks.Data.SqlHelper.ExecuteNonQuery(SqlConnection connection, CommandType commandType, String commandText, SqlParameter[] commandParameters) +157
Microsoft.ApplicationBlocks.Data.SqlHelper.ExecuteNonQuery(String connectionString, CommandType commandType, String commandText, SqlParameter[] commandParameters) +164
Microsoft.ApplicationBlocks.Data.SqlHelper.ExecuteNonQuery(String connectionString, String spName, Object[] parameterValues) +234
DotNetNuke.Data.SqlDataProvider.UpdateDatabaseVersion(Int32 Major, Int32 Minor, Int32 Build) +149
DotNetNuke.Services.Upgrade.Upgrade.UpgradeVersion(String strScriptFile, Boolean writeFeedback) +194
DotNetNuke.Services.Upgrade.Upgrade.UpgradeDNN(String strProviderPath, String strDatabaseVersion) +384
DotNetNuke.Services.Install.Install.UpgradeApplication() +922
DotNetNuke.Services.Install.Install.Page_Load(Object sender, EventArgs e) +286
System.Web.UI.Control.OnLoad(EventArgs e) +99
System.Web.UI.Control.LoadRecursive() +47
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1436
|
Version Information: Microsoft .NET Framework Version:2.0.50727.1433; ASP.NET Version:2.0.50727.1433
The 04.07.00.log contains the folowing
System.Data.SqlClient.SqlException: The operation failed because an index or statistics with name 'IX_ScheduleHistory' already exists on table 'ScheduleHistory'.
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)
/* Add New Index to ScheduleHistory */
/************************************/
IF NOT EXISTS (SELECT * FROM dbo.sysindexes WHERE name = N'IX_ScheduleHistory')
CREATE NONCLUSTERED INDEX IX_ScheduleHistory ON dbo.[ScheduleHistory]
(
[NextStart] DESC,
[ScheduleHistoryID] ASC,
[ScheduleID] ASC
)
Please help.