PropertyData object with name "" already exists

Vote:
 

Hi, We have upgrade an site from 5.1 to 6.0. And after that we get the following error. How can we solve that? 

PropertyData object with name "MainBody" already exists

[ApplicationException: PropertyData object with name "MainBody" already exists]
EPiServer.Core.PropertyDataCollection.Add(String name, PropertyData value) +130
EPiServer.DataAccess.PageListDB.ReadPageList(AbstractCommand cmd) +1226
EPiServer.DataAccess.<>c__DisplayClass14.<LoadSpecificPages>b__13() +451
EPiServer.DataAccess.<>c__DisplayClass1`1.<Execute>b__0() +58
EPiServer.DataAccess.DatabaseFactory.Execute(Action`1 method) +55
EPiServer.DataAccess.DataAccessBase.Execute(Action`1 action) +240
EPiServer.DataAccess.PageListDB.LoadSpecificPages(Int32[] pageLinks) +78
EPiServer.LocalPageProvider.GetPages(PageReferenceCollection pageReferences, ILanguageSelector selector) +173
EPiServer.Core.PageProviderBase.GetScatteredPages(PageReferenceCollection pageRefs, ILanguageSelector selector) +404
EPiServer.Core.PageProviderBase.GetChildren(PageReference pageLink, ILanguageSelector selector, Int32 startIndex, Int32 maxRows) +92
EPiServer.DataFactory.GetChildren(PageReference pageLink, ILanguageSelector selector, Int32 startIndex, Int32 maxRows) +453
EPiServer.Web.UrlSegment.GetPageBySegment(PageReference parent, String urlSegment, String languageBranch, Boolean exactLanguage) +86
EPiServer.Web.FriendlyUrlRewriteProvider.GetPageBySegments(PageReference rootPageRef, String[] segments, String languageCode) +35
EPiServer.Web.FriendlyUrlRewriteProvider.GetPageFromStartByPath(String path, LanguageBranch languageBranch) +316
EPiServer.Web.FriendlyUrlRewriteProvider.ConvertToInternalInternal(UrlBuilder url, Object& internalObject) +423
EPiServer.Web.FriendlyUrlRewriteProvider.ConvertToInternal(UrlBuilder url, Object& internalObject) +451
EPiServer.Web.UrlRewriteModule.HttpUrlRewriteToInternal(UrlBuilder url) +342
EPiServer.Web.UrlRewriteModuleBase.BeginRequestEventHandler(Object sender, EventArgs e) +158
System.Web.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +68
System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +75

#46256
Dec 03, 2010 18:12
Vote:
 

Hi Øyvind,

This forum post seems related to your problem. Perhaps it could help, http://world.episerver.com/Templates/Forum/Pages/Thread.aspx?id=15862&epslanguage=en

Regards, Leif

#46269
Dec 05, 2010 22:46
Vote:
 

Looks a little bit like this:

http://world.episerver.com/Templates/Forum/Pages/Thread.aspx?id=45584&epslanguage=en

I've seen this error is it is a page loop to it self or using shortcut to a page that isn't there.

Kind regards,

 

Jon Haakon

#46289
Dec 06, 2010 16:44
Vote:
 

I have a site that I have upgraded from 4.62B to CMS6 and from time to time I get this exact error. It just appears at random, I haven't been able to see any pattern when it occurs.

Have you found any solution to this? I looked at the links above but they didn't help.

Kind regards,

/Jens

#47250
Jan 20, 2011 15:45
Vote:
 

This is a very old question but I recently ran across this same error.  There are several SQL queries you can run to look for duplicate property names:

-- Checks the tblProperty table looking for duplicate properties.
SELECT [fkPageDefinitionID]
	,[fkPageID]
	,[fkLanguageBranchID]
	,COUNT(*)
FROM [dbo].[tblProperty]
GROUP BY [fkPageDefinitionID]
	,[fkPageID]
	,[fkLanguageBranchID]
HAVING COUNT(*) > 1

-- Checkes the tblPageDefinition table looking for properties with the same name.
SELECT [pkID]
	,[Name]
	,COUNT(*)
FROM [dbo].[tblPageDefinition]
GROUP BY [pkID]
	,[Name]
HAVING COUNT(*) > 1

-- Checks the tblWorkProperty table looking for duplicate properties.
SELECT [fkPageDefinitionID]
	,[fkWorkPageID]
	,COUNT(*)
FROM [dbo].[tblWorkProperty]
GROUP BY [fkPageDefinitionID]
	,[fkWorkPageID]
HAVING COUNT(*) > 1

-- Checks the tblProperty table looking for two properties with the same name attached to one page.
SELECT [fkPageID]
	,PD.NAME
	,COUNT(*)
FROM [AHAEpi_Stage].[dbo].[tblProperty] P
LEFT JOIN [dbo].[tblPageDefinition] PD ON P.fkPageDefinitionID = PD.pkID
GROUP BY [fkPageID]
	,PD.NAME
HAVING COUNT(*) > 1

If any one of these queries return results you should investiage and delete the offending data row.

#88705
Edited, Jul 26, 2014 0:16
This thread is locked and should be used for reference only. Please use the Episerver CMS 7 and earlier versions forum to open new discussions.
* You are NOT allowed to include any hyperlinks in the post because your account hasn't associated to your company. User profile should be updated.