2014-04-16

Suppose there's a complex distributed program that does some kind of backend processing. There's a "master server" that talks to numerous "workstations" (those are also servers, just simpler) and each "workstation" runs one or more "worker processes" which actually do the processing. Those worker processes have a dependency on a complex data processing library and sometimes the processing will fail because that library can't handle a specific data item (binary file) with specific parameters.

The developers of the library have to fix such problems but to do so they have to first reproduce them. Installing and configuring the whole solution is a lot of pain so there's a "reduced workstation" which runs the worker process and passes the data item to it. So the library developers simply run the "reduced workstation", provide a path to the data item binary file, attach the debugger to the worker process and press the Large Red Button and then wait until control hits some interesting point.

So this "reduced workstation" basically isolates the part of the solution which includes a single worker process and the part of the workstation that interacts with the worker process so that whoever needs to debug the data processing library can focus on the data processing library instead of configuring the solution.

Is there a common name for such "reduced workstation" tool?

Show more