Promotion of packages between environments fails with these errors in the output log:
E03020179: Execution of 'htsmtp' failed.S10060051: The PostLinked process(es) failed for parent process: ####.E03060019: Process Execute failed.The package moves successfully and emails might still be delivered, but the process reports a failure state. This behavior often appears after upgrading the Harvest Workbench or migrating to a new broker server.
Harvest Software Change Manager v7.x, v12.x, v14.x
All platforms
Harvest does not have a command line htsmtp utility. This appears to be a misspelling of the actual command hsmtp .
To resolve this problem, it is necessary to examine the UDP or UDP script that is linked to the Promote process, and correct the misspelled command name.
Another method involves opening Windows Explorer on the broker machine, navigate to the folder where your scripts are installed, open a command prompt window in that folder and execute this command:
findstr /s /i /n "htsmtp" *.*
If it's in any of your scripts, this should help us find it.
The third is to login to your Oracle database with SQL*Plus, or your SQL Server database with SQL Server Management Studio and look at the UDP definitions in the Harvest database with the following query:
SELECT
harvest.harenvironment.environmentname,
harvest.harstate.statename,
harvest.harstateprocess.processname,
harvest.harlinkedprocess.processprelink,
harvest.harudp.processname AS "LINKED PROCESSNAME",
harvest.harudp.programname
FROM
harvest.harenvironment
INNER JOIN harvest.harstate ON harvest.harenvironment.envobjid = harvest.harstate.envobjid
INNER JOIN harvest.harstateprocess ON harvest.harstate.stateobjid = harvest.harstateprocess.stateobjid
INNER JOIN harvest.harlinkedprocess ON harvest.harstateprocess.processobjid = harvest.harlinkedprocess.parentprocobjid
INNER JOIN harvest.harudp ON harvest.harlinkedprocess.processobjid = harvest.harudp.processobjid
WHERE
harvest.harudp.programname LIKE '%htsmtp%'
UNION
SELECT
harvest.harenvironment.environmentname,
harvest.harstate.statename,
harvest.harstateprocess.processname,
harvest.harlinkedprocess.processprelink,
harvest.harnotify.processname AS "LINKED PROCESSNAME",
harvest.harnotify.mailfacility
FROM
harvest.harenvironment
INNER JOIN harvest.harstate ON harvest.harenvironment.envobjid = harvest.harstate.envobjid
INNER JOIN harvest.harstateprocess ON harvest.harstate.stateobjid = harvest.harstateprocess.stateobjid
INNER JOIN harvest.harlinkedprocess ON harvest.harstateprocess.processobjid = harvest.harlinkedprocess.parentprocobjid
INNER JOIN harvest.harnotify ON harvest.harlinkedprocess.processobjid = harvest.harnotify.processobjid
WHERE
harvest.harnotify.mailfacility LIKE '%htsmtp%'