PowerShell Runspaces for the Sync Module
Overview
The Sync Module uses the UNIFYConnect managed runspace and out-of-process PowerShell settings. Managed runspaces are enabled by default. In v8.0, link-task scripts run in process unless their usage configuration selects WorkerProcess or the service-wide ForceOop setting is enabled.
Configuration Settings
For the full list of properties available, see Common Engine Configuration.
| Property | Description | Required |
|---|---|---|
| scriptType | The type of script. Supported options are PreProvisioning, PostProvisioning, PreDeprovisioning, PostDeprovisioning, Synchronisation. | Yes |
| powerShellExecution | InProcess (the default) or WorkerProcess. | No |
| poolGrowthLimit | The default is 5. | No |
| lockWaitTimeout | The default is -00:00:00.001 (i.e. no waiting for an available runspace). | No |
Example
json
"powerShellRunspaceSettings": {
"$version": "1.0",
"runspaceManagementMode": "SharedRunspace",
"usageSettings": [
{
"scriptType": "PreProvisioning",
"powerShellExecution": "WorkerProcess",
"lockWaitTimeout": {
"$fmt": "timeSpan",
"$value": "01:05:00"
},
"poolGrowthLimit": 7
}
],
"outOfProcessSettings": {
"workerLifetimeLimit": {
"$fmt": "timeSpan",
"$value": "24:00:00"
},
"workerMemoryLimit": 1073741824,
"workerMaxConcurrentExecutions": 200
}
}The example overrides PreProvisioning only. Other script types continue to use their defaults unless they have their own entry or ForceOop is enabled in Services/appsettings.json.