Application Server: SWIS behavior should not configured at the root level
Applies To: Windows Server 2008 R2, Windows Server 2012
This topic is intended to address a specific issue identified by a Best Practices Analyzer scan. You should apply the information in this topic only to computers that have had the Application Server Best Practices Analyzer run against them and are experiencing the issue addressed by this topic. For more information about best practices and scans, see Best Practices Analyzer.
Operating System |
Windows Server 2012 Windows Server 2008 R2 |
Product/Feature |
Application Server role |
Severity |
Warning |
Category |
Configuration |
Issue
SQL Workflow Instance Store (SWIS) behavior is configured at the server root.
When you configure the Windows Server AppFabric role service of the Application Server role to use a SQL Service-based persistence store, the AppFabric Hosting Services use the SQL Workflow Instance Store (SWIS) for the persistence store. The SQL Workflow Instance Store is a feature of.NET Framework 4 that enables workflows to persist state information into a SQL Server database. AppFabric ships with an instance store provider, an instance query provider, and an instance control provider for the SWIS. To enable persistence, you can configure SWIS either programmatically or by adding the SWIS behavior element to the configuration file.
Impact
Configuring the SWIS behavior at the server root will make all WF services that use the nameless behavior hosted in this computer durable.
Resolution
Remove the SWIS behavior from the root web.config file, and configure it instead at the site, application, or service level.
To configure the SWIS behavior
In Notepad, open the root web.config file, which is located in the same location as machine.config, normally the following: %SystemRoot%\WINDOWS\Microsoft.Net\Framework\v#.#.#.#\CONFIG.
Delete the
sqlWorkflowInstanceStore
behavior element from theserviceBehaviors
element of the root web.config file.Add the
sqlWorkflowInstanceStore
behavior to the Website web.config file or the application web.config file.
Additional references
Persistence Concepts (https://go.microsoft.com/fwlink/?LinkId=200930)
SQL Workflow Instance Store (https://go.microsoft.com/fwlink/?LinkId=167347)