This article was created in response to a support issue logged with K2. The content may include typographical errors and may be revised at any time without notice. This article is not considered official documentation for K2 software and is provided "as is" with no warranties.
This article has been archived, and/or refers to legacy products, components or features. The content in this article is offered "as is" and will no longer be updated. Archived content is provided for reference purposes only. This content does not infer that the product, component or feature is supported, or that the product, component or feature will continue to function as described herein.
Execution of a transfer data rule with a long (about 10,000 characters) semi-colon delimited string into the picker control causes a K2 SmartForms application pool exception / restart. The same operation works fine for smaller sized strings.
When the long string is transferred, a spinner appears on the picker control for a long time and then the following error message is shown:
A network error has occurred. Unable to execute server-side operation.
In the Windows Event Viewer it is possible to see the following errors:
Faulting application name: w3wp.exe, version: 10.0.14393.0, time stamp: 0x57899b8a Faulting module name: clr.dll, version: 4.6.1586.0, time stamp: 0x575a1507 Exception code: 0xc00000fd Fault offset: 0x00000000001478d2 Faulting process id: 0x4a24 Faulting application start time: 0x01d4de6ee806eb21 Faulting application path: c:\windows\system32\inetsrv\w3wp.exe Faulting module path: C:\Windows\Microsoft.NET\Framework64\v4.0.30319\clr.dll
A process serving application pool 'K2 smartforms' suffered a fatal communication error with the Windows Process Activation Service. The process id was '18980'. The data field contains the error number.
There is a query string limitation when searching SmartObjects data with a "bulk" query string, which breaks the query engine. It is necessary to look at applying a custom setup for filters etc. to work around this.
1. Use multi-select control which includes select all functionality by default.
2. Use the Resolve control method (using control methods are often more preferable than using transfer data rules.
3. Use the "populate list control with data" rule instead of the transfer data rule.