Skip to main content

FME 2021.2.6 (no possibility to update)

I have a complex FME workspace with about 10 Feature Readers for different databases. For development, it’s essential to use feature caching. However, when running the workspace, the caching must be turned off. My current method to release an update:

  1. Update the dev-workspace
  2. Copy the dev-workspace to the production location
  3. Open the production workspace and disable caching for each Feature Reader manually
  4. Launch the production workspace through a .bat file (that executes multiple procedures, one of them being the workspace)

I would much prefer to pass “enable feature caching” as a parameter in the .bat file to avoid opening and alterting the readers everytime I update the workspace. Am I missing out on a more efficient option here?

 

I could probably pass the timeout time as a user parameter and set it to a very low value (e.g., 1s). However, I assume this will severely impact performance, so I want to turn off caching all the way. Please correct me, if I’m wrong.

🤔Hi ​@pir Could you make a copy of the readers in your workspace and have one featurereader copy for dev runs on the dev machine with Cache on and the other to off. With a tester testing for the dev machine name (or something that identifies the Dev Machine) you can run with cache turned on if in Dev machine or run the one with cache turned off if not on dev machine.

Hope that helps!
 

 


Thanks, this seems like a working solution that I didn’t think of!
It will clutter my already complex workspace even more though as I am reading roughly 10 different feature classes from each of the 10 different feature readers. And, I will have to add all the connections going to the correct transformers from there. If there’s a simpler solutions, help would still be much appreciated.


@pir I hear you. Can you split up into two workbenches and use a workspacerunner? One for On Dev and one for Deployed?
That might save you from having to copy and connect a whole bunch of transformers.


Isn’t this about feature caching for the entire workspace? This is saved in the fmw which is a text file you can edit before running. Replace of a string.

#!   ENABLE_DATA_CACHING="Yes"

#!   ENABLE_DATA_CACHING="No"

Same for the enable data feature cache checkbox:

#!     <XFORM_PARM PARM_NAME="ENABLE_CACHE" PARM_VALUE="YES"/>

#!     <XFORM_PARM PARM_NAME="ENABLE_CACHE" PARM_VALUE="NO"/>


 

I think they’re talking about this option, not workspace feature caching


I assumed it was the caching checkbox. And XFORM_PARM PARM_NAME=”ENABLE_CACHE” looks like the correct answer here. Much better than my suggestion!
 

 


Isn’t this about feature caching for the entire workspace? This is saved in the fmw which is a text file you can edit before running. Replace of a string.

#!   ENABLE_DATA_CACHING="Yes"

#!   ENABLE_DATA_CACHING="No"

Same for the enable data feature cache checkbox:

#!     <XFORM_PARM PARM_NAME="ENABLE_CACHE" PARM_VALUE="YES"/>

#!     <XFORM_PARM PARM_NAME="ENABLE_CACHE" PARM_VALUE="NO"/>

Thank you, this is a great answer.

<XFORM_PARM PARM_NAME="ENABLE_CACHE" PARM_VALUE="YES"/>

is what I was looking for. So I can write a short script that copies the workspace to the production locaton and replaces this text.