Softlanding: SharePoint Consulting & Managed Services | Vancouver, BC

    Delivering Solutions, Empowering Clients

    Softlanding specializes in SharePoint Solutions, Managed Services, Microsoft Enterprise Infrastructure and specialized IT Staff Augmentation. Our mission is to exceed your expectations by combining technical excellence, the highest ethical standards and a deep understanding of your business needs to provide you with the most effective, reliable and scalable solutions.

     SharePoint Summit 2014 Vancouver

    Come join us at SharePoint Summit 2014 in Vancouver on October 27 to 29. Register before September 5, 2014 and get 15% off. We'll see you there!

    Register >>

     SharePointROI Sustainment Services

    SharePointROI is a, fixed- fee managed service providing end-to-end SharePoint sustainment, user support and adoption services. Eliminate SharePoint expertise hiring headaches and get the most out of your SharePoint investment.

    Learn More >>

     2014 Profit 500 List

    Softlanding is proud to be listed on the 26th annual PROFIT 500 ranking of Canada’s Fastest-Growing Companies by Canadian Business and PROFIT magazines.

    More >>

     We're Hiring!

    We're on the lookout for fun, talented people to join our growing teams. If you're looking to move up in your career, come check us out.

    Openings >>



    Takes Place:
    Description: Please join us for Cocktails & Canapés and unwind with your fellow industry experts, exhibitors, speakers and attendees.

     Featured Solutions

    ​Content Worker

    Contentworker provides full featured, legal focused document management functionality, extending SharePoint into a powerful, modern and intuitive matter centric,  document and email management solution.


     Hidden Title

    The Softlanding Cross Site Navigation Provider

    Allow users to seamlessly navigate across site collections and even web applications while still experiencing a consistent navigation look and feel. Contact us for more information.



    Posted on:
    Categories: SharePoint
    We were recently called to troubleshoot a SharePoint server services down situation on a client's staging farm.All browsing of SharePoint sites resulted in correlation errors on the configured web front end server.Browsing sites on the configured application server also hosting the SharePoint Foundation Web Application service, were fully functional. This web front end server is the primary web application server servicing client request and therefore was the only server with the Forefront product installed and configured. This identified the WFE as the problematic server for further investigation.SymptomsCorrelation errors when browsing any site protected by Microsoft Forefront Protection 2010 for SharePointSource SharePoint Foundation / ULS & Application Error EventID 1 (Antivirus Scanner timed out) logged immediately when clients request web services from web application servicesSource FSCEventing Application Information EventID 1076 (Forefront Protection Eventing Service has stopped) logged continuously on server running Microsoft Forefront Protection 2010 for SharePointMicrosoft Forefront Server Protection Controller windows service will not start due to "dependency" errorsMicrosoft Forefront Server Protection console will hang/freeze upon launch from the start menuCauseThese symptoms can be caused when the Forefront Protection 2010 for SharePoint will not start successfully.Specifically the "Microsoft Forefront Server Protection Controller" service will not start. When the Forefront Protection 2010 for SharePoint is installed, this service processes all incoming browsing requests through the Forefront Antivirus scanning engine.When the product is enabled, SharePoint browsing will not function without this request handler. The services must be running. In this way, it ensures protection of the farm. In this situation the root cause of the service failure was a corrupted config file in the Forefront Protection 2010 for SharePoint application directory."C\Program Files\Microsoft Forefront Protection for SharePoint\Data\Configuration.xml"The application periodically creates a backup of this file (Configuration.bak), in this case the backup was also corrupted. This was likely due to a hard shutdown of the server.ResolutionThe final resolution of this issue was using a functioning "Configuration.xml" file "C\Program Files\Microsoft Forefront Protection for SharePoint\Data\Configuration.xml" from a working farm (our errors were on a staging farm so fortunately we had a producion farm to copy the file from).The steps to resolve and tools used to troubleshoot the issue are below.Implementing the fixStop all SharePoint services on the server with the failing Forefront product. In out two server farm, the web front end was the only server with the product/services running.Stop the windows SharePoint services in orderSharePoint Administration ServicesSharePoint Timer ServicesSharePoint Tracing ServicesWorld Wide Web Publishing services Once these services have stopped successfully, we disabled the Forefront services by using the FSCUtility.exe utility from the application program directory.C\Program Files\Microsoft Forefront Protection for SharePoint\FSCUtility.exe /disableRef http// Replace the corrupted "Configuration.xml" file with a known good, or file from backup. Re enable Forefront servicesC\Program Files\Microsoft Forefront Protection for SharePoint\FSCUtility.exe /enable Start the windows SharePoint services in orderSharePoint Administration ServicesSharePoint Timer ServicesSharePoint Tracing ServicesWorld Wide Web Publishing services Start the "Microsoft Forefront Server Protection Controller" windows service on the server. This will start all required subordinate Forefront services.OutcomeIn our scenario, this restored all Forefront services as well as all SharePoint services and brought the farm back to a functional state.The Forefront console was then fully functional and the product was fully configurable.Troubleshooting Tools usedSharePoint ULS Log ViewerReviewing the ULS logs on the web front end server revealed it as the only problematic server as well as identified the "Antivirus Scanner timed out" errors immediately on browsing the sites. This pointed us to investigate the Forefront product as the cause.Sysinternals ProcmonUsing procmon on the server while starting the Forefront Server Protection Controller windows service illustrated high numbers of reads/failures on the "C\Program Files\Microsoft Forefront Protection for SharePoint\Data\Configuration.xml" file on the file system.We also noticed continued reading/writing to the "C\Program Files\Microsoft Forefront Protection for SharePoint\Data\Configuration.bak" configuration backup file.Forefront Management ShellThe Microsoft Forefront Protection 2010 for SharePoint product has a PowerShell console that allows for non-gui administration of the Forefront product.Ref http// hoped to elevate the tracing levels of the product for further troubleshooting with "Set-FsspTracing -Level Verbose"however, this would error out likely due to the controller services failing.

    Posted on:
    Categories: SharePoint
    ScenarioWhen you click on the TimeSheet link in Project Server 2013 an error is shown.SolutionULS Logs showed the following stack trace[bucketHash3754B72C] Exception occured in method 'TimeSheet.CreateTimesheet' System.ArgumentException An item with the same key has already been added. at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add) at System.Linq.Enumerable.ToDictionary[TSource,TKey,TElement](IEnumerable`1 source, Func`2 keySelector, Func`2 elementSelector, IEqualityComparer`1 comparer) at Microsoft.Office.Project.Server.Events.ServerEventManager.ConfiguredServerEvents.EventHandlerConfiguration.GetInstance(ProjectSite projectSite) at Microsoft.Office.Project.Server.Events.ServerEventManager.ConfiguredServerEvents..ctor(ProjectSite projectSite) at Microsoft.Office.Project.Server.Events.ServerEventManager.ConfiguredServerEvents.<>c__DisplayClass8.<GetInstance>b__7() at Microsoft.Office.Project.Server.Utility.LazySet`2.GetValue(TKey key, Func`1 instanceFactory) at Microsoft.Office.Project.Server.Events.ServerEventManager.ConfiguredServerEvents.GetInstance(Guid siteUid) at Microsoft.Office.Project.Server.Events.ServerEventManager.<GetServerEventManager>b__0(IPlatformContext context) at System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd(TKey key, Func`2 valueFactory) at Microsoft.Office.Project.Server.Events.ServerEventManager.GetServerEventManager(IPlatformContext platformContext) at Microsoft.Office.Project.Server.BusinessLayer.TimeSheet.CreateTimesheet(TimesheetDataSet dsDelta, PreloadType preloadType) at Microsoft.Office.Project.Server.Wcf.Implementation.TimeSheetImpl.<>c__DisplayClass45.<CreateTimesheet>b__44() at Microsoft.Office.Project.Server.Wcf.Implementation.WcfMethodInvocation.InvokeBusinessObjectMethod(String businessObjectName, String methodName, IEnumerable`1 actions) StackTrace at Microsoft.Office.Project.Server.Native.dll (sig=874dbfdc-4770-4b1a-81f8-2b3d83ee10e5|2|, offset=3C1E) at Microsoft.Office.Project.Server.Native.dll (offset=1255D)Based on the stack trace, I know the issue is that Microsoft.Office.Project.Server.Events.ServerEventManager.ConfiguredServerEvents.EventHandlerConfiguration.GetInstance() method returns two items with the same id.Open the code using JustDecompile or ReflectorIssue occurs at the highlighted line, where the code converts eventHandlersDataSet object to a Dictionary with the Key of PSEventID.Next, I looked at the ReadEventHandlerAssociations() method to see where it's getting its data from. The code lead us to a ReadEventReceivers() method.This code calls the "MSP_ADMIN_ReadEventReceivers" Stored Procedure and returns a EventHandlersDataSet.After dissecting the MSP_ADMIN_ReadEventReceivers Stored Procedure, I was able to create the following query"SELECT EVENT_ID FROM pub.MSP_EVENT_HANDLERS GROUP BY EVENT_ID"When I ran this query it showed that Event_ID 95 had two items.Removing the AxUtils.ResourceEventsForAxSync Event Handler from the "Server Side Event Handlers" menu in Central Administration resolved the issue.