Summary

This article describes the changes included in adTempus version 4.3, released on March 26, 2016.

Note: This is a free update for all adTempus 4 users. No license update is required.

Version Information

After you install this update, the About box in the adTempus Console will show the following version information:

Product Version: 4.3.0
Console Version: 4.3.0.0
Client Components Version: 4.3.0.0
Server Version: 4.3.0 (4.3.0.0)

If your installation shows later versions, you do not need to install this update.

Upgrading from 4.0.x

If you are upgrading from version 4.0.x (4.0.0, 4.0.1, or 4.0.2) and you installed adTempus to a location other than the default installation folder ("C:\Program Files\Arcana Development\adTempus\4.0"), see article K00000455 for important information about changes that will be made during the upgrade.

This does not apply if you are upgrading from version 4.1 or later.

Installation Notes

If you are using Distributed Scheduling, you can install the update on the Master and push it to Agents from the Remote Agents view. The Master and Agents need to be updated at the same time; you may encounter operational errors if some computers continue running an older version.

Remote Consoles can be updated by choosing the Update option from the Help menu.

Obtaining the Update

See the download page to download the latest version of adTempus. The setup program will update your installation.

Changes in This Update

This release corrects many issues discovered since version 4.2, and adds some minor enhancements.

See article K00000478 for a list of changes in version 4.2.

The following changes are included in this update:

Actions
adTempus fails to use elevated context when capturing files or deleting files after captureCR00006111
Defect

When capturing files for a File Capture Action, or deleting files that have been captured, adTempus may fail to use the elevated logon context, resulting in error "Access to the path is denied" if the necessary permissions are assigned only to Administrators.

Incorrect error message logged when adTempus cannot delete a captured fileCR00006112
Defect

When adTempus fails to delete a captured file, it logs error ADT005055 ("Could not capture file") even though the file was successfully captured to the file history. This has been replaced with error ADT005409 ("Could not delete captured file").

File Capture error if File Capture file specification is emptyCR00006113
Defect
If a File Capture Action is configured to capture a file where the file name is specified using a Job Variable, and that variable does not have a value at runtime, adTempus reports a failure because the filename is not valid. This has been changed to ignore file specifications that evaluate to an empty string.
Conditions
Job Condition may be satisfied prematurely when target job has multiple stepsCR00004095
Defect
If Job A has a Job Condition requiring that Job B must succeed, and Job B has multiple steps, in some cases Job A may execute after a non-terminal step in Job B completes, rather than waiting for the end of Job B.
Job stuck in "Waiting for Condition" status after all conditions are metCR00005098
Defect

This problem still occurred in some cases even after fix CR00005098 in adTempus 4.2. The problem occurred only when:

  • A job runs in a Queue that is configured to use Load Balance or Slave mode
  • The Queue is configured to check conditions on the Master
  • The job has previously been sent to an Agent for execution following a condition check.

On subsequent execution attempts, the job will get stuck in "Waiting for Condition" status.

In addition, if the job is configured to not execute if another instance is already running, the job may be skipped even though no instance is active.

When a Job Condition is configured to look at the "Most recent instance since..." it may look at the wrong instanceCR00007116
Defect
Console
Cannot export data directly between adTempus instances running on the same serverCR00007126
Defect
If the adTempus Console is connected to more than one adTempus instance on the same computer, the Export window, does not show the additional instance(s) as valid targets for data export.
Hold and Release commands may not show correctly on context menu for Jobs, Queues, and GroupsCR00007136
Defect
Console connection fails in some cases when trying to hold or release Job, Group, or QueueCR00007141
Defect

When you attempt to hold or release a job, queue, or group using the right-click context menu, the Console connection to the server may fail with the following error:

Message Number: ADT005166E Message: The server connection has failed or has been closed: There was an error while trying to serialize parameter http://arcanadev.com/adTempus/4.0:value. The InnerException message was 'Enum value '2147483646' is invalid for type 'ArcanaDevelopment.adTempus.Shared.HoldType' and cannot be serialized. Ensure that the necessary enum values are present and are marked with EnumMemberAttribute attribute if the type has DataContractAttribute attribute.'. Please see InnerException for more details.: Enum value '2147483646' is invalid for type 'ArcanaDevelopment.adTempus.Shared.HoldType' and cannot be serialized. Ensure that the necessary enum values are present and are marked with EnumMemberAttribute attribute if the type has DataContractAttribute attribute.

This problem was resolved.

Workaround

This problem only occurs when using the right-click context menu. You can still change the hold type by editing the job, queue, or group and changing the hold setting in the properties window.

Users cannot Duplicate objects unless they have full controlCR00007143
Defect

If a user tries to duplicate an object (e.g., a Job), they get a permission error unless they have full control for the object.

