Take the 2-minute tour ×
SharePoint Stack Exchange is a question and answer site for SharePoint enthusiasts. It's 100% free, no registration required.

I've got an issue where the tertiary level navigation randomly dissappears on a publishing SharePoint 2010 site. I can reproduce the dissappearance by recycling the app pool or flushing the object cache. It seems like it is a caching issue as the navigation providers do use caching for performance. Once the menu dissappears, I can get it back by simply going to the navigation settings for the SPWeb and changing the order of the nodes. This seems to invalidate the cache and the menu appears again.

Below is a snippet of the portalsitemapdatasource and aspmenu elements.

    <publishingnavigation:portalsitemapdatasource id="mapThirdLevelNavigation" runat="server"
        sitemapprovider="CurrentNavigation" enableviewstate="false" startfromcurrentnode="true"
        startingnodeoffset="1" showstartingnode="false" TreatStartingNodeAsCurrent="False" />

    <sharepoint:aspmenu id="mnuBottomNavigation" runat="server" datasourceid="mapTopNavigation"
        enableviewstate="false" accesskey="<%$Resources:wss,navigation_accesskey%>"
        orientation="Horizontal" maximumdynamicdisplaylevels="0" dynamichorizontaloffset="0"
        staticpopoutimagetextformatstring="" skiplinktext="" staticsubmenuindent="0"
        cssclass="bottom-topNavContainer" />

Google hasn't been very helpful so any assistance provided is very much appreciated.

Edit: Just noticed that I didn't need to change the order of the nodes for the menu items to reappear, just loading the _layouts/AreaNavigationSettings.aspx page for the SPWeb object does the trick. It's looking even more like a cache issue.

share|improve this question
    
I know this issue too. Since I couldn't reproduce it, I didn't open a support case at Microsoft.... In my case it's also inside a publishing page. It happens always after solution and/or feature update followed by flushing blob cache. After this, on some pages navigation disappeared. I would be interested in an automatic way (e.g. powershell script) to fix the problem... –  user4060 Jul 10 '11 at 21:38
add comment

1 Answer

the navigation is cached in the object cache, as can be read about here: http://technet.microsoft.com/en-us/library/cc298466(office.12).aspx. And anything stored in memory is gone with an app pool recycle.

I'd try add a webrequest with powershell to the page you mentioned as part of your maintenance / wakeup / deployment scripts.

share|improve this answer
    
We've got warm up scripts in place at the moment for the app pool recycles which happen once in 24 hours. The cache expires randonly multiple times during the day so i don't think this'll help. I've got an idea I'll try this evening and I'll let you know how it goes. –  e p Jul 14 '11 at 3:05
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.