Symptoms
We have successfully tested 4.6.11 on DEVELOPMENT and INTEGRATION boxes. Now, we pushed the upgrade to STAGING environment and now getting an error "Invalid Archive Type". We got a similar error on DEV but we solved it through making all DLLs same.
Also attaching the error from Event Viewer. This error never showed up in DEV or INT.
The APP Server does not have any K2 components. Only the WFE and Central Admin servers have K2 components and we ran the config tool successfully there. Also restarted the servers and reset IIS.
Is there any specific .NET requirements for this app server?
Diagnoses
.NET framework 4.5 is supported on 4.6.11 so this is not the source of the issue. This issue only happened after doing the upgrade from 4.6.7 to 4.6.11. Main issues with Custom code projects that utilize the K2 API and its associated .dlls. Some dll files used are the following:
SourceCode.HostClientAPI.dll
SourceCode.SmartObjects.Client.dll
SourceCode.Workflow.Client.dll
First thing we verified was that all the dll files being used in the project were on the correct version of 4.6.11 and had been successfully updated. This is only on a Sharepoint Web App server so there are no K2 components installed. dll files are being referenced from a project folder that utilizes the K2 API.
Dev and Integration function properly with these projects so we copy pasted the necessary files that included the K2 dlls into staging and ensured that across Dev, Integration and Staging we had the same files.
Resolution
In Visual Studio we analyzed where the projects were pulling the .dll's that were causing issues. When compiling/rebuilding project1 in visual studio to re-add the relevant files we noticed that only two of the dlls were in the ...in folder and all of them were located in the ...inlib folder. We copied the dlls that did not get added to the bin folder from lib to bin. Upon adding these dll files into the bin and reloading the Sharepoint site that utilized the code from this project we saw that there was no error being thrown and also the web part functioned properly.
When troubleshooting project2 that had a similar issue, we tried running the same solution we did on project 1. Copying the dlls from lib into the bin file we did not get a solution. We tried copying the dll files one at a time into the bin file from lib to see the impact this had. We continued a process of adding in the dll identified in the error message one at a time. However, upon adding the Workflow.Client.dll it would completely break the web part from showing any data. We then noticed the last modified date and file size of the Workflow.Client.dll was different in this file compared to the project 1 file. Although the Workflow.Client.dll was the correct 4.6.11 version it was not similar to another 4.6.11 version of the same dll. Using the Workflow.Client.dll that was most recently modified and was similar to that on the K2 Dev server will solve this issue and prevent it from popping up in the future. I am guessing that the installer must have not completely updated the Workflow.Client.dll to the most recent version. We also did not have all .dlls currently in the bin folder so upon adding them into the bin from lib we saw the errors on the web pages vanish.
Note: I believe what is happening here is that the lib folder acts as a repository for the dlls to be used. However when they are being called it appears the directory the project searches for is using the ...in folder.