Copied to clipboard

Flag this post as spam?

This post will be reported to the moderators as potential spam to be looked at


  • Simon Dingley 1470 posts 3427 karma points c-trib
    Aug 20, 2015 @ 15:17
    Simon Dingley
    3

    No node exists with id '-133' - Umbraco v6.2.5

    In case someone else is caught out by this I thought I would post it up.

    I have a membership site which has been upgraded from v4 to v6. Upgrade seemed to go fine and has been live for some time. Today a change was made to the member type and saved which resulted in the following exception:

    No node exists with id '-133'
    
    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.ArgumentException: No node exists with id '-133'
    
    Source Error: 
    
    An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.
    
    Stack Trace: 
    
    
    [ArgumentException: No node exists with id '-133']
       umbraco.cms.businesslogic.CMSNode.setupNode() +274
       umbraco.cms.businesslogic.datatype.DataTypeDefinition.setupNode() +34
       umbraco.cms.businesslogic.CMSNode..ctor(Int32 Id) +36
       umbraco.cms.businesslogic.datatype.<>c__DisplayClass3.<GetDataTypeDefinition>b__2() +25
       Umbraco.Core.Cache.<>c__DisplayClass9`1.<GetCacheItem>b__8() +10
       System.Lazy`1.CreateValue() +411
       System.Lazy`1.LazyInitValue() +152
       System.Lazy`1.get_Value() +75
       Umbraco.Core.Cache.HttpRuntimeCacheProvider.GetCacheItem(String cacheKey, Func`1 getCacheItem, Nullable`1 timeout, Boolean isSliding, CacheItemPriority priority, CacheItemRemovedCallback removedCallback, CacheDependency dependency) +950
       Umbraco.Core.Cache.HttpRuntimeCacheProvider.GetCacheItem(String cacheKey, Func`1 getCacheItem) +111
       Umbraco.Core.Cache.CacheProviderExtensions.GetCacheItem(ICacheProvider provider, String cacheKey, Func`1 getCacheItem) +115
       umbraco.cms.businesslogic.datatype.DataTypeDefinition.GetDataTypeDefinition(Int32 id) +175
       umbraco.controls.GenericProperties.GenericProperty.UpdateInterface() +245
       umbraco.controls.GenericProperties.GenericProperty.Page_Load(Object sender, EventArgs e) +36
       System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +51
       System.Web.UI.Control.OnLoad(EventArgs e) +95
       System.Web.UI.Control.LoadRecursive() +59
       System.Web.UI.Control.LoadRecursive() +131
       System.Web.UI.Control.LoadRecursive() +131
       System.Web.UI.Control.LoadRecursive() +131
       System.Web.UI.Control.LoadRecursive() +131
       System.Web.UI.Control.LoadRecursive() +131
       System.Web.UI.Control.LoadRecursive() +131
       System.Web.UI.Control.LoadRecursive() +131
       System.Web.UI.Control.LoadRecursive() +131
       System.Web.UI.Control.LoadRecursive() +131
       System.Web.UI.Control.LoadRecursive() +131
       System.Web.UI.Control.LoadRecursive() +131
       System.Web.UI.Control.LoadRecursive() +131
       System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +678
    

    After some digging I found that when saving the member type a bunch of new properties were added to address each of the following warnings found in the log:

    2015-08-20 14:55:37,837 [12] WARN  Umbraco.Core.Models.Member - [Thread 14] Trying to access the 'Comments' property on Umbraco.Core.Models.Member but the umbracoMemberComments property does not exist on the member type so a default value is returned. Ensure that you have a property type with alias: umbracoMemberComments configured on your member type in order to use the 'Comments' property on the model correctly.
    2015-08-20 14:55:37,837 [12] WARN  Umbraco.Core.Models.Member - [Thread 14] Trying to access the 'IsApproved' property on Umbraco.Core.Models.Member but the umbracoMemberApproved property does not exist on the member type so a default value is returned. Ensure that you have a property type with alias: umbracoMemberApproved configured on your member type in order to use the 'IsApproved' property on the model correctly.
    2015-08-20 14:55:37,837 [12] WARN  Umbraco.Core.Models.Member - [Thread 14] Trying to access the 'IsLockedOut' property on Umbraco.Core.Models.Member but the umbracoMemberLockedOut property does not exist on the member type so a default value is returned. Ensure that you have a property type with alias: umbracoMemberLockedOut configured on your member type in order to use the 'IsLockedOut' property on the model correctly.
    2015-08-20 14:55:37,837 [12] WARN  Umbraco.Core.Models.Member - [Thread 14] Trying to access the 'LastLoginDate' property on Umbraco.Core.Models.Member but the umbracoMemberLastLogin property does not exist on the member type so a default value is returned. Ensure that you have a property type with alias: umbracoMemberLastLogin configured on your member type in order to use the 'LastLoginDate' property on the model correctly.
    2015-08-20 14:55:37,837 [12] WARN  Umbraco.Core.Models.Member - [Thread 14] Trying to access the 'LastLoginDate' property on Umbraco.Core.Models.Member but the umbracoMemberLastLogin property does not exist on the member type so a default value is returned. Ensure that you have a property type with alias: umbracoMemberLastLogin configured on your member type in order to use the 'LastLoginDate' property on the model correctly.
    2015-08-20 14:55:37,837 [12] WARN  Umbraco.Core.Models.Member - [Thread 14] Trying to access the 'LastPasswordChangeDate' property on Umbraco.Core.Models.Member but the umbracoMemberLastPasswordChangeDate property does not exist on the member type so a default value is returned. Ensure that you have a property type with alias: umbracoMemberLastPasswordChangeDate configured on your member type in order to use the 'LastPasswordChangeDate' property on the model correctly.
    2015-08-20 14:55:37,837 [12] WARN  Umbraco.Core.Models.Member - [Thread 14] Trying to access the 'LastLockoutDate' property on Umbraco.Core.Models.Member but the umbracoMemberLastLockoutDate property does not exist on the member type so a default value is returned. Ensure that you have a property type with alias: umbracoMemberLastLockoutDate configured on your member type in order to use the 'LastLockoutDate' property on the model correctly.
    

    Unfortunately when it created them it set the datatypeId to a non-existent datatype which I found in a different v7 install to be Umbraco.NoEdit. The following script rectified the problem setting the datatypeId to a label.

    UPDATE       cmsPropertyType
    SET                dataTypeId = - 92
    WHERE        (dataTypeId = - 133)
    

    This may have been a result of something overlooked in the upgrade process or something documented that I was missed but at least it's fixable .

  • Umang Desai 3 posts 76 karma points
    Jan 22, 2016 @ 13:51
    Umang Desai
    3

    SOLUTION...

    add membership tab under customers member group

    try and add new property.

    -- Comments, umbracoMemberComments, textbox multiple, membership tab

    hit save -- should see error -- may need to restart app pool to get past it.

    run this once working again-

    SELECT TOP (200) pk, nodeId, dbType, propertyEditorAlias FROM cmsDataType --- delete node -133 using following sql in edit view of cmsDataType table

    UPDATE cmsPropertyType SET dataTypeId = - 92 WHERE (dataTypeId = - 133)

    Update propertytypegroupid from null to 62 (new membership tab) using the following in edit view

    SELECT TOP (1000) id, dataTypeId, contentTypeId, propertyTypeGroupId, Alias, Name, helpText, sortOrder, mandatory, validationRegExp, Description FROM cmsPropertyType WHERE (Alias LIKE '%member%') ORDER BY contentTypeId

    Potential knock on effect on logging in is as now users are not approved.

    -- SQL approves all users. Run the following

    UPDATE [ArenaUmbracoProUpgrade].[dbo].[cmsPropertyData] SET dataInt = 1 where propertytypeid = 250

    //250 - ismemberapproved

Please Sign in or register to post replies

Write your reply to:

Draft