This was corrected to work properly. A user can duplicate an object if the user has permission to view the object and to create new objects of that type. For example, to duplicate a Job, the user must have permission to view the job and also permission to create new jobs in the Group where the job is found.

Job Monitor stops updating instances that have been running for longer than the "Show past" time limitCR00007155
Defect

If the Job Monitor view is configured to show both Active and Past instances, the Job Monitor stops updating the statuses of jobs that have been running longer than the "Past" time limit.

For example, if the Job Monitor is configured to show instances from the past 12 hours, any job that runs longer than 12 hours will no longer be updated in the Job Monitor, but will still appear there as active even if it has finished.

This problem was corrected. The update must be applied to the adTempus server; the Console software is not affected.

When a different Job Group is selected, the history from the previously-selected job remains displayed until another job is selectedCR00007157
Defect
If you select a Job Group in the Console Tree but don't select a job within the group, the Console continues to display the history for the job that was previously selected, making it appear that the history is related to the new selected group. This problem was resolved.
Data Conversion
Database upgrade may time out when converting history dataCR00005106
Defect
During the database upgrade process from a previous version of adTempus, the conversion may fail due to a database timeout when converting job history data. This problem was corrected.
Database
Add ability to wait for database to be available during startupCR00006109
Enhancement
At computer startup, in some cases adTempus tries to connect to SQL Server before SQL Server has finished loading the database, so the connection fails, and adTempus fails to start. An option has been added to specify a delay for adTempus to wait for the database.
General
Support proxy servers for FTP and SFTP connectionsCR00007121
Enhancement
Connections to FTP and SFTP servers now can be configured to use proxy servers.
Job status changes may not be recorded when database deadlock occursCR00004093
Defect
In some situations when database deadlock occurs when adTempus is recording the completion of a job, this may result in a missing finish time for the job and instance.
Job instances and log messages do not correctly inherit permissions from jobsCR00004097
Defect

If a non-Admin user is granted "Execute" permission for a job, user should be able to terminate an active instance of the job, and to acknowledge instances and messages for the job. However, if the permissions are assigned at the Job level (rather than at the Group or Queue level), they are not properly inherited, and these options are not available to the user.

Job may show error icon even though all failed instances appear to have been acknowledgedCR00005104
Defect

In some situations the Console showed a red "error" icon for jobs (indicating the existence of one or more failed instances for the job) even though no instances for the job appeared in the Failed Jobs view.

This problem was partially resolved in version 4.2 under CR00003058 but the problem remained in some scenarios.

"Total Executions" statistic for jobs is doubledCR00006108
Defect

The "Total Executions" count tracked for each job and shown on the Statistics page is double the actual execution count.

This problem was fixed so that executions are not double-counted going forward, but the existing (incorrect) count is not adjusted.

Limit size of messages written to Job LogCR00007133
Defect
Scripts run by adTempus can log messages to the Job Log. In some cases the size of the message text being logged was very large, resulting in size limit errors when trying to send data to the Console. adTempus has been modified to truncate large messages in the Job Log and send the full message details to the Script Debug Log.
Job Diagram may give unexpected error when processing jobsCR00007138
Defect
Some data left in database during history cleanup operationsCR00007142
Defect

With adTempus 4.2 installed, when adTempus purges old history data from the database, records are left behind in some tables when they shouldn't be.

This update fixes the problem.

Jobs may not be immediately queued/dequeued for execution when group is released/heldCR00007146
Defect

When you hold (disable triggers for) a Job Group, all jobs within the group should be dequeued (should no longer be triggered). Conversely, when you release (enable triggers for) a Job Group, all jobs within the group should resume executing based on their schedules or other triggers. However, in some cases this does not happen after you change the hold settings for a group.

If you subsequently edit and save a job, that job will then be queued or dequeued as expected. If you restart the adTempus service, all jobs will behave as expected.

This issue was resolved so jobs are queued/dequeued when the change is made to the group.

Minimum interval applied incorrectly for Alert Notification RulesCR00007154
Defect

If you have defined an Alert Notification Rule, adTempus interprets the Minimum Interval setting incorrectly and sends alerts before the minimum interval as elapsed, but not after it has elapsed. This is the reverse of the expected behavior.

This problem was corrected.

Import/Export
Add option to only import objects that were explicitly exportedCR00007134
Enhancement

A new option in the Import wizard allows you to only import objects that were explicitly exported.

For example, when you export a job, the export file also includes everything the job links to, including its Job Group, Job Queue, Credential Profile, Remote Agents, Notification Recipients, etc. By default, all of these additional objects get imported on the target server if they are newer than the existing versions on the target server.

