<?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>Farida</title>
    <atom:link
      href="https://docs.microsoft.com/archive/blogs/farida/feed.xml"
      rel="self"
      type="application/rss+xml" />
    <link>https://docs.microsoft.com/archive/blogs/farida/feed.xml</link>
    <description />
    <lastBuildDate>Wed, 17 Apr 2019 04:10:43 GMT</lastBuildDate>
    <language>en-US</language>
    <sy:updatePeriod>hourly</sy:updatePeriod>
    <sy:updateFrequency>1</sy:updateFrequency>
    <item>
      <title>'Image Not Found' exception when trying to scale up - increase VMSS instances for a Service Fabric cluster</title>
      <link>https://docs.microsoft.com/archive/blogs/farida/56</link>
      <pubDate>Mon, 14 Aug 2017 15:29:18 GMT</pubDate>
      <dc:creator><![CDATA[Farida Bharmal_Microsoft]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/farida/?p=56</guid>
      <description><![CDATA[Issue:  'Image Not Found' exception when trying to scale up - increase VMSS instances for a Service...]]></description>
      <content:encoded><![CDATA[Issue:  'Image Not Found' exception when trying to scale up - increase VMSS instances for a Service Fabric cluster.

Cause:  ARM template should have <strong>this</strong>, which instructs to use the latest version of the image.  If the vmImageVersion is hard coded, then they may run into 'Image Not Found' problem.

<span style="color: #000000;font-family: Times New Roman"> </span>
"imageReference": {
"publisher": "MicrosoftWindowsServer",
"offer": "WindowsServer",
"sku": "2012-R2-Datacenter",
<strong>     "version": "[parameters('vmImageVersion')]"</strong>

&nbsp;

<span>"vmImageVersion": {
"type": "string",
"<strong>defaultValue": "latest"</strong></span>

&nbsp;]]></content:encoded>
    </item>
    <item>
      <title>ClusterCodeVersion can only be changed when UpgradeMode is set to 'Manual'</title>
      <link>https://docs.microsoft.com/archive/blogs/farida/clustercodeversion-can-only-be-changed-when-upgrademode-is-set-to-manual</link>
      <pubDate>Mon, 14 Aug 2017 15:16:52 GMT</pubDate>
      <dc:creator><![CDATA[Farida Bharmal_Microsoft]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/farida/?p=46</guid>
      <description><![CDATA[ISSUE: When trying to upgrade the Service Fabric Version, encountered the error "ClusterCodeVersion...]]></description>
      <content:encoded><![CDATA[ISSUE: When trying to upgrade the Service Fabric Version, encountered the error "ClusterCodeVersion can only be changed when UpgradeMode is set to 'Manual'"

The UpgradeMode was set to Manual in the ARM template. We were still seeing the error.

CAUSE: <strong>UpgradeMode is only supported in API Version 2016-09-01 and higher</strong>. Make sure that the API Version used in the ARM template is 2016-09-01 and higher.

Sample working REST API call:

https://management.azure.com/subscriptions/{Subscription ID}/resourcegroups/{ResourceGroup}/providers/Microsoft.ServiceFabric/clusters/{Cluster}?<strong>api-version=2016-09-01</strong>]]></content:encoded>
    </item>
    <item>
      <title>Run the Azure worker role in elevated mode to register HttpListener</title>
      <link>https://docs.microsoft.com/archive/blogs/farida/run-the-azure-worker-role-in-elevated-mode-to-register-httplistener</link>
      <pubDate>Tue, 01 May 2012 09:07:00 GMT</pubDate>
      <dc:creator><![CDATA[Farida Bharmal_Microsoft]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/farida/2012/05/01/run-the-azure-worker-role-in-elevated-mode-to-register-httplistener/</guid>
      <description><![CDATA[If you try to run RavenDB in Azure worker role...]]></description>
      <content:encoded><![CDATA[<p>If you try to run RavenDB in Azure worker role (<a href="https://www.michaelhanley.org/blog/2011/12/ravendb-running-in-windows-azure.html#tpe-action-resize-486">https://www.michaelhanley.org/blog/2011/12/ravendb-running-in-windows-azure.html#tpe-action-resize-486</a>), it might fail with the following error. (You will need to attach a debugger to WaWorkerHost process to see this error message. Since its an handled exception, you do not see it in event logs)</p>
<p>CLR exception type: System.Net.HttpListenerException "Access is denied"<br /><span style="background-color: #ffff00;">Error: StartRaven Error: System.Net.HttpListenerException (0x80004005): Access is denied</span><br />&nbsp;&nbsp; at System.Net.HttpListener.AddAllPrefixes()<br />&nbsp;&nbsp; at System.Net.HttpListener.Start()<br />&nbsp;&nbsp; at Raven.Database.Server.HttpServer.StartListening() <br />&nbsp;&nbsp; at RavenDbWorkerRole.WorkerRole.StartRaven(RavenConfiguration config)<br />Microsoft.WindowsAzure.ServiceRuntime Information: 202 : Role entrypoint . COMPLETED OnStart()<br />CLR exception - code e0434352 (first chance)<br />Microsoft.WindowsAzure.ServiceRuntime Information: 203 : Role entrypoint . CALLING&nbsp;&nbsp; Run()<br />Information: RavenDbWorkerRole entry point called<br />Information: Working</p>
<p>RavenDB registers HTTPListener. To register HttpListener you need admin previledges. However, worker role by default does not have admin previledges.<br />In order to run the wroker role with admin previledges, modify the csdef file and add the following: <br />&lt;Runtime executionContext ="elevated" /&gt;<br />This makes the worker role run under elevated permission and hence it is able to register httplistener.</p>
<p>Sample csdef file:<br />&lt; ?xml version="1.0" encoding="utf-8"? &gt;<br />&lt; ServiceDefinition name="WindowsAzureProject6"xmlns="https://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition" &gt;<br />&nbsp; &lt; WorkerRole name="WorkerRole1" vmsize="Small" &gt;<br /><span style="background-color: #ffff00;">&nbsp;&nbsp;&nbsp; &lt; Runtime executionContext ="elevated" /&gt;</span><br />&nbsp;&nbsp;&nbsp; &lt; Imports &gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt; Import moduleName="Diagnostics" /&gt;<br />&nbsp;&nbsp;&nbsp; &lt; /Imports &gt;<br />&nbsp;&nbsp; &lt; /WorkerRole &gt;<br />&lt; /ServiceDefinition &gt;</p>
<p><span style="background-color: #ffff00;">The key take away is that if you want to register HttpListener, run the worker role in elevated permission.</span></p>
<p>Daniel Roth has explained why you need admin previledges to register HttpListener at <a href="https://connect.microsoft.com/VisualStudio/feedback/details/93940/httplistener-requires-admin-priveleges">https://connect.microsoft.com/VisualStudio/feedback/details/93940/httplistener-requires-admin-priveleges</a><br />The HttpListener is built on top of the HTTP APIs, also known as HTTP.SYS.&nbsp; Before an application can register to receive requests for a URL namespace, the system administrator must make a reservation for that URL on behalf of the user running the application. By default, the namespace is closed, that is, only the administrator can register UrlPrefixes until the administrator enters a reservation.<br />For more information please refer to this MSDN article on how to reserve namespaces for users:<br /><a href="https://msdn.microsoft.com/library/default.asp?url=/library/en-us/http/http/namespace_reservations_registrations_and_routing.asp">https://msdn.microsoft.com/library/default.asp?url=/library/en-us/http/http/namespace_reservations_registrations_and_routing.asp</a></p>
<p>&nbsp;</p>]]></content:encoded>
    </item>
    <item>
      <title>Using Windows Azure Caching for Session State can make the application slow if right programming practices are not followed</title>
      <link>https://docs.microsoft.com/archive/blogs/farida/using-windows-azure-caching-for-session-state-can-make-the-application-slow-if-right-programming-practices-are-not-followed</link>
      <pubDate>Tue, 24 Apr 2012 08:43:00 GMT</pubDate>
      <dc:creator><![CDATA[Farida Bharmal_Microsoft]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/farida/2012/04/24/using-windows-azure-caching-for-session-state-can-make-the-application-slow-if-right-programming-practices-are-not-followed/</guid>
      <description><![CDATA[Recently, I worked on a case where my customer was using ReportingViewer 10.0 and Azure Caching for...]]></description>
      <content:encoded><![CDATA[<p>Recently, I worked on a case where my customer was using ReportingViewer 10.0 and Azure Caching for session state management. <br /><a href="https://social.msdn.microsoft.com/Forums/en-US/windowsazuredata/thread/9100b52e-0d27-4788-92e3-e5f0accb3e89">https://social.msdn.microsoft.com/Forums/en-US/windowsazuredata/thread/9100b52e-0d27-4788-92e3-e5f0accb3e89</a></p>
<p>The application was relatively slower when using Azure Caching for session state management compared to using local caching.</p>
<p>After investigation, we determined that the session object was large. Since, Azure session management is done external to the machines running the asp.net service, the larger the session state object, the longer it takes to serialize and send the object to the external machines.<br />Network is also a contributing factor to the delay. (Imagine copying a large file from one folder to another folder on the same machine compared to copying from one machine to another machine in the same network)<br />In this scenario, the report viewer was creating an instance of the custom credentials class and storing it in the session. Which explained the large session oject size.</p>
<p>The key learnings are:<br />1. When you are using Azure Caching for Session State management, make sure that you have only the required things in the session state. <br />2. Avoid pushing unnecessary data (like static and constant data, thumbnails, etc. ) into Session Object.&nbsp; <br />3. The session object as a whole is serialized and pushed to cache servers.&nbsp; <br />4. Any update to the session object means full blob transfer between web role and cache servers (to and from) .&nbsp;</p>
<p>How to use Azure Caching for Session State Management:<br /><a href="https://msdn.microsoft.com/en-us/library/windowsazure/gg185668.aspx">https://msdn.microsoft.com/en-us/library/windowsazure/gg185668.aspx</a><br /><a href="https://msdn.microsoft.com/en-us/WAZPlatformTrainingCourse_BuildingAppsWithCacheService">https://msdn.microsoft.com/en-us/WAZPlatformTrainingCourse_BuildingAppsWithCacheService</a></p>]]></content:encoded>
    </item>
    <item>
      <title>Cloud drive can currently use only HTTP storage connection string</title>
      <link>https://docs.microsoft.com/archive/blogs/farida/cloud-drive-can-currently-use-only-http-storage-connection-string</link>
      <pubDate>Mon, 23 Apr 2012 15:14:00 GMT</pubDate>
      <dc:creator><![CDATA[Farida Bharmal_Microsoft]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/farida/2012/04/23/cloud-drive-can-currently-use-only-http-storage-connection-string/</guid>
      <description><![CDATA[ISSUE:Azure worker role instance recycling. Trying to mount Azure cloud drive on role...]]></description>
      <content:encoded><![CDATA[<p>ISSUE:Azure worker role instance recycling. Trying to mount Azure cloud drive on role startup.</p>
<p>Event logs showed the following error:</p>
<p>Application: WaWokerHost.exe<br />Framework Version: v4.0.30319<br />Description: The process was terminated due to an unhandled exception.<br />Exception Info: Microsoft.WindowsAzure.StorageClient.CloudDriveException</p>
<p>Stack:<br />&nbsp;&nbsp; at Microsoft.WindowsAzure.CloudDrive.Interop.InteropCloudDrive.Mount(String url, SignatureCallBack sign, String mount, Int32 cacheSize, UInt32 flags)<br />&nbsp;&nbsp; at Microsoft.WindowsAzure.StorageClient.CloudDrive.MountAt(String location, Int32 cacheSize, DriveMountOptions options)<br />&nbsp;&nbsp; --- End of inner exception stack trace ---<br />&nbsp;&nbsp; at Microsoft.WindowsAzure.StorageClient.CloudDrive.MountAt(String location, Int32 cacheSize, DriveMountOptions options)<br />&nbsp;&nbsp; at RavenDbWorkerRole.WorkerRole.OnStart()<br />&nbsp;&nbsp; at Microsoft.WindowsAzure.ServiceRuntime.RoleEnvironment.InitializeRoleInternal(RoleType roleTypeEnum)<br />&nbsp;&nbsp; at Microsoft.WindowsAzure.ServiceRuntime.Implementation.Loader.RoleRuntimeBridge.&lt;InitializeRole&gt;b__0()<br />&nbsp;&nbsp; at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean ignoreSyncCtx)<br />&nbsp;&nbsp; at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)<br />&nbsp;&nbsp; at System.Threading.ThreadHelper.ThreadStart()<br />&nbsp;&nbsp; <br />I attached a debugger to the worker process(WaWorkerHost). Saw the following exception:</p>
<p>Microsoft.WindowsAzure.StorageClient.CloudDriveException: <span style="background-color: #ffff00;"><strong>ERROR_HTTPS_NOT_SUPPORTED</strong></span> ---&gt; Microsoft.WindowsAzure.CloudDrive.Interop.InteropCloudDriveException: Exception of type 'Microsoft.WindowsAzure.CloudDrive.Interop.InteropCloudDriveException' was thrown.</p>
<p>This was happening because storage was using HTTPS protocol.&nbsp;<br /> When you are using cloud drive, you need to specify HTTP protocol for your storage.<br />&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp; Role config file:&nbsp;&nbsp; <br />&nbsp;&nbsp; &lt;Setting name="StorageAccount" value="<span style="background-color: #ffff00;">DefaultEndpointsProtocol=http</span>;AccountName=abcd;AccountKey=GUID" /&gt; <br />&nbsp;&nbsp; <br />&nbsp;&nbsp; The following article has a note where it mentions that https endpoint is not supported in mounting cloud drive.<br />&nbsp;&nbsp; <a href="https://msdn.microsoft.com/en-us/library/windowsazure/microsoft.windowsazure.storageclient.clouddrive.delete.aspx">https://msdn.microsoft.com/en-us/library/windowsazure/microsoft.windowsazure.storageclient.clouddrive.delete.aspx</a><br /><span style="background-color: #ffff00;">&nbsp;&nbsp; "When defining the connection string for connecting to the storage account, you must use the HTTP protocol. The HTTPS protocol is not supported for creating a drive."</span><br />&nbsp;&nbsp; <br />&nbsp;&nbsp; <br />&nbsp;&nbsp;</p>
<p>&nbsp;</p>]]></content:encoded>
    </item>
  </channel>
</rss>