Release of SDK 2.4.145 and Runtime 5.4.145 for Windows


Today, we are announcing the release of Service Fabric SDK v2.4.145 and Runtime v5.4.145, along with Visual Studio tools for Service Fabric v1.4.

Here are some of the highlights of this release:

Preview of Windows Containers Support

With this release, we are providing our first preview of Windows containers support for Windows Server 2016. See the release notes for instructions on getting started.

Preview of ASP.NET Core Communication Listener

The new Service Fabric ASP.NET Core integration NuGet packages enables you to easily bootstrap an ASP.NET Core web application in a stateless or stateful service using either Kestrel or WebListener hosts. The packages contain ICommunicationListener implementations for both Kestrel and WebListener hosts.

Visual Studio 2017 RC2 Integration

With this release, we are providing tools for Visual Studio 2017 RC2. To try it out, install the Service Fabric SDK through the Web Platform Installer and the install the tools through Visual Studio 2017. See the getting started guide for instructions.

Incremental Backup for Actor Services

Prior to this release, incremental backup was only supported for Reliable Services.

Reliable Actors Framework is built on top of Reliable Services. The ActorService which hosts the actor(s) is a stateful reliable service. Hence, all the backup and restore functionality available in Reliable Services is also available to Reliable Actors (except few behaviors that are state provider specific and will be covered later in this section). Since backups will be taken on a per-partition basis, states for all actors in that partition will be backed up (and restoration is similar and will happen on a per-partition basis). To perform backup/restore, the service owner should create a custom actor service class that derives from ActorService class and then do backup/restore similar to Reliable Services as described above in previous sections.

Health and Load Reports Available via ETW

Health reports and load reports now generate ETW based events that can be displayed in the Visual Studio Diagnostic Viewer or captured using Azure diagnostics.

Addition of NodeDownTime field to the Node Query

The Get-ServiceFabricNode query now returns the NodeDownTime field. NodeDownTime represents the TimeSpan value of how long the node has been in down state (similar to existing NodeUpTime field). The NodeDownTime field is present only for the nodes with state down. Similarly, NodeUpTime field has been updated to be present only for the nodes with state up.

New States for Application Type Query

The application type query Get-ServiceFabricApplicationType and its REST and C# equivalents now includes the following application type states in the query result:

  • Provisioning: The application type is being registered and cannot be used yet.
  • Available: The application type is ready for use.
  • Unprovisioning: The application type is being removed.
  • Failed: The application type encountered a registration error. The failed type can either be removed or retried.

 

For more details on these additions and other changes in this release, please see the detailed release notes.

Cheers,

The Service Fabric Team


Comments (9)

  1. Francis says:

    When will the Concurrent Queue be available for production? The standard one is extremely limiting for very high throughput applications even if partitioned. I'm also finding very frustrating configuring the Autoscale for VM Scale sets, compared to the very good one available for Cloud Services in the portal, you should think of prioritizing easing that for devs like me switching to SF from Cloud services. Thanks

  2. Eric Cox says:

    When you click "•Install the new SDK and tools for Visual Studio 2015 from the Web Platform Installer" the result is:

    Server Error in '/web' Application.

    Runtime Error
    Description: An exception occurred while processing your request. Additionally, another exception occurred while executing the custom error page for the first exception. The request has been terminated.

    1. This is a known, intermittent issue with Chrome and the WebPI deep links. You can either try the link in another browser or launch the WebPI client directly and search for Service Fabric there.

  3. Rich says:

    After doing this SDK and Tools update, I also cannot publish now. Any help would be very much appreciated!

    -------- Package: Project: .... succeeded, Time elapsed: 00:00:04.1038969 --------
    2>Started executing script 'Deploy-FabricApplication.ps1'.
    2>. 'D:\....\Scripts\Deploy-FabricApplication.ps1' -ApplicationPackagePath 'D:\....\pkg\Debug' -PublishProfileFile 'D:\....\PublishProfiles\Cloud.xml' -DeployOnly:$false -ApplicationParameter:@{} -UnregisterUnusedApplicationVersionsAfterUpgrade $false -OverrideUpgradeBehavior 'None' -OverwriteBehavior 'SameAppTypeAndVersion' -SkipPackageValidation:$false -ErrorAction Stop
    2>Test-ServiceFabricApplicationPackage : Method not found: 'System.String
    2>System.Fabric.Strings.StringResources.get_ImageBuilder_InvalidEnvVariableOverride()'.
    2>At C:\Program Files\Microsoft SDKs\Service
    2>Fabric\Tools\PSModule\ServiceFabricSDK\Publish-NewServiceFabricApplication.ps1:124 char:38
    2>+ ... tionSuccess = (Test-ServiceFabricApplicationPackage $AppPkgPathToUse)
    2>+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    2> + CategoryInfo : NotSpecified: (:) [Test-ServiceFabricApplicationPackage], MissingMethodException
    2> + FullyQualifiedErrorId : TestApplicationPackageErrorId,Microsoft.ServiceFabric.Powershell.TestApplicationPackage
    2>
    2>Finished executing script 'Deploy-FabricApplication.ps1'.
    2>Time elapsed: 00:00:08.1143351
    2>The PowerShell script failed to execute.
    ========== Build: 1 succeeded, 0 failed, 9 up-to-date, 0 skipped ==========
    ========== Publish: 0 succeeded, 1 failed, 0 skipped ==========

  4. Rich says:

    Also cannot connect to cluster in Powershell:

    $connectArgs = @{ ConnectionEndpoint = 'abcdefg.hijklmno.cloudapp.azure.com:19000'; X509Credential = $True; StoreLocation = 'CurrentUser'; StoreName = "My"; ServerCommonName = "MyCert"; FindType = 'FindByThumbprint'; FindValue = "........................................"; }
    Connect-ServiceFabricCluster @connectArgs
    True
    format-default : The following exception occurred while retrieving members: "Could not load type 'System.Fabric.Query.ServiceNameResult' from
    assembly 'System.Fabric, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'."
    + CategoryInfo : NotSpecified: (:) [format-default], ExtendedTypeSystemException
    + FullyQualifiedErrorId : CatchFromBaseGetMembers,Microsoft.PowerShell.Commands.FormatDefaultCommand

  5. Rich says:

    Uninstall/reinstall SDK and Tools does not fix this. Any word on this as I'm totally road-blocked without a local dev cluster.

    1. Please post this to our issues list on GitHub and we'll take a look.

      https://github.com/azure/service-fabric-issues

      1. Rich says:

        I was able to fix this by uninstalling the SDK, tools AND core Service Fabric components, rebooting, then reinstalling. A reinstall of just SDK and Tools did not fix it.

  6. Phil Davies says:

    The release notes say to set the RuntimeIdentifier to win7-x86 in each ASP.NET Core service's project, but that leads to a BadImageFormatException when you run the service.

    Setting it to win7-x64 fixed it for me, which makes sense, as everything needs to be built for x64.

Skip to main content