When the server process invoked by the scheduler is fall, then ad_pinstance.isprocessing stay marked 'Y'. (eg restarted when long-running and because unknown issue not rollbacked).
Processes has disabled concurrent running (in 3.1 we validate it in-process class in latest as I know in core) - then this must be on relevant server node marked to 'N' - otherwise stalled pending processes appear.
remark: IMHO ad_pinstance has no servername/session so can't identify which node initiates it - also not able to identify the process was invoked by user or scheduler.
solution: add server identification (servername, session) to ad_pinstance and mark N when start.
ATM I cant test it on v 6.2