Record Watchers without valid sys_IDs trigger the flow for every update in the table


Description

Record watchers without sys_ids (sys_id=^approvalINapproved,rejected) will cause the flow to fire for every update within the table. This will cause process plans to become quite large and consume massive amounts of memory.

 

Steps to Reproduce

1 - Install the attached update set which includes the flow Empty Record Watcher.
2 - Create an incident with short description "RecordWatcher".
3 - Open the flow "Empty Record Watcher" in flow designer.
4 - Make sure the flow is paused at wait for condition on incident_task.
5 - Delete the incident record.
6 - Delete the incident task record.
Observe the flow does not enter an error condition at approval even if the parent incident has been deleted. The flow creates approvals and record watchers without sys_IDs (sys_id=^approvalINapproved,rejected).

Workaround

If you are able to upgrade, review the Fixed In section to determine the latest version with a permanent fix your instance can be upgraded to.

The following workarounds can be used:


Related Problem: PRB1383335