{"action":"created","issue":{"url":"https://api.github.com/repos/KevinJump/uSync/issues/46","repository_url":"https://api.github.com/repos/KevinJump/uSync","labels_url":"https://api.github.com/repos/KevinJump/uSync/issues/46/labels{/name}","comments_url":"https://api.github.com/repos/KevinJump/uSync/issues/46/comments","events_url":"https://api.github.com/repos/KevinJump/uSync/issues/46/events","html_url":"https://github.com/KevinJump/uSync/issues/46","id":152977461,"number":46,"title":"Order of Sync Operations can cause YSOD","user":{"login":"KevinJump","id":431231,"avatar_url":"https://avatars.githubusercontent.com/u/431231?v=3","gravatar_id":"","url":"https://api.github.com/users/KevinJump","html_url":"https://github.com/KevinJump","followers_url":"https://api.github.com/users/KevinJump/followers","following_url":"https://api.github.com/users/KevinJump/following{/other_user}","gists_url":"https://api.github.com/users/KevinJump/gists{/gist_id}","starred_url":"https://api.github.com/users/KevinJump/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/KevinJump/subscriptions","organizations_url":"https://api.github.com/users/KevinJump/orgs","repos_url":"https://api.github.com/users/KevinJump/repos","events_url":"https://api.github.com/users/KevinJump/events{/privacy}","received_events_url":"https://api.github.com/users/KevinJump/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/KevinJump/uSync/labels/bug","name":"bug","color":"fc2929"}],"state":"open","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/KevinJump/uSync/milestones/7","html_url":"https://github.com/KevinJump/uSync/milestones/5.3.5%20-%20Mapper%20Release","labels_url":"https://api.github.com/repos/KevinJump/uSync/milestones/7/labels","id":1738178,"number":7,"title":"5.3.5 - Mapper Release","description":"Little fixes and the like + \r\n\r\nContent Mappers\r\n- Nested Conent\r\n- Grid","creator":{"login":"KevinJump","id":431231,"avatar_url":"https://avatars.githubusercontent.com/u/431231?v=3","gravatar_id":"","url":"https://api.github.com/users/KevinJump","html_url":"https://github.com/KevinJump","followers_url":"https://api.github.com/users/KevinJump/followers","following_url":"https://api.github.com/users/KevinJump/following{/other_user}","gists_url":"https://api.github.com/users/KevinJump/gists{/gist_id}","starred_url":"https://api.github.com/users/KevinJump/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/KevinJump/subscriptions","organizations_url":"https://api.github.com/users/KevinJump/orgs","repos_url":"https://api.github.com/users/KevinJump/repos","events_url":"https://api.github.com/users/KevinJump/events{/privacy}","received_events_url":"https://api.github.com/users/KevinJump/received_events","type":"User","site_admin":false},"open_issues":1,"closed_issues":3,"state":"open","created_at":"2016-04-29T09:34:58Z","updated_at":"2016-05-04T10:16:17Z","due_on":"2016-05-05T23:00:00Z","closed_at":null},"comments":0,"created_at":"2016-05-04T10:13:53Z","updated_at":"2016-05-04T10:21:41Z","closed_at":null,"body":"> We had converted a property on a document type (umbNaviHide) into a composition document type which was then added back to the document type that had originally had it.\r\n> \r\n> Since it is a umbraco reserved property name we could not alter the property name on the composition (which is normally how we would handle this). On our dev environment this worked flawlessly because the sequence of actions was very clear:\r\n> \r\n> remove property from doctype A\r\n> create new doc type B\r\n> add property to doc type B\r\n> add doc type B as a composition to doc type A\r\n> However, when these changes were synced to the next environment we encountered a runtime error about duplicate property names (umbNaviHide) on doctype A. This runtime error prevented access to {siteurl}/umbraco and as such was not resolvable via the GUI.\r\n> \r\n> We fixed the issue by removing the old property from cmsPropertyData and then removing the property from cmsPropertyType.\r\n> \r\n> However, we were concerned about future changes that involve property names and usync and are not that comfortable with such a specific recovery plan as we may not be the developers who maintain the system.\r\n> \r\n> Is there any current plan to help mitigate issues like this?\r\n"},"comment":{"url":"https://api.github.com/repos/KevinJump/uSync/issues/comments/216822071","html_url":"https://github.com/KevinJump/uSync/issues/46#issuecomment-216822071","issue_url":"https://api.github.com/repos/KevinJump/uSync/issues/46","id":216822071,"user":{"login":"KevinJump","id":431231,"avatar_url":"https://avatars.githubusercontent.com/u/431231?v=3","gravatar_id":"","url":"https://api.github.com/users/KevinJump","html_url":"https://github.com/KevinJump","followers_url":"https://api.github.com/users/KevinJump/followers","following_url":"https://api.github.com/users/KevinJump/following{/other_user}","gists_url":"https://api.github.com/users/KevinJump/gists{/gist_id}","starred_url":"https://api.github.com/users/KevinJump/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/KevinJump/subscriptions","organizations_url":"https://api.github.com/users/KevinJump/orgs","repos_url":"https://api.github.com/users/KevinJump/repos","events_url":"https://api.github.com/users/KevinJump/events{/privacy}","received_events_url":"https://api.github.com/users/KevinJump/received_events","type":"User","site_admin":false},"created_at":"2016-05-04T10:21:41Z","updated_at":"2016-05-04T10:21:41Z","body":"This is potentially complex.\r\n\r\nuSync / umbraco needs to know that the property it is putting on a doctype isn't used on any child composition types, and then either not do it, or do something about the child one _(Just deleting doctype properties can be quite destructive as it will remove all the content as well)_ \r\n\r\nI would assume the logic is somewhere in the core to stop you doing this - its not in the core api bits because you can, so there must be a check somewhere else. putting checks on all doctype property creation could cause quite the slow down, so it would probably be some form of cache to do this at any great speed. \r\n\r\n"}}