Model Reference causes String index out of range error in variable setter
I wanted to use the model reference actor. It was suggested to use the Variable Setter actor to put port data into a workflow parameter to output data from the model reference actor. I produce a string index out of range error under certain circumstances but not others. The example below depends on 4 attached workflows:
1. CalledModelNoVariableSetter.xml: trivial workflow called by Model Reference.
2. CalledModel.xml: problematic workflow called by Model Reference.
3. CalledModelCopy.xml: File system copy of CalledModel.xml.
4. ModelReferenceStringError.xml: problematic Model Reference workflow.
These steps should highlight the weird behavior:
1. Open and run CalledModelNoVariableSetter.xml, CalledModel.xml, and CalledModelCopy.xml to confirm they all work. Leave them all open.
2. Open ModelReferenceStringError.xml and point the Model Reference actor at CalledModelNoVariableSetter.xml to confirm it works.
3. Change ModelReferenceStringError.xml to point at CalledModel.xml and run. This should fail with the string error on all platforms.
4. Run CalledModel.xml to confirm it now fails with the same string error.
5. Run CalledModelCopy.xml to confirm it still works.
6. Close, re-open, and re-run CalledModel.xml to confirm it now works again.
7. Run ModelReferenceStringError.xml again. It should throw the same error.
8. Run CalledModel.xml. It should run without error this time.
9. Close and re-open ModelReferenceStringError.xml. Confirm it's pointing at CalledModel.xml. Run and it should still throw the error.
10. Run CalledModel.xml. Now it should throw the error again.
In addition, I noticed a few other things. The error can't be saved with the workflow, so whatever is causing the workflow interactions is transient. I also noticed Kepler getting very slow when running all these steps under XP, but the slowing doesn't seem to show up on other OSes, including Windows 7.