<{{Subtitle_Weight}} class="prominent-subhead {{Show_Subtitle}}"> {{Header_Subtitle}}

Unable to deploy workflow and an error message appears: "No logical space left to create more user strings"

~~repeating-content.html~~
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.
LEGACY/ARCHIVED CONTENT
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.

Issue

An error message appears while attempting to deploy a workflow from Visual Studio 2015:

"Unexpected error writing metadata to file '%file_path_and_name%' -- 'No logical space left to create more user strings."

Symptoms

This error message itself refers to hitting a .NET limitation. When you deploy a process it is compiled into a .NET assembly, and .NET limits the number of strings in the assembly. These strings are made up of Activities, Events, Data Fields, Escalations, etc.

Resolution

To resolve this, you can eliminate any unnecessary Data Fields, XML Fields, Escalations or Events.

If this is not possible you may move out part of the process into a child process, and use an IPC event to execute it.

Another cause of this error can be a SmartObject reference to a SmartObject with more than 100 properties. In this case create a new method with the necessary properties only and then change the reference.