Avevo utilizzato il seguente codice SQL per elencare tutti i lavori senza una data di fine. Ho pensato che avrei potuto usare questo per trovare tutti i lavori attivi. Quello che ho notato è che ho un numero di lavori in questa tabella con un valore stop_execution_date null. Alcuni lavori identici (stesso job_id) vengono ripetuti più volte in questa tabella.Che cosa significa avere lavori con una data di fine null?
select job.*, activity.*
from msdb.dbo.sysjobs_view job
inner join msdb.dbo.sysjobactivity activity
on (job.job_id = activity.job_id)
where run_Requested_date is not null and stop_execution_date is null
Quando eseguo EXEC msdb.dbo.sp_help_job
su questi posti di lavoro, vedo che lo stato di esecuzione corrente è inattivo.
Cosa rappresentano questi lavori? È questo il comportamento quando i lavori non vengono uccisi correttamente?
Sono d'accordo con il commento su ** syssession ** - è necessario determinare quali lavori sono attualmente in esecuzione da ** sysjobactivity **. Tuttavia, una data di stop NULL nella sessione corrente indica che il lavoro è attualmente in esecuzione. – efesar
Nella domanda originale, il poster diceva che sp_help_job mostrava i lavori come inattivi. Ma hai ragione, questo è un altro caso in cui la data di fine sarebbe NULL. –