Copied to clipboard

Flag this post as spam?

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


  • philw 99 posts 434 karma points
    Aug 19, 2013 @ 10:10
    philw
    0

    Page I can't delete

    I have a page (called unhelpfully test-page) which I can't delete from an Umbraco install.

    I have looked around here, and found this report which is similar in some ways, although the work-around and similar efforts to get rid of the deleted page all fail, plus I'm on 6.0.5 and that's from a much 4.*.

    If I create a page with this name, then at least I don't have a 404 on this link. I could manually strip the thing from my menu XLST I suppose, but I just want rid of it. I tried moving it around, publishing and unpublishing, refreshing caches, rebooting the server, recycling the app pool, everything I can think of to get rid if it, but it will not die.

    Is there somewhere I may look in the database to find and delete this thing - I just need to get rid of it as I can't release the site with this extra page there, 404 or not; it's embarassing. Any ideas - how do I put a page to death?

     

  • philw 99 posts 434 karma points
    Aug 19, 2013 @ 11:20
    philw
    0

    Ok, step 1... upgrade from 6.0.5 to Umbraco v6.1.3 (Assembly version: 1.0.4954.19342). That makes no difference.

    There is a post here which describes similar symptoms and gives me some clues. Some investigations below. I'm thinking that there is a phantom page in my system somewhere, and that somewhere is where the XSLT is looking. I'm not sure where that is, but somewhere in these tables I'm going to find 21 things, instead of the 20 pages I appear to have. Once I find that, I can delete mr 21 and anything he's dependent on... Does anyone know which table I should be looking in?

    use [xxx_Umbraco]
    go
    SELECT distinct [nodeId] FROM [cmsPreviewXml]
    -- returns 20 cached things.

    select distinct contentId from cmsContentVersion order by contentId asc
    -- Gets me 92 separate content IDs, some of which are clearly in [cmsPreviewXml] 
    -- These look like they may be page change records. Maybe there's one row here for each version of each page?
    -- They have a primary key which presumably is used elsewhere...
    select * from cmsDocument
    -- Gets 841 rows. These look like pages again, with release and update dates etc, pointers to template ID. Page titles.
    -- They have a "newest" flag. So maybe this is where the separate document versions are listed?
    select * from cmsDocument where text like '%Test%'
    -- Nothing - my phantom document is not here.
    -- How about that "newest" flag?
    -- How about that "newest" flag?
    select * from cmsDocument where newest = 1  -- looks like a binary flag. 20 rows. So I bet these map onto cmsPreviewXml
    order by nodeId asc
    
    -- this pulls the entry for each page... 20 of them.. select * from cmsDocument doc left join cmsPreviewXml xml on (doc.nodeId = xml.nodeId) and (doc.versionId = xml.versionId) where doc.newest = 1
  • philw 99 posts 434 karma points
    Aug 19, 2013 @ 13:16
    philw
    100

    Ok, got it I think.

    In the end I searched every column in the entire Umbraco database for the name of this damned phantom page, and it was not in there anywhere. I'd cleared the caches on everything (app pool, IIS, content provider cache), so I couldn't figure out where the damned thing was coming from, but I knew it wasn't there. Eventually I found a file in App_Data called "umbraco.config", which looks like a bunch of pre-cooked XML...

    In there is an entry "GeneralPage id="xxxx" with the name of the phamton in it. I googled, and apparently that's an Umbraco cache file, so I deleted that, then cleared everyone else's caches... and the thing has gone. I hope it's gone for good...!

Please Sign in or register to post replies

Write your reply to:

Draft