Wednesday, October 21, 2015

Reinstalling Sitefinity Modules

I was recently experiencing problems with my Libraries module in Sitefinity, so I decided to Deactivate and Reactivate the Libraries module based on this article (http://docs.sitefinity.com/activate-and-deactivate-modules)to see if that would rectify the problem.

Unfortunately, that had no effect on fixing my issues.  So, after posting to a Sitefinity forum, I received the recommendation to go ahead and uninstall and reinstall the affected module.

This not only failed to work, it put the Libraries module in a "Failed" state thus making the module completely unusable at all!


Therefore, I was only left with the remaining option of deleting the module altogether.  What I did not know, though, was that there is no built-in method in the User Interface of Sitefinity to do a "clean" re-install of System Modules!

Lucky for me, the Sitefinity team keeps it pretty simple by storing this information in .config files.  In this case, the name of the Application Modules are stored in the SystemConfig.config file which is located beneath the App_Data\Sitefinity\Configuration folder at the root of the Sitefinity website.

I opened up the SystemConfig.config file and found this line under the applicationModules root:

<remove name="Libraries" />



I then removed this line from the SystemConfig.config file and re-started my Sitefinity website only to receive this dreaded error once again:




Well, I decided to look at the SystemConfig.config file once more and I now found this line in the SytemConfig.config file this time:



<add startupType="Disabled" errorMessage="Batch insert failed: Telerik.OpenAccess.RT.sql.SQLException: Violation of PRIMARY KEY constraint 'pk_sf_presentation_data'. Cannot insert duplicate key in object 'dbo.sf_presentation_data'. The duplicate key value is (db0d628c-5471-4197-a94f-000000000003).&#xD;&#xA;The statement has been terminated. ---&gt; System.Data.SqlClient.SqlException: Violation of PRIMARY KEY constraint 'pk_sf_presentation_data'. Cannot insert duplicate key in object 'dbo.sf_presentation_data'. The duplicate key value is (db0d628c-5471-4197-a94f-000000000003).&#xD;&#xA;The statement has been terminated.&#xD;&#xA;   at System.Data.Common.DbDataAdapter.UpdatedRowStatusErrors(RowUpdatedEventArgs rowUpdatedEvent, BatchCommandInfo[] batchCommands, Int32 commandCount)&#xD;&#xA;   at System.Data.Common.DbDataAdapter.UpdatedRowStatus(RowUpdatedEventArgs rowUpdatedEvent, BatchCommandInfo[] batchCommands, Int32 commandCount)&#xD;&#xA;   at System.Data.Common.DbDataAdapter.Update(DataRow[] dataRows, DataTableMapping tableMapping)&#xD;&#xA;   at System.Data.Common.DbDataAdapter.Update(DataRow[] dataRows)&#xD;&#xA;   at OpenAccessRuntime.Intellitrace.Update(String id, DbDataAdapter adapter, DataRow[] rows)&#xD;&#xA;   at Telerik.OpenAccess.RT.sql.Batch.Perform(String connId, DbDataAdapter adapter, DataRow[] rows)&#xD;&#xA;   at Telerik.OpenAccess.Runtime.Logging.LoggingDbCommand.ExecuteBatch(DbDataAdapter adapter, DataRow[] rows, Batch batch)&#xD;&#xA;   at Telerik.OpenAccess.RT.Adonet2Generic.Impl.CommandImp.Execute(DbDataAdapter adapter, DataRow[] rows, Batch batch)&#xD;&#xA;   at Telerik.OpenAccess.RT.Adonet2Generic.Impl.StatementImp.Execute(DbDataAdapter adapter, DataRow[] rows, Batch batch)&#xD;&#xA;   --- End of inner exception stack trace ---&#xD;&#xA;   at Telerik.OpenAccess.RT.Adonet2Generic.Impl.StatementImp.Execute(DbDataAdapter adapter, DataRow[] rows, Batch batch)&#xD;&#xA;   at OpenAccessRuntime.Relational.conn.LoggingStatement.Execute(DbDataAdapter adapter, DataRow[] rows, Batch batch)&#xD;&#xA;   at Telerik.OpenAccess.RT.sql.Batch.ExecuteBatchDataTable(Boolean withInfo)&#xA;INSERT INTO [sf_presentation_data] ([voa_class], [app_name], [dta], [data_type], [date_created], [id], [last_modified], [nme], [ownr], [theme], [voa_version], [area_name], [condition], [item_id], [control_type], [embedded_template_name], [friendly_control_name], [is_different_from_embedded], [name_for_developers], [resource_assembly_name], [resource_class_id]) VALUES (@p0, @p1, @p2, @p3, @p4, @p5, @p6, @p7, @p8, @p9, @p10, @p11, @p12, @p13, @p14, @p15, @p16, @p17, @p18, @p19, @p20)&#xA;Batch Entry 0 (set event logging to all to see parameter data)" name="Libraries" />


I removed this line and instead replaced it with the following:



<add version="8.1.5820.0" name="Libraries" />

Making this change finally solved my problem with the Libraries Sitefinity Module!  Hurrah!!



No comments:

Post a Comment