<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:atom="https://www.w3.org/2005/Atom" xmlns:sy="https://purl.org/rss/1.0/modules/syndication/" xmlns:dc="https://purl.org/dc/elements/1.1/" xmlns:content="https://purl.org/rss/1.0/modules/content/" xmlns:wfw="https://wellformedweb.org/CommentAPI/" xmlns:slash="https://purl.org/rss/1.0/modules/slash/"
  version="2.0">
  <channel>
    <title>Paresh's blog</title>
    <atom:link
      href="https://docs.microsoft.com/archive/blogs/pasen/feed.xml"
      rel="self"
      type="application/rss+xml" />
    <link>https://docs.microsoft.com/archive/blogs/pasen/feed.xml</link>
    <description>All things are difficult before they are easy- Thomas Fuller</description>
    <lastBuildDate>Sun, 12 Apr 2015 13:22:19 GMT</lastBuildDate>
    <language>en-US</language>
    <sy:updatePeriod>hourly</sy:updatePeriod>
    <sy:updateFrequency>1</sy:updateFrequency>
    <item>
      <title>Issue in crawl after certificate is updated in FAST Search for SharePoint 2010</title>
      <link>https://docs.microsoft.com/archive/blogs/pasen/issue-in-crawl-after-certificate-is-updated-in-fast-search-for-sharepoint-2010</link>
      <pubDate>Tue, 31 Jul 2012 10:54:00 GMT</pubDate>
      <dc:creator><![CDATA[Paresh Sen]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/pasen/2012/07/31/issue-in-crawl-after-certificate-is-updated-in-fast-search-for-sharepoint-2010/</guid>
      <description><![CDATA[Recently we observed that our crawl was continuing for a long time without any progress. On looking...]]></description>
      <content:encoded><![CDATA[<p>Recently we observed that our crawl was continuing for a long time without any progress. On looking at the eventlog we found the below error:</p>
<ul>
<li>&nbsp;"Failed to connect to SERVER Failed to initialize session with document engine: Unable to resolve Contentdistributor."</li>
</ul>
<p>We found that FAST certificate had expired. We updated the certificate and crawl ran without issue. however, next day crawl started behaving as earlier. this time the error logged in eventlog was different:</p>
<ul>
<li>&nbsp;"Failed to connect to SERVER. Failed to initialize session with document engine: Unable to find master Contentdistributor.&nbsp; Ensure that all Contentdistributors in the ESP installation are listed when creating icontent_manager."</li>
</ul>
<p>On investigating we found that during the updation of the certificate, new certificate was generated on the admin node and non-admin node was still retaining the old certificate.</p>
<p><strong>Issue:</strong></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Certificate was not properly updated in all the FAST non-admin nodes.</p>
<p><b>Resolution :</b></p>
<ul>
<li>Exported the certificate from admin node&nbsp;</li>
<li>imported into non-admin node where secondary content distributor was running&nbsp;</li>
<li>stopped fast services on non-admin node&nbsp;</li>
<li>ran installer\scripts\replacedefaultcertificate.ps1 -thumbprint "certthumbprint"&nbsp;</li>
<li>started fast services on non-admin node</li>
</ul>
<p>More details on managing certificates can be found <a title="here" href="https://technet.microsoft.com/en-us/library/ff381244.aspx">here</a>.</p>
<p>&nbsp;</p>]]></content:encoded>
    </item>
    <item>
      <title>After full crawl no data is being retrieved: issues with index in FAST Search for SharePoint 2010</title>
      <link>https://docs.microsoft.com/archive/blogs/pasen/after-full-crawl-no-data-is-being-retrieved-issues-with-index-in-fast-search-for-sharepoint-2010</link>
      <pubDate>Mon, 23 Apr 2012 03:25:41 GMT</pubDate>
      <dc:creator><![CDATA[Paresh Sen]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/pasen/2012/04/23/after-full-crawl-no-data-is-being-retrieved-issues-with-index-in-fast-search-for-sharepoint-2010/</guid>
      <description><![CDATA[We recently came across this issue, we wanted to clean up our old indexes and build our environment....]]></description>
      <content:encoded><![CDATA[<p>We recently came across this issue, we wanted to clean up our old indexes and build our environment. We rest the index from SharePoint and FAST server and did a full crawl. We observed that after the crawl is complete there were no data being retrieved in our searches. On looking further we observed that the FASTSearch conetnet collection and crawl logs are indicating that all the data has been crawled and indexed.</p>
<p>We performed an incremental crawl and amazingly we got some of the data searchable i.e. whatever data was re-crawled was not retrievable. Looking at the indexer info we got something similar to below details:</p>
<p>&lt;documents size="26854297742.000000" total="XXXXX" indexed="YYYYY" not_indexed="ZZZZZ"/&gt;</p>
<p>Here XXXXX = YYYYY + ZZZZZ.</p>
<p>This clearly showed that there were some issue with the indexes. We needed to re-index the data to get the issue fixed. we used the below command for the same:</p>
<div dir="ltr" id="imcontent"><span style="color: #000000; font-family: 'Segoe UI'; font-size: 10pt; direction: ltr; word-wrap: break-word;" dir="ltr">indexeradmin resetindex -a</span></div>
<div dir="ltr"><span style="color: #000000; font-family: 'Segoe UI'; font-size: 10pt; direction: ltr; word-wrap: break-word;" dir="ltr"></span>&nbsp;</div>
<div dir="ltr"><span style="color: #000000; font-family: 'Segoe UI'; font-size: 10pt; direction: ltr; word-wrap: break-word;" dir="ltr">Once the processing completed, we got all the data back in search.</span></div>]]></content:encoded>
    </item>
    <item>
      <title>Using SharePoint 2010 Search webservice in Javascript for FAST search for sharepoint 2010</title>
      <link>https://docs.microsoft.com/archive/blogs/pasen/using-sharepoint-2010-search-webservice-in-javascript-for-fast-search-for-sharepoint-2010</link>
      <pubDate>Sat, 31 Mar 2012 11:52:00 GMT</pubDate>
      <dc:creator><![CDATA[Paresh Sen]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/pasen/2012/03/31/using-sharepoint-2010-search-webservice-in-javascript-for-fast-search-for-sharepoint-2010/</guid>
      <description><![CDATA[Here we will see a simple example of calling SharePoint 2010 search web service in javascript. This...]]></description>
      <content:encoded><![CDATA[<p>Here we will see a simple example of calling SharePoint 2010 search web service in javascript. This example is for FAST search for SharePoint 2010, so we will use FQL in our query packet.</p>
<p>We will be using <a title="XMLHttpRequest" href="https://www.w3.org/TR/XMLHttpRequest/">XMLHttpRequest</a> object for our request and response.</p>
<p>We need to undertand the below XML structures for moving ahead:</p>
<p>1] SOAP request for search service. Here, the request XML is for 'QueryEX' method. 'queryXml' will contain the actual query packet for search, as indicated by <span style="background-color: #ff0000;">string</span>.</p>
<p>&lt;?xml version="1.0" encoding="utf-8"?&gt;<br />&lt;soap:Envelope xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="https://www.w3.org/2001/XMLSchema" xmlns:soap="https://schemas.xmlsoap.org/soap/envelope/"&gt;<br />&nbsp; &lt;soap:Body&gt;<br />&nbsp;&nbsp;&nbsp; &lt;QueryEx xmlns="https://microsoft.com/webservices/OfficeServer/QueryService"&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="background-color: #33cccc;">&lt;queryXml&gt;</span><span style="background-color: #ff0000;" class="value">string</span><span style="background-color: #33cccc;">&lt;/queryXml&gt;</span><br />&nbsp;&nbsp;&nbsp; &lt;/QueryEx&gt;<br />&nbsp; &lt;/soap:Body&gt;<br />&lt;/soap:Envelope&gt;</p>
<p>&nbsp;Let's assume this is represented by variable <span style="background-color: #00ffff;">'requestXML'</span>.</p>
<p>2] SOAP response for search service. Here, the response XML is for 'QueryEX' method. 'QueryExResult' will contain the result, as indicated by <span style="background-color: #ff0000;">xml</span>.</p>
<p>&lt;?xml version="1.0" encoding="utf-8"?&gt;<br />&lt;soap:Envelope xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="https://www.w3.org/2001/XMLSchema" xmlns:soap="https://schemas.xmlsoap.org/soap/envelope/"&gt;<br />&nbsp; &lt;soap:Body&gt;<br />&nbsp;&nbsp;&nbsp; &lt;QueryExResponse xmlns="https://microsoft.com/webservices/OfficeServer/QueryService"&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="background-color: #33cccc;">&lt;QueryExResult&gt;&lt;xsd:schema&gt;<span class="value">schema</span>&lt;/xsd:schema&gt;<span style="background-color: #ff0000;" class="value">xml</span>&lt;/QueryExResult&gt;</span><br />&nbsp;&nbsp;&nbsp; &lt;/QueryExResponse&gt;<br />&nbsp; &lt;/soap:Body&gt;<br />&lt;/soap:Envelope&gt;</p>
<p>&nbsp;&nbsp;Let's assume this is represented by variable <span style="background-color: #00ffff;">'responseXML'</span>.</p>
<p>3] FQL Query Packet for search, indicating the search criteria, refiners, sorting, etc.</p>
<p>&lt;QueryPacket Revision=\"1000\"&gt;<br />&nbsp; &lt;Query&gt;<br />&nbsp;&nbsp;&nbsp; &lt;Context&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;QueryText language=\"en-US\"type=\"FQL\"&gt;<span style="background-color: #ff0000;">string(\"-\",Mode=\"AND\")&lt;/</span>QueryText&gt;<br />&nbsp;&nbsp;&nbsp; &lt;/Context&gt;<br />&nbsp;&nbsp;&nbsp; &lt;SupportedFormats Format=\"urn:Microsoft.Search.Response.Document.Document\"/&gt;<br />&nbsp;&nbsp;&nbsp; &lt;ResultProvider&gt;FASTSearch&lt;/ResultProvider&gt;<br />&nbsp;&nbsp;&nbsp; &lt;Range&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;StartAt&gt;1&lt;/StartAt&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;Count&gt;20&lt;/Count&gt;<br />&nbsp;&nbsp;&nbsp; &lt;/Range&gt;<br />&nbsp;&nbsp;&nbsp; &lt;EnableStemming&gt;true&lt;/EnableStemming&gt;<br />&nbsp;&nbsp;&nbsp; &lt;EnableSpellCheck&gt;Suggest&lt;/EnableSpellCheck&gt;<br />&nbsp;&nbsp;&nbsp; &lt;IncludeSpecialTermsResults&gt;true&lt;/IncludeSpecialTermsResults&gt;<br />&nbsp;&nbsp;&nbsp; &lt;IncludeRelevantResults&gt;true&lt;/IncludeRelevantResults&gt;<br />&nbsp;&nbsp;&nbsp; &lt;ImplicitAndBehavior&gt;true&lt;/ImplicitAndBehavior&gt;<br />&nbsp;&nbsp;&nbsp; &lt;TrimDuplicates&gt;true&lt;/TrimDuplicates&gt;<br />&nbsp;&nbsp;&nbsp; &lt;Properties&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;Property name=\"Rank\"/&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;Property name=\"Title\" /&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;Property name=\"Author\"/&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;Property name=\"Size\" /&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;Property name=\"Path\" /&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;Property name=\"Write\"/&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;Property name=\"SiteName\" /&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;Property name=\"HitHighlightedSummary\"/&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;Property name=\"HitHighlightedProperties\"/&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;Property name=\"ContentClass\"/&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;Property name=\"IsDocument\"/&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;Property name=\"Url\" /&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;Property name=\"FileExtension\"/&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;Property name=\"SpSiteUrl\"/&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;Property name=\"docvector\"/&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;Property name=\"fcocount\" /&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;Property name=\"fcoid\"/&gt;<br />&nbsp;&nbsp;&nbsp; &lt;/Properties&gt;<br />&nbsp; &lt;/Query&gt;<br />&lt;/QueryPacket&gt;</p>
<p>&nbsp;Let's assume this is represented by variable <span style="background-color: #00ffff;">'queryPacket'</span>. this will replace the value <span style="background-color: #ff0000;">string</span> in step [1] for <span style="background-color: #00ffff;">requestXML</span>.</p>
<p>&nbsp;</p>
<p>We can write a function incorporating all the above for calling the service and getting the response as follows:</p>
<p>function RetrieveSearchData()</p>
<p>{</p>
<p>&nbsp;&nbsp;&nbsp; //get the request object</p>
<p>&nbsp;&nbsp;&nbsp; var requestObject = new XMLHttpRequest();</p>
<p>&nbsp;&nbsp;&nbsp; //Initializes request and specifies the method, URL, and other information for the request.</p>
<p>&nbsp;&nbsp;&nbsp; requestObject.open("POST", "https://SERVER:PORT/_vti_bin/search.asmx", false);</p>
<p>&nbsp;&nbsp;&nbsp; //set request header</p>
<p>&nbsp;&nbsp;&nbsp; requestObject.setRequestHeader("Content-Type", "text/xml; charset=utf-8");</p>
<p>&nbsp;&nbsp;&nbsp; //Get FQL queryPacket along with the SOAP envelope</p>
<p>&nbsp;&nbsp;&nbsp; var packet = <span style="background-color: #00ffff;">requestXML</span>;</p>
<p>&nbsp;&nbsp;&nbsp; //Sends an HTTP request to the server and receives a response</p>
<p>&nbsp;&nbsp;&nbsp; requestObject.send(packet);</p>
<p>&nbsp;&nbsp;&nbsp; //process <span style="background-color: #00ffff;">responseXML</span></p>
<p>}</p>
<p><span style="font-family: Consolas; font-size: x-small;" face="Consolas" size="2"><span style="font-family: Consolas; font-size: x-small;" face="Consolas" size="2"></span></span>&nbsp;</p>
<p>There are multiple ways to achieve the above processing in AJAX, ASP.net or traditional C#. This example is just one of the ways to process SharePoint webservice in javascript code.</p>
<p>&nbsp;</p>]]></content:encoded>
    </item>
    <item>
      <title>Case study on Search driven applications for PLM and DAM systems</title>
      <link>https://docs.microsoft.com/archive/blogs/pasen/case-study-on-search-driven-applications-for-plm-and-dam-systems</link>
      <pubDate>Mon, 19 Mar 2012 22:16:00 GMT</pubDate>
      <dc:creator><![CDATA[Paresh Sen]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/pasen/2012/03/19/case-study-on-search-driven-applications-for-plm-and-dam-systems/</guid>
      <description><![CDATA[My post on search driven applications can be found here.]]></description>
      <content:encoded><![CDATA[<p>My post on search driven applications can be found <a title="here" href="https://blogs.msdn.com/b/mscisind/archive/2012/03/15/exposing-external-systems-using-fast-search-for-sharepoint-2010-a-case-study-on-search-driven-applications.aspx">here</a>.</p>]]></content:encoded>
    </item>
    <item>
      <title>Developing Windows 8 app: Accessing configuration files deployed as part of deployment</title>
      <link>https://docs.microsoft.com/archive/blogs/pasen/developing-windows-8-app-accessing-configuration-files-deployed-as-part-of-deployment</link>
      <pubDate>Fri, 03 Feb 2012 12:57:00 GMT</pubDate>
      <dc:creator><![CDATA[Paresh Sen]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/pasen/2012/02/03/developing-windows-8-app-accessing-configuration-files-deployed-as-part-of-deployment/</guid>
      <description><![CDATA[While developing your windows 8 app, you may need default configurations. In order to make things...]]></description>
      <content:encoded><![CDATA[<p>While developing your windows 8 app, you may need default configurations. In order to make things more generic, you may choose to keep your configuration in a separate xml to be deployed along with the app. Here, we will see how we can access a file deployed as part of deployment and use it.</p>
<p>In windows 8, access to folder system is provided by api's that are async in nature and 'Task' based. Therefore, we will use 'async' methods for this operation.</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; private async Task&lt;SampleData&gt; ReadFromConfigurationFile()</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {&nbsp;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; try</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;//get the package reference</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Windows.ApplicationModel.Package package = Windows.ApplicationModel.Package.Current;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//get installed location detail</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Windows.Storage.StorageFolder storageFolder = package.InstalledLocation;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Use serializer class</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; XmlSerializer serializer =&nbsp;new XmlSerializer(typeof(SampleData));&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; try</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //file variable</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; StorageFile sampleFile =&nbsp;null;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; try</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //Get the file</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sampleFile = await storageFolder.GetFileAsync("ConfigurationStored.xml");</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; catch (FileNotFoundException ex)</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //handle exception</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//open file in read mode</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var file = await sampleFile.OpenAsync(FileAccessMode.Read);&nbsp;&nbsp;&nbsp;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //Read stream&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Stream inStream = Task.Run(() =&gt; file.OpenRead()).Result;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return (SampleData)serializer.Deserialize(inStream);</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; catch (Exception ex)</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//handle exception&nbsp;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; catch (Exception ex)</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //handle exception</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return null;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</p>
<p>&nbsp;</p>
<p>Note the use of await and async pattern for handling the asynchronous operation.</p>
<p>If you want to modify the default value and write the file back, open file in write mode and after modification save the same at the installed location.</p>
<p>&nbsp;</p>
<p>More sample&nbsp;on file access can be found at <a href="https://code.msdn.microsoft.com/windowsapps/File-access-sample-d723e597">https://code.msdn.microsoft.com/windowsapps/File-access-sample-d723e597.</a></p>]]></content:encoded>
    </item>
    <item>
      <title>Implementing BCS connector based on enumerator methods</title>
      <link>https://docs.microsoft.com/archive/blogs/pasen/implementing-bcs-connector-based-on-enumerator-methods</link>
      <pubDate>Wed, 14 Dec 2011 11:47:00 GMT</pubDate>
      <dc:creator><![CDATA[Paresh Sen]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/pasen/2011/12/14/implementing-bcs-connector-based-on-enumerator-methods/</guid>
      <description><![CDATA[Business Connectivity Services (BCS) in SharePoint 2010 is all about accessing&nbsp;data external to...]]></description>
      <content:encoded><![CDATA[<p>Business Connectivity Services (BCS) in SharePoint 2010 is all about accessing&nbsp;data external to SharePoint. BCS provides read/write access to external data from line-of-business (LOB) systems, Web services, databases, and other external systems within Microsoft SharePoint 2010 and Microsoft Office 2010 applications.&nbsp;BCS enhances the SharePoint platform&rsquo;s capabilities with out-of-box features, services and tools that streamline development of solutions with deep integration of external data and services. Details can be found <a title="here" href="https://msdn.microsoft.com/en-us/library/ee557658.aspx">here</a>.</p>
<p xmlns="https://www.w3.org/1999/xhtml">The core function of BDC is to provide connectivity support to the following types of external systems:</p>
<ul xmlns="https://www.w3.org/1999/xhtml">
<li>
<p>Databases</p>
</li>
<li>
<p>Web/WCF services</p>
</li>
<li>
<p>Microsoft .NET Framework connectivity assemblies</p>
</li>
<li>
<p>Custom data sources</p>
</li>
</ul>
<p>There are scenarios when we wish to do custom implementation to achieve the desired processing. This can be achieved by developing Visual Studio based code solutions. We add up code to do the required processing for implementing List\Item operations. These solutions work great and provide a lot of flexibility.</p>
<p>However, in scenarios where BCS is used to pull data and index in SharePoint for implementing search driven applications, we need constant updation of data from the external system. In such systems we need incremental update to work to ensure CRUD operations. In such a scenario we need to create solutions that implement ChangedIDEnumerator\DeletedIDEnumerator&nbsp;apart from general List (IDEnumerator), Item (ReadItem) operations.</p>
<p>IDEnumerator - Used for list operation</p>
<p>ChangedIDEnumerator - Identifies the modified items</p>
<p>DeletedIDEnumerator - Identifies the deleted items</p>
<p>ReadItem - used for Item operation</p>
<p>apart from the above we may need to implement streamaccessor method for ingesting streams for indexing like documents.</p>
<p>&nbsp;</p>
<p>Here, we will have a look on the methods and the mapping in model file.&nbsp;</p>
<p><span style="text-decoration: underline;"><strong>IDEnumerator</strong></span></p>
<p>Syntax: public static IEnumerable&lt;EntityType&gt; IDEnumerator()</p>
<p>Returns an enumerator of EntityType. This will have all the items that need to be indexed. This can be infered as the finder method.</p>
<p>Model file mapping:</p>
<pre>            &lt;Method IsStatic="false" Name="<strong>IDEnumerator</strong>"&gt;<br />              &lt;Parameters&gt;<br />                &lt;Parameter Direction="Return" Name="returnParameter"&gt;<br />                  &lt;TypeDescriptor TypeName="System.Collections.Generic.IEnumerable`1[<strong>EntityType Class details</strong>]" IsCollection="true" Name="<strong>ListName</strong>"&gt;<br />                    &lt;TypeDescriptors&gt;<br />                      ...<br />                    &lt;/TypeDescriptors&gt;<br />                  &lt;/TypeDescriptor&gt;<br />                &lt;/Parameter&gt;<br />              &lt;/Parameters&gt;<br />              &lt;MethodInstances&gt;<br />                &lt;MethodInstance Type="<strong>IdEnumerator</strong>" ReturnParameterName="returnParameter" Default="true" Name="<strong>EnumeratorName</strong>" DefaultDisplayName="<strong>DisplayName</strong>"&gt;<br />                  &lt;Properties&gt;<br />                    &lt;Property Name="RootFinder" Type="System.String"&gt;x&lt;/Property&gt;                    <br />                  &lt;/Properties&gt;<br />                &lt;/MethodInstance&gt;<br />              &lt;/MethodInstances&gt;<br />            &lt;/Method&gt;</pre>
<p><br /><span style="text-decoration: underline;"><strong>ChangedIDEnumerator</strong></span></p>
<div>
<p>Syntax: public static IEnumerable&lt;EntityType&gt; ChangedIDEnumerator(DateTime LastRunDate)</p>
<p>Returns an enumerator of EntityType. it contains the modified items. LastRunDate indicates time that will be used as&nbsp;reference for this crawl for finding the modified items. We can map this value or can use another parameter (configuration parameter, or reading from external ways) for getting the reference.</p>
<p>Model file mapping:</p>
<pre>         &lt;Method IsStatic="false" Name="<strong>ChangedIDEnumerator</strong>"&gt;<br />              &lt;FilterDescriptors&gt;<br />                &lt;FilterDescriptor Name="LastRunDate" Type="InputOutput"&gt;<br />                  &lt;Properties&gt;<br />                    &lt;Property Name="SynchronizationCookie" Type="System.String"&gt;LastModifiedDate&lt;/Property&gt;<br />                  &lt;/Properties&gt;<br />                &lt;/FilterDescriptor&gt;<br />                &lt;FilterDescriptor Name="FilterDescriptor" Type="Timestamp" /&gt;<br />              &lt;/FilterDescriptors&gt;<br />              &lt;Parameters&gt;<br />                &lt;Parameter Name="@LastRunDate" Direction="InOut"&gt;<br />                  &lt;TypeDescriptor Name="LastRunDateTypeDescriptor" TypeName="System.DateTime" AssociatedFilter="LastRunDate"&gt;<br />                    &lt;Interpretation&gt;<br />                      &lt;NormalizeDateTime LobDateTimeMode="Local" /&gt;<br />                    &lt;/Interpretation&gt;<br />                  &lt;/TypeDescriptor&gt;<br />                &lt;/Parameter&gt;<br />                &lt;Parameter Direction="Return" Name="returnParameter"&gt;<br />                  &lt;TypeDescriptor TypeName="System.Collections.Generic.IEnumerable`1[<strong>EntityType Class details</strong>]" IsCollection="true" Name="<strong>ListName</strong>"&gt;<br />                    ...<br />                  &lt;/TypeDescriptor&gt;<br />                &lt;/Parameter&gt;<br />              &lt;/Parameters&gt;<br />              &lt;MethodInstances&gt;<br />                &lt;MethodInstance Type="<strong>ChangedIdEnumerator</strong>" ReturnParameterName="returnParameter" Default="true" Name="<strong>OperationName</strong>" DefaultDisplayName="<strong>DisplayName</strong>" /&gt;<br />              &lt;/MethodInstances&gt;<br />            &lt;/Method&gt;</pre>
<pre>&nbsp;</pre>
<pre><span style="text-decoration: underline;"><strong>DeletedIDEnumerator</strong></span></pre>
<div>
<p>Syntax: public static IEnumerable&lt;EntityType&gt; DeletedIDEnumerator(DateTime LastRunDate)</p>
<p>Returns an enumerator of EntityType. it contains the deleted items. LastRunDate indicates time that will be used as reference for this crawl for finding the deleted items. We can map this value or can use another parameter (configuration parameter, or reading from external ways) for getting the reference.</p>
<pre>        &lt;Method IsStatic="false" Name="<strong>DeletedIDEnumerator</strong>"&gt;<br />              &lt;FilterDescriptors&gt;<br />                &lt;FilterDescriptor Name="LastRunDate" Type="InputOutput"&gt;<br />                  &lt;Properties&gt;<br />                    &lt;Property Name="SynchronizationCookie" Type="System.String"&gt;LastModifiedDate&lt;/Property&gt;<br />                  &lt;/Properties&gt;<br />                &lt;/FilterDescriptor&gt;<br />                &lt;FilterDescriptor Name="FilterDescriptor" Type="Timestamp" /&gt;<br />              &lt;/FilterDescriptors&gt;<br />              &lt;Parameters&gt;<br />                &lt;Parameter Name="@LastRunDate" Direction="InOut"&gt;<br />                  &lt;TypeDescriptor Name="LastRunDateTypeDescriptor" TypeName="System.DateTime" AssociatedFilter="LastRunDate"&gt;<br />                    &lt;Interpretation&gt;<br />                      &lt;NormalizeDateTime LobDateTimeMode="Local" /&gt;<br />                    &lt;/Interpretation&gt;<br />                  &lt;/TypeDescriptor&gt;<br />                &lt;/Parameter&gt;<br />                &lt;Parameter Direction="Return" Name="returnParameter"&gt;<br />                  &lt;TypeDescriptor TypeName="System.Collections.Generic.IEnumerable`1[<strong>EntityType class details</strong>]" IsCollection="true" Name="<strong>ListName</strong>"&gt;<br />                    &lt;TypeDescriptors&gt;<br />                      ...<br />                    &lt;/TypeDescriptors&gt;<br />                  &lt;/TypeDescriptor&gt;<br />                &lt;/Parameter&gt;<br />              &lt;/Parameters&gt;<br />              &lt;MethodInstances&gt;<br />                &lt;MethodInstance Type="<strong>DeletedIdEnumerator</strong>" ReturnParameterName="returnParameter" Default="true" Name="<strong>OperationName</strong>" DefaultDisplayName="<strong>DisplayName</strong>" /&gt;<br />              &lt;/MethodInstances&gt;<br />            &lt;/Method&gt;</pre>
<p>&nbsp;</p>
<p><span style="text-decoration: underline;"><strong>ReadItem</strong></span></p>
<p>Syntax: public static Entity ReadItem(string ID)</p>
<p>Returns type entity. it contains the&nbsp;detail of an item.&nbsp;ID is the unique identifier for the item.</p>
<p>Mapping in model:</p>
<pre>       &lt;Method IsStatic="false" Name="<strong>ReadItem</strong>"&gt;<br />              &lt;Parameters&gt;<br />                &lt;Parameter Name="ID" Direction="In"&gt;<br />                  &lt;TypeDescriptor Name="ID" TypeName="System.String" IdentifierEntityName="<strong>ENTITY</strong>" IdentifierEntityNamespace="<strong>NAMESPACE</strong>" IdentifierName="<strong>ID</strong>"&gt;<br />                  &lt;/TypeDescriptor&gt;<br />                &lt;/Parameter&gt;<br />                &lt;Parameter Name="returnParameter" Direction="Return"&gt;<br />                  ...<br />                &lt;/Parameter&gt;<br />              &lt;/Parameters&gt;<br />              &lt;MethodInstances&gt;<br />                &lt;MethodInstance Name="<strong>ReadItem</strong>" Type="SpecificFinder" ReturnParameterName="returnParameter" Default="true" DefaultDisplayName="<strong>DisplayName</strong>"&gt;<br />                  &lt;Properties&gt;<br />                    &lt;Property Name="LastDesignedOfficeItemType" Type="System.String"&gt;None&lt;/Property&gt;<br />                    &lt;Property Name="WindowsSecurityDescriptorField" Type="System.String"&gt;<strong>SecurityDescriptor</strong>&lt;/Property&gt;<br />                  &lt;/Properties&gt;<br />                &lt;/MethodInstance&gt;<br />              &lt;/MethodInstances&gt;<br />            &lt;/Method&gt;</pre>
<pre>Here, SecurityDescriptor is used for implementing security at record level.</pre>
<pre>&nbsp;</pre>
<pre><span style="text-decoration: underline;"><strong>StreamAccessor</strong></span></pre>
<pre>Syntax: public Stream GetStream(string ID)</pre>
<pre>GetStream can be used if we intend to ingest documents in the crawl process. ID is the unique identifier.</pre>
<pre>Mapping in Model:</pre>
<pre>          &lt;Method IsStatic="false" Name="<strong>GetStream</strong>"&gt;<br />              &lt;Parameters&gt;<br />                &lt;Parameter Name="ID" Direction="In"&gt;<br />                  &lt;TypeDescriptor Name="<strong>ID</strong>" TypeName="System.String" IdentifierEntityName="<strong>ENTITY</strong>" IdentifierEntityNamespace="<strong>NAMESPACE</strong>" IdentifierName="<strong>ID</strong>" /&gt;<br />                &lt;/Parameter&gt;<br />                &lt;Parameter Name="returnParameter" Direction="Return"&gt;<br />                  &lt;TypeDescriptor Name="returnParameterTypeDescriptor" TypeName="System.IO.Stream" /&gt;<br />                &lt;/Parameter&gt;<br />              &lt;/Parameters&gt;<br />              &lt;MethodInstances&gt;<br />                &lt;MethodInstance Name="MethodName" Type="<strong>StreamAccessor</strong>" ReturnParameterName="returnParameter"&gt;<br />                  &lt;Properties&gt;<br />                   ...<br />                  &lt;/Properties&gt;<br />                &lt;/MethodInstance&gt;<br />              &lt;/MethodInstances&gt;<br />            &lt;/Method&gt;</pre>
<pre>&nbsp;</pre>
<pre>More on custom connectors can be found <a title="here" href="https://msdn.microsoft.com/en-us/library/ff953161.aspx">here</a>.</pre>
<pre>Another great post on BCS can be found <a title="here" href="https://msdn.microsoft.com/en-us/magazine/ee819133.aspx">here</a>.</pre>
</div>
</div>]]></content:encoded>
    </item>
    <item>
      <title>Set-ExecutionPolicy : Windows PowerShell updated your execution policy successfully, but the setting is overridden by a policy defined at a more specific scope!!!</title>
      <link>https://docs.microsoft.com/archive/blogs/pasen/set-executionpolicy-windows-powershell-updated-your-execution-policy-successfully-but-the-setting-is-overridden-by-a-policy-defined-at-a-more-specific-scope</link>
      <pubDate>Wed, 07 Dec 2011 06:50:00 GMT</pubDate>
      <dc:creator><![CDATA[Paresh Sen]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/pasen/2011/12/07/set-executionpolicy-windows-powershell-updated-your-execution-policy-successfully-but-the-setting-is-overridden-by-a-policy-defined-at-a-more-specific-scope/</guid>
      <description><![CDATA[You have reached to this blog post probably after hitting into the below issue on...]]></description>
      <content:encoded><![CDATA[<div class="title">You have reached to this blog post probably after hitting into the below issue on executing:</div>
<div class="title"><strong>Set-ExecutionPolicy "RemoteSigned"</strong></div>
<div class="title"><strong></strong>&nbsp;</div>
<div class="title"><strong>Error thrown may be as follows:</strong></div>
<p><em>Set-ExecutionPolicy : Windows PowerShell updated your execution policy successfully, but the setting is overridden by a policy defined at a more specific scope. Due to the override, your shell will retain its current effective execution policy of "Unrestricted". Type "Get-ExecutionPolicy -List" to view your execution policy settings. For more information, please see "Get-Help Set-ExecutionPolicy.</em></p>
<p><em><strong>"Set-ExecutionPolicy" cmdlet is used for changing the user preference for the Windows PowerShell execution policy. details can be found <a title="here" href="https://technet.microsoft.com/en-us/library/dd347628.aspx">here</a>.</strong></em></p>
<p>If the current logged-in user is an administrator on the system with proper access but still getting the above issue, <a href="https://blog.whatsupduck.net/2010/09/issues-with-configuring-powershell.html">following</a> blogpost instruction may be helpful in re-setting group policy.</p>
<p>However, if the issue persists and "Get-ExecutionPolicy -List" command shows something similar as shown below:</p>
<p>&nbsp;&nbsp;&nbsp; MachinePolicy = RemoteSigned<br />&nbsp;&nbsp;&nbsp; UserPolicy&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;=&nbsp;Undefined<br />&nbsp;&nbsp;&nbsp; <em><strong>CurrentUser&nbsp;&nbsp; &nbsp;&nbsp;= Unrestricted</strong></em><br />&nbsp;&nbsp;&nbsp; LocalMachine &nbsp;= RemoteSigned</p>
<p>Execute the below commands in powershell commandline as an administrator:</p>
<p>Set-ExecutionPolicy "RemoteSigned" -Scope Process -Confirm:$false</p>
<p>Set-ExecutionPolicy "RemoteSigned" -Scope CurrentUser -Confirm:$false</p>
<p><em><strong>This will set the execution policy for the given scope.</strong></em></p>
<p>On executing "Get-ExecutionPolicy -List", we should now see the below:</p>
<p>&nbsp;&nbsp;&nbsp; MachinePolicy = RemoteSigned<br />&nbsp;&nbsp;&nbsp; UserPolicy&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = Undefined<br />&nbsp;&nbsp;&nbsp;&nbsp;Process&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = RemoteSigned<br />&nbsp;&nbsp;&nbsp; CurrentUser&nbsp;&nbsp;&nbsp;&nbsp; = RemoteSigned<br />&nbsp;&nbsp;&nbsp; LocalMachine&nbsp; = RemoteSigned</p>]]></content:encoded>
    </item>
    <item>
      <title>How to increase relevancy of FAST search results for "Phrase" query</title>
      <link>https://docs.microsoft.com/archive/blogs/pasen/how-to-increase-relevancy-of-fast-search-results-for-phrase-query</link>
      <pubDate>Sat, 30 Apr 2011 08:20:05 GMT</pubDate>
      <dc:creator><![CDATA[Paresh Sen]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/pasen/2011/04/30/how-to-increase-relevancy-of-fast-search-results-for-phrase-query/</guid>
      <description><![CDATA[Fast Search for SharePoint 2010 indexes data fed to the system during crawl. on query these indexes...]]></description>
      <content:encoded><![CDATA[<p>Fast Search for SharePoint 2010 indexes data fed to the system during crawl. on query these indexes are used to retrieve relevant results. However, when the indexed data is very high and "<strong>Phrase</strong>" search is used we may not get as relevant results as expected.</p>
<p>For example, in indexed data few words like "<strong>ABC</strong>" are very common, phrase searches involving these words may show less relevant results than expected. Suppose we search with <em><strong>ABC XYZ</strong></em> or <em><strong>"ABC XYZ"</strong></em> or <em><strong>"XYZ ABC"</strong></em>, ideally we should get different result set based on the existence of these phrases in indexed data. However, "Phrase" search behavior changes for very frequent indexed keywords like <strong>ABC </strong>and it treats the Phrase "<strong>ABC XYZ</strong>" as<strong> ABC <em><span style="text-decoration: underline;">AND</span> </em>XYZ</strong>.</p>
<p>Expected behavior can be ensured by changing <b>PositionStopWordThreshold </b>and<b> StopWordThreshold
</b>values for RankProfile in FAST admin node. New value should be changed based on the specific scenario of the target farm and volume of data. Default value for Rank profile are listed below:</p>
<table border="0" cellpadding="0" cellspacing="0">
<tbody>
<tr>
<td valign="top" width="213">
<p><strong>Rank
  Profile parameter</strong></p>
</td>
<td valign="top" width="213">
<p><strong>Original
  value</strong></p>
</td>
</tr>
<tr>
<td valign="top" width="213">
<p>PositionStopWordThreshold</p>
</td>
<td valign="top" width="213">
<p>20000000</p>
</td>
</tr>
<tr>
<td valign="top" width="213">
<p>StopWordThreshold</p>
</td>
<td valign="top" width="213">
<p>2000000</p>
</td>
</tr>
</tbody>
</table>
<p><a href="https://technet.microsoft.com/en-us/library/ff191251.aspx">Follow this msdnlink for details.<br /></a></p>
<p>&nbsp;In order to do the changes, need to
execute below in FAST Server management powershell:</p>
<p><b>$RankProfile
= Get-FASTSearchMetadataRankProfile -Name &lt;RankProfileName&gt;</b></p>
<p><b>$RankProfile.StopWordThreshold
= &lt;new integer value&gt;<br /></b></p>
<p><b>$RankProfile.PositionStopWordThreshold&nbsp;
= &lt;new integer value&gt;</b></p>
<p><b>$RankProfile.Update()</b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</p>
<p>Restart&nbsp;
FAST services.</p>
<p>There are few downside to these changes and must be analyzed before the changes( <a href="https://technet.microsoft.com/en-us/library/ff393755.aspx">Follow this msdnlink for details)</a></p>
<ul>
<li>Increase in CPU usage</li>
<li>Slower Search Performance</li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>Crawl fails with error "The item may be too large or corrupt. You may also verify that you have the latest version of this IFilter"</title>
      <link>https://docs.microsoft.com/archive/blogs/pasen/crawl-fails-with-error-the-item-may-be-too-large-or-corrupt-you-may-also-verify-that-you-have-the-latest-version-of-this-ifilter</link>
      <pubDate>Wed, 06 Apr 2011 02:10:44 GMT</pubDate>
      <dc:creator><![CDATA[Paresh Sen]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/pasen/2011/04/06/crawl-fails-with-error-the-item-may-be-too-large-or-corrupt-you-may-also-verify-that-you-have-the-latest-version-of-this-ifilter/</guid>
      <description><![CDATA[Our crawl failed for large files with crawl error : "The item may be too large or corrupt. You may...]]></description>
      <content:encoded><![CDATA[<p>Our crawl failed for large files with crawl error : <strong>"The item may be too large or corrupt. You may also verify that you have the latest version of this IFilter".</strong></p>
<p>In eventviewer of the crawl component observed error: <strong>"The search service stopped the filter daemon because it was consuming too many resources. A new daemon will automatically be started, and no user action is required."</strong></p>
<p>This got resolved following the <a href="https://social.technet.microsoft.com/Forums/en-US/sharepointsearch/thread/138e2e68-9bf7-4a1c-9519-ace6a78ddaa5/" title="suggested changes">suggested changes </a>for increasing registry values for <strong>DedicatedFilterProcessMemoryQuota</strong>, <strong>FilterProcessMemoryQuota</strong>, <strong>FolderHighPriority.</strong></p>]]></content:encoded>
    </item>
    <item>
      <title>Resolving error "No snap-ins have been registered for windows powershell version 2"</title>
      <link>https://docs.microsoft.com/archive/blogs/pasen/resolving-error-no-snap-ins-have-been-registered-for-windows-powershell-version-2</link>
      <pubDate>Wed, 06 Apr 2011 01:18:53 GMT</pubDate>
      <dc:creator><![CDATA[Paresh Sen]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/pasen/2011/04/06/resolving-error-no-snap-ins-have-been-registered-for-windows-powershell-version-2/</guid>
      <description><![CDATA[After doing some update\configuration changes in SharePoint Farm, I was getting this issue when...]]></description>
      <content:encoded><![CDATA[<p>After doing some update\configuration changes in SharePoint Farm, I was getting this issue when trying to open "SharePoint 2010 Management Shell":</p>
<p><strong>Add-PSSnapin : No snap-ins have been registered for windows powershell version 2</strong></p>
<p>This was resolved by changing the path of the powershell.exe used to initiate the management shell. In properties -&gt; Shortcut -&gt; Target, powershell.exe was pointing to sysWOW64 folder. I changed the same to point to System32 [c:\windows\system32\windowspowershell\v1.0\powershell.exe].</p>
<p>&nbsp;</p>
<p><strong></strong></p>]]></content:encoded>
    </item>
  </channel>
</rss>