Job Config Properties

Each ETL graph or Jobflow may have set of config properties, which are applied during the execution. Properties are editable in web GUI section "sandboxes". Select job file and go to tab "Config properties".

The same config properties are editable even for each sandbox. Values specified for sandbox are applied for each job in the sandbox, but with lower priority then config properties specified for the job.

If neither sandbox nor job have config properties specified, defaults from main server configuration are applied. Global config properties related to Job config properties have prefix "executor.". E.g. server property "executor.classpath" is default for Job config property "classpath". (See Part III, “Configuration” for details)

In addition, it is possible to specify additional job parameters, which can be used as placeholders in job XML. Please keep in mind, that these placeholders are resolved during loading and parsing of XML file, thus such job couldn't be pooled.

If you use a relative path, the path is relative to ${SANDBOX_ROOT}.

In path definition, you can use system properties - e.g. ${} - and some of server config properties: ${sandboxes.home}, ${sandboxes.home.partitioned} and ${sandboxes.home.local}.

Table 21.4. Job config parameters

Property nameDefault valueDescription
classloader_caching falseClover creates new classloaders whenever is necessary to load a class in runtime. For example, Reformat component with a Java transformation has to create a new classloader to load the class. It is worth noting that classloaders for JDBC drivers are not re-created. Classloader cache is used to avoid PermGen out of memory errors (some JDBC drivers automatically register itself to DriverManager, which can cause the classloader cannot be released by garbage collector). This behavior can be inconvenient for example if you want to share POJO between components. For example, a Reformat component creates an object (from a jar file on runtime classpath) and stores it into a dictionary. Another Reformat component get the object from the dictionary and tries to cast the object to expected class. ClassCastException is thrown due different classloaders used in the Reformat components. Using this flag you can force CloverServer to re-use classloader when possible.
classpath List of paths or jar files which contain external classes used in the job file (transformations, generators, JMS processors). All specified resources will be added to runtime classpath of the transformation job. All Clover Engine libraries and libraries on application-server's classpath are automatically on the classpath. Separator is specified by Engine property "DEFAULT_PATH_SEPARATOR_REGEX". Directory path must always end with a slash character "/", otherwise ClassLoader doesn't recognize it's a directory. Server always automatically adds "trans" subdirectory of job's sandbox, so It doesn't have to be added explicitly.
compile_classpath List of paths or jar files which contain external classes used in the job file (transformations, generators, JMS processors) and related libraries for their compilation. Please note, that libraries on application-server's classpath aren't included automatically. Separator is specified by Engine property "DEFAULT_PATH_SEPARATOR_REGEX". The directory path must always end with a slash character "/", otherwise ClassLoader doesn't recognize it's a directory. Server always automatically adds "SANDBOX_ROOT/trans/" directory and all JARs in "SANDBOX_ROOT/lib/" directory, so they don't have to be added explicitly.
debug_mode false

If true, edges with debug enabled will store data into files in a debug directory.

Without explicit setting, running of a graph from Designer with server integration would set the debug_mode to true. On the other hand, running of a graph from the server console sets the debug_mode to false.

delete_obsolete_temp_files false

If true, system will remove temporary files produced during previous finished runs of the respective job.

This property is useful together with enabled debug mode ensuring that obsolete debug files from previous runs of a job are removed from temp space. This property is set to "true" by default when executing job using designer-server integration.

enqueue_executions falseBoolean value. If it is true, executions above max_running_concurrently are enqueued, if it is false executions above max_running_concurrently fail.
jobflow_token_tracking trueIf false, token tracking in jobflow executions will be disabled.
localeDEFAULT_LOCALE engine property Can be used to override the DEFAULT_LOCALE engine property.
log_levelINFOLog4j log level for this graph executions. (ALL | TRACE | DEBUG | INFO | WARN | ERROR | FATAL) For lower levels (ALL, TRACE or DEBUG), also root logger level must be set to lower level. Root logger log level is INFO by default, thus transformation run log does not contain more detail messages then INFO event if job config parameter "log_level" is set properly. See Chapter 16, Logging for details about log4j configuration.
max_graph_instance_age 0A time interval in milliseconds which specifies how long may a transformation instance last in server's cache. 0 means that the transformation is initialized and released for each execution. The transformation cannot be stored in the pool and reused in some cases (a transformation uses placeholders using dynamically specified parameters)
max_running_concurrently unlimitedMax number of concurrently running instances of this transformation. In cluster environment, the limit is per node.
password  This property is deprecated. Password for decoding of encoded DB connection passwords.
skip_check_config default value is taken from engine propertySwitch which specifies whether check config must be performed before transformation execution.
time_zoneDEFAULT_TIME_ZONE engine property Can be used to override the DEFAULT_TIME_ZONE engine property.
tracking_interval 2000Interval in milliseconds for sampling nodes status in running transformation.
use_jmxtrueIf true, job executor registers jmx mBean of running transformation.
use_local_context_url falseIf true, the context URL of a running job will be a local "file:" URL. Otherwise, a "sandbox:" URL will be used.
verbose_mode trueIf true, more descriptive logs of job runs are generated.
worker_execution true Set to false to enforce execution in Server Core. Can be set per file or per sandbox.

Job config properties

Figure 21.12. Job config properties