VERIFIED SOLUTION i

Resolve Purge deleting workItems in-flight in EngageOne Server 4.4

Product Feature: Purge
Versions affected: all 4.4

Issue

Running Purge in concurrency mode in EngageOne Server deletes in-flight workItems, and the following errors are returned:

Those that failed to deliver the following entries are showing the tds_requestchannels table: 

362 356 64 B 7 java.io.FileNotFoundException: Source '/opt/pbs/activedrive/temp/362-publicationhip.hip' does not exist e100e98a037c4279852745fc3fbec7f6 01-AUG-17 xxxxxxxxx 01-AUG-17 xxxxxxxxx 0 0 
351 345 64 B 7 java.io.FileNotFoundException: Source '/opt/pbs/activedrive/temp/351-publicationhip.hip' does not exist e100e98a037c4279852745fc3fbec7f6 01-AUG-17 xxxxxxxxx 01-AUG-17 xxxxxxxxx 0 0 
363 357 64 B 7 java.io.FileNotFoundException: Source '/opt/pbs/activedrive/temp/363-publicationhip.hip' does not exist e100e98a037c4279852745fc3fbec7f6 01-AUG-17 xxxxxxxxx 01-AUG-17 xxxxxxxxx 0 0 

Cause

Problem is caused by the skipOrphanFiles option in purge which is set to false by default.  Purge creates a list of all items in the database submitted before the purge, and then deletes everything from tds/requests that is not on this list.  User is making the requests while purge is running so the new requests won't be on the list and will be treated as orphan files and deleted.

Resolution

UPDATED: September 28, 2017
Fix available in release 4.4.4 of EngageOne where purge will only delete files from active-drive/temp which are at least 1 hour older than purge start time.  Patch for 4.4.3 available on request.