PropertyDefinitionSynchronizer bug on startup following a deploy


Came across an odd issue, possibly a rare race condition, where I was doing a deploy to a client site having added a couple of new fields to a page type. The particular field in question was a Url field.

I got the error:

2017-09-06 13:57:10,129 [11] WARN EPiServer.DataAbstraction.RuntimeModel.Internal.PropertyDefinitionSynchronizer: Page type model synchronizer couldn't save a property definition. A property with name "ExternalEventUrl" already exists

The field was a new field, and having checked the [tblPropertyDefinition] table I could see it had created the new field in the database, the id was after that of the id of other fields added to the page at the same time and in fact it was the last id for that page type.

Checking in the CMS I could see my other new field, a bool called 'ExternalEvent', but not the 'ExternalEventUrl' field.

After performing an IIS reset the field was then visible in the CMS and things are seeming to function as expected. 

The particular version of Episerver this client is running is - thought I'd log it here.

Sep 06, 2017 16:23

Are you upping assembly version when you make content type changes? If not it's smart to do so, especially in a load balanced scenario.

Sep 07, 2017 21:49

It isn't a load balanced environment but no I wasn't, so will try that in future.

It isn't an issues I've ever seen before either, and it didn't occur during the deploy to the UAT environment beforehand. Almost seemed like IIS / Episerver didn't start up or recycle correctly.

Sep 08, 2017 11:30
* 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.