In some cases (such as copying a job from your test server to your production server) you only want to import the job itself and not overwrite the existing settings for the other objects. When the "Don't import referenced objects that already exist on this server" option is checked, these objects will not be listed on the object selection page of the wizard and will not be imported unless they do not already exist.

In all cases, adTempus imports any linked objects that do not already exist on the target server.

When importing jobs from adTempus 3.x, trigger times may be shifted to the wrong time zoneCR00007122
Defect
When you import an adTempus 3.x export file into adTempus 4, jobs that use Schedule Triggers to trigger at a specified time may end up scheduled at the wrong time due to a time zone shift. This occurs because adTempus 3 erroneously includes time zone information with the scheduled execution times, and adTempus 4 erroneously adjusts the trigger times using this information. specified execution times should always be absolute times regardless of time zone. This problem was corrected to ignore the time zone.
Job Execution
Jobs may be slow to start due to excessive data fetchCR00004082
Defect
When adTempus starts a job, it is in some cases loading a large amount of unnecessary data about other jobs, delaying the start of the job by up to 10s of seconds. If many jobs are being started around the same time, this can produce a cumulative delay, resulting in jobs being started several minutes after their trigger time.
Nested variables not expanded when setting environment block for programsCR00006114
Defect

If you have defined nested job variables, the nested variable(s) are not expanded when the environment block is set for programs run by adTempus.

For example, you have the following job variables:

  • "VariableA" is set to "Value A"
  • "VariableB" Is set to "The value is: %VariableA%"

VariableB is configured to be added to the environment for programs run by adTempus. If the program retrieves "VariableB" from the environment, it should get "The value is: Value A". However, it gets "The value is: %VariableA%" instead. This occurs even though the variable expansion works correctly elsewhere within adTempus and appears correctly in the debug log for the job.

Notification
Files not attached to notification message when maximum message size for messaging service provider is 0CR00004094
Defect

When upgrading from adTempus 2 to adTempus 4, if a Messaging Service Provider has the maximum message size set to 0 (which indicates "no limit" in adTempus 2), adTempus does not include any attachments on notification messages.

Workaround: Edit Messaging Service Provider and click OK to update the limit to the default of 10MB.

Reports
Security Configuration report does not show any dataCR00007156
Defect

When you run the Security Configuration Report, it may not show any data. This problem was corrected.

This problem was resolved. The update must be applied to the adTempus server; the Console software is not affected.

Responses
Default notification message does not contain enough details for some Response scenariosCR00005102
Defect

When a Program Execution Task has a Response configured to send notification on success or failure, the default notification message is a generic message: "The program has completed with exit code {0}". The message should indicate whether this is being treated as a success or failure.

The generic message ADT005003 has been replaced with the appropriate status message:

  • ADT005252: Task ended with exit code {0}, which indicates failure according to the exit code rules for the step
  • ADT005410: Task completed successfully with exit code {0}. 
Some Responses based on number of files processed by File Operation Task are incorrectCR00007158
Defect

When you execute a File Operation Task you can configure Responses based on the number of files processed. The following problems were corrected for those Responses:

  • When you select "Affected file count matches a value," there was no way to specify the file count
  • The responses for "No files affected" and "One or more files affected" were reversed
Security
Users cannot hold/release jobs, groups, or queues unless they have Modify permissionCR00007153
Defect

A user who has been granted Hold/Release permission for a job, group, or queue is unable to change the hold settings for the object unless the user also has Modify permission, which should not be required.

This problem has been corrected.

Server Tools
Opening "Set Command" window in adTempus Database Utility may cause connection information to be lostCR00004080
Defect

In the adTempus Database Utility, if you use the File/Set Connection command and cancel out of the connection dialog, subsequent attempts to open a new query tab result in error "SQL Server does not exist or access denied" because the tool has lost the database connection information.

Tasks
Job Variables not expanded in external script file nameCR00005105
Defect

If you use a Script Execution Task to run a script stored outside adTempus, and the path/filename of the script to execute contains Job Variables, adTempus does not expand the variables, and task execution fails because script file cannot be found. This problem was resolved to expand the job variables.

Triggers
File Trigger may not trigger for files on network drivesCR00004088
Defect

A File Trigger may not trigger for a file if all of the following are true:

  • The target file is on a remote (network) drive.
  • The trigger is configured to wait until x seconds after the last modification timestamp for the file.
  • adTempus initially detects the file before the x seconds have elapsed.

In this scenario, adTempus may not "see" the file when it subsequently tries to check the modification timestamp, and therefore does not trigger the job.

Job Variables created or modified by trigger scripts are not passed to jobCR00007127
Defect
When a trigger runs a script as part of the trigger evaluation process, if that script creates or modifies any Job Variables those variable changes are not passed through to the job when it executes.