Orchestrate® Shell
(OSH) is a program that is patterned on a UNIX shell that implements a text-based command
language (also called OSH), and that controls the parallel processes
that implement a job.
When you run a job in the
IBM® InfoSphere® DataStage® and QualityStage® Designer client
or the
InfoSphere DataStage and QualityStage Director client,
two events occur:
- The client generates several internal text files and sends them
to the parallel engine.
- After the text files are delivered, the client signals the server
to start a program that is called OSH.
The OSH program implements all the functions of the parallel engine,
such as process synchronization, messaging, performance logging, and
monitoring.
You can start the OSH program from a command line if all required
environment variables are set. You can use the OSH command line for
job development and debugging or when you want to use other command-line
tools to control the parallel engine.
The OSH command-line displays messages for syntax errors. These
OSH messages are not usually displayed unless you are using the command
line directly.
Many messages from the parallel engine explain errors about the
OSH syntax or parameter values. Because a job compilation typically
produces the correct OSH code, you do not see these types of error
messages. However, the following situations might cause you to see
the OSH-related messages:
- You can write OSH code directly or change the .osh files
that the Designer client generates
when a job is complied. If changes to the OSH code introduce errors,
then the parallel engine generates these messages. It is possible
that you can correct the changes that you wrote in the OSH code or
changes in the .osh file to resolve these errors.
- You can use job parameters to insert values into Designer client that
cannot be validated until a job is run. For example, suppose that
a stage property page requires a value be an integer. If you use a
job parameter that specifies a text string, the parallel engine generates
an error that normally would not be shown in the Designer client.
- You can use the Generic stage, which is a processing stage, to
call an Orchestrate operator
from within a stage and pass its options as required. Because you
can pass options with the Orchestrate operator,
an error can occur if option names, option values, or both, are not
specified correctly. It is possible to resolve these errors by correcting
the changes that you made in the OSH code.
- You can implement OSH code directly by using the Specification
property of the Modify stage in the Designer client.
Much like the Generic stage, implementing your own OSH code can cause
errors if the correct options and values are not specified. It is
possible to resolve these errors by correcting the changes that you
made in the OSH code.
If you receive an OSH-related message, but you are confident that
a job is not modifying the OSH code that the Designer client generated,
then follow the procedures for reporting an internal program error
to IBM Software Support.