The client workflow raised an error "Key could not be found in collection." For every instance that was created the instance would end up in error state.
We firstly tested the AAD connection by executing the UMuser smart object with the AAD label and we were able to retrieve data from AAD.
We then started looking at the Error profiles of the instances that ended in error and found that the error raised in the workflow is on the Data Event with error "Key could not be found in collection."
This indicated that the workflow not working was not related to the AAD errors found in the host server logs. The errors in the host server logs also decreased over some time since Friday that the client saw the issues.
We then tried to resolve the AAD id of Ramesh on the server rights and we were able to resolve his user rights.
We did also confirm the last version for this workflow was deployed on the 12th of Jan 2017 19:57:34 and was working up until Friday when the client saw the first error that AAD user were not able to resolve.
We then proceeded to go through the forms and views to see what values where passed through to the workflow and we found the two GUIDs needed for the workflow.
We executed both smart object from the SmartObject tester tool and found that with the values that was supplied by the forms, we are able to execute the smart object and return data.
We then proceeded to start the workflow from workspace with the values we validated in the tester tool and found that the workflow instance again ends in error state with the same error on the data event.
I then advised the client we might have some luck if we try and package the workflow but when we try to package the workflow the following error is raised ?'FOI RequestSendResponse' Process is referencing the 'read' Unknown that could not be found.?
We started by recreating the data event in the workflow and deployed the workflow to the development environment.
We than found that the next event the mail event also failed with the same error.
We recreated the event and found that after deployment, the workflow worked as expected and no errors were raised.
We then tried to create a package using PandD to deploy the workflow to production we found that PandD raised an error and we were unable to package the solution.
We had a look at the hostserver log files and found that an error was raised regarding the document library referenced in the workflow with list setting not found.
We then proceeded to check the SharePoint document library and found that the document library had no k2 artefacts associated with it.
We then ran the k2 configuration wizard on the site and the registration wizard executed successfully with no error.
We then tried to create k2 artefacts on the Document library and received an object reference not set to an instance of an object error.
We then proceed to check the workflow and remapped the document library to the email attachment section.
We again tried to package the workflow but received the same error.
We then found that this error was resolved on other environment by applying the PandD rollup v3 for 4.6.9. TFS#544842.
We applied the rollup but the workflow is still not able to package.
We found that the smart object used in the workflow is missing some methods or that is the way it seems. We compared there smart object to a smart object created via SharePoint and found that the method that is blank is populated on our smartObject.
I asked the client how they created the smart object and they advised us that they do not know as it was created by services.
We tried to rectify the workflow not to use any read methods but found that there is still a read method used.
We found that the smart object referenced in the workflow references was the cause of the Package and Deployment issue.
We recreated the events in the workflow to use the correct smartobjects but it seems that the smart object xml that was associated with the workflow did not match. We then manually removed the smart object references and rebuild the workflow after we then deployed the workflow it was packable.