我思故我在我有我精彩--liangqihui

爱欲追而情已逝,子欲孝而亲不待。人生的困苦又怎能用一个难字囊尽百味
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

PortalSiteMapProvider was unable to fetch children for node

Posted on 2010-11-26 16:17  挥辉  阅读(1549)  评论(0编辑  收藏  举报

今天在单位里做系统巡检的时候发现使用F5做负载均衡的Moss平台,通过某一个节点访问publish 类型的站点左侧导航条(navigation)一直会出现相关站点和列表展示失败的错误,

 

查询服务器的系统日志以及Sharepoint应用日志中分别发现两对应条错误内容,经过这两条日志实际上是由同一个原因在不同层面上产生的,因此通过sharepoint配置解决相关问题。

错误日志记录:

Moss应用日志1

----------------

11/26/2010 12:08:49.10  w3wp.exe (0x1858)                        0x1C20 CMS                            Publishing                     8vze Unexpected PortalSiteMapProvider was unable to fetch parent for node at: /sites/KnowledgeCenter/SampleBlogSite, message: String was not recognized as a valid DateTime., stack trace:    at System.DateTimeParse.Parse(String s, DateTimeFormatInfo dtfi, DateTimeStyles styles)     at System.DateTime.Parse(String s)     at Microsoft.SharePoint.Publishing.Navigation.SPNavigationSiteMapNode..ctor(PortalWebSiteMapNode webNode, SPNavigationNode node, PortalSiteMapNode parentNode, NodeTypes type, String url, String title, String description)     at Microsoft.SharePoint.Publishing.Navigation.ProxySiteMapNode..ctor(PortalWebSiteMapNode webNode, SPNavigationNode node, PortalSiteMapNode parentNode, CachedObject cachedObject)     at Microsoft.SharePoint.Publishing.Navigation.PortalWebSiteMapNode.ProcessSPNavigationN... 
11/26/2010 12:08:49.10* w3wp.exe (0x1858)                        0x1C20 CMS                            Publishing                     8vze Unexpected ...ode(SPNavigationNode node, SPNavigationNode previousSibling, PortalSiteMapNode parentNode)     at Microsoft.SharePoint.Publishing.Navigation.PortalWebSiteMapNode.PopulateNavigationChildren(NodeTypes includedTypes)     at Microsoft.SharePoint.Publishing.Navigation.PortalWebSiteMapNode.get_ProxyNode()     at Microsoft.SharePoint.Publishing.Navigation.PortalWebSiteMapNode.GetNavigationParent()     at Microsoft.SharePoint.Publishing.Navigation.PortalSiteMapProvider.GetParentNode(SiteMapNode node) 

System application 日志2

--------------

Event Type: Error
Event Source: Windows SharePoint Services 3
Event Category: Topology
Event ID: 8214
Date:  20101126
Time:  1:00:57 PM
User:  N/A
Computer: CNSHJSMOSSAPP02
Description:
The description for Event ID ( 8214 ) in Source ( Windows SharePoint Services 3 ) cannot be found. The local computer may not have the necessary registry information or message DLL files to display messages from a remote computer. You may be able to use the /AUXSOURCE= flag to retrieve this description; see Help and Support for details. The following information is part of the event: A request was made for a URL, http://cnshjsmossapp02/ (cnshjsmossapp02在此处代表实际的sharepoint节点服务器名称), which has not been configured in Alternate Access Mappings.  Some links may point to the Alternate Access URL for the default zone, http://moss.XXXX.com.cn/ (站点NLB URL入口).  Review the Alternate Access mappings for this Web application at http://MOSSAPPURL:管理端口/_admin/AlternateUrlCollections.aspx and consider adding http://cnshjsmossapp02/ as a Public Alternate Access URL if it will be used frequently.  Help on this error: http://go.microsoft.com/fwlink/?LinkId=114854.

解决

登陆http://MOSSAPPURL:管理端口/_admin/AlternateUrlCollections.aspx 中添加另一个物理实际节点http://cnshjsmossapp02/ 

 

1、登陆http://mossappurl/ 点击左上角的Alternate Access Mapping Collection->change Alternate Access Mapping Collection,在弹出选择页面中选中'Sharepoint 80           http://moss.XXXX.com.cn/ '选项

 

2、在http://moss.XXXX.com.cn/ 配置页面中,点击'Add Internal URLs '选项,在'Add Internal URL (URL protocol, host and port) '中添加http://cnshjsmossapp02/ ,zone选中'default',之后点击OK

Reference 1:

----------------------------

PortalSiteMapProvider was unable to fetch children for node

I ran into a strange error today and thought it needed documenting. I have two WFE in a small farm. One server the navigation was fine but on the other server the navigation had an error. The Nodes where missing except for one code that said ERROR. When you mouse over it you got the followed exception and stack trace:

PortalSiteMapProvider was unable to fetch children for node at URL: /, message: Object reference not set to an instance of an object., stack trace: at Microsoft.SharePoint.Publishing.Navigation.PortalSiteMapNode.GetNavigationChildren(NodeTypes includedTypes, NodeTypes includedHiddenTypes, OrderingMethod ordering, AutomaticSortingMethod method, Boolean ascending, Int32 lcid) at Microsoft.SharePoint.Publishing.Navigation.PortalSiteMapNode.GetNavigationChildren(NodeTypes includedHiddenTypes) at Microsoft.SharePoint.Publishing.Navigation.PortalSiteMapProvider.GetChildNodes(PortalSiteMapNode node, NodeTypes includedHiddenTypes)

 

I fixed this by adding the second server to the Alternative Access Mappings (the first one was already in there). I apologize but I don't know the details of why this fixed the error. If I get time I will give into the details of the why.

 

Reference 2:

----------------------------

 

Follow up on Site crash in MOSS 2007

April 16th, 2007 by steinhof

Finally, MS were able  to solv the issue with my MOSS site.

It turned out to be an issue with the navigation nodes, where nodes where duplicated when publishing pages expired.
I had some long running sessions with the guys from Microsoft Support in Madrid and Redmond, and at some time, they could see 1800 SPRequest object calls, each consuming approx. 2MB on the server. No wonder the poor SharePoint was brought to its knees. But it wasn't a memory leek, mind you.
If we just set the timeout on IIS to a very large number, we could actually get MOSS to respond within an hour Big Smile.

Now, after MS Support was able to reproduce this behaviour, things went extremely fast, and I received a hotfix within 12 hours.
Apparantly the hotfix is somewhat related to the knowledge base article kb932621, so if you experience similar problems, I'd suggest you contact your local MS representative, with this reference in mind.

  ------

Site crash on MOSS2007

March 21st, 2007 by steinhof

Hi,

 Just posted the following on the MSDN forum.

—————————-

For some time, I've been struggling with a strange behaviour in Office SharePoint Server 2007, rendering my corporate intranet site completely useless. This is the scenario:

A medium farm with 2 WFE's, 1 index server and 2 SQL Servers.

A custom sitedefinition based on the publishing intranet site template and utilizing several site and web features, including masterpages, pagelayouts and content types. Creating a new sitecollection also deploys several subsites. All this works well, and we have actually accomplished a great deal of automation, in order to meet the customers needs.

After some time, were users have tested the environment, creating a small amount of content, ie. newsarticles, the portal suddenly degrades over a period of hours, until it no longer responds to any requests at all. The Central Administration and other sitecollections work fine though. The error in the ULS is rather strange and seemingly relates to the publishing pages, which have expired:

1) CMS Publishing 8vzf
Unexpected PortalSiteMapProvider was unable to fetch children for node at URL: /News, message: Thread was being aborted., stack trace:    at System.Threading.Monitor.Enter(Object obj)     at Microsoft.SharePoint.Publishing.Navigation.PortalWebSiteMapNode.PopulateNavigationChildren()     at Microsoft.SharePoint.Publishing.Navigation.PortalSiteMapNode.GetNavigationChildren(NodeTypes includedTypes, NodeTypes includedHiddenTypes, OrderingMethod ordering, AutomaticSortingMethod method, Boolean ascending, Int32 lcid)     at Microsoft.SharePoint.Publishing.Navigation.PortalSiteMapNode.GetNavigationChildren(NodeTypes includedHiddenTypes)     at Microsoft.SharePoint.Publishing.Navigation.PortalSiteMapProvider.GetChildNodes(PortalSiteMapNode node, NodeTypes includedHiddenTypes) 

2) Windows SharePoint Services General 8kh7 High
The File /News/Pages/Test.aspx cannot be added (…) draft 

3) CMS Publishing 0 Unexpected
While initializing navigation, found Page placeholder but object was not found at: /NEWS/PAGES/TEST.ASPX.

This error message is shown repeatedly for each publishing page in the news sitecollection.

Trying to open the site, just results in a timeout and unexpected error.

This behaviour occurs both in our test environments (VPC and VMWare and in production (dedicated hardware).
One of my collegues experienced the same behaviour on a small farm, with practically no customization done. He had only 1 publishing page and managed to delete it from the /_layouts/sitemanager.aspx page. And, voila everything worked again. Evidently, this is not a solution for us, and what strikes me as odd, is that it apparently occurs after a while, and seemingly has nothing to do with customized pagelayouts, sitestructure or anything else.

Has anyone out there experienced the same strange behaviour?

 ———————-

I have an incident at Microsoft and hope to get some information and a solution soon.