Si programa un trabajo de SQL Server para ejecutar cada X cantidad de minutos, y no finaliza la llamada anterior antes de que se agote el n. ° de minutos, se saltará la ejecución ya que se está ejecutando o se ejecutará dos instancias del trabajo haciendo los mismos pasos?¿Un trabajo de SQL Server saltará una ejecución programada si ya se está ejecutando?
Respuesta
El agente SQL Server comprueba si el trabajo ya se está ejecutando antes de iniciar una nueva iteración. Si tiene un trabajo de larga duración y aparece su agenda, se omitirá hasta el siguiente intervalo.
Puede probarlo usted mismo. Si intenta iniciar un trabajo que ya se está ejecutando, obtendrá un error en ese sentido.
Estoy bastante seguro de que se saltará si se está ejecutando.
¿Qué versión de SQL Server estás usando? Esto parece una cosa bastante fácil de probar. Configure un trabajo con WAITFOR que inserte una sola fila en una tabla y configure el trabajo para que se ejecute dos veces en una sucesión rápida (más corto que WAITFOR DELAY).
Al ejecutar una prueba de este tipo en SQL Server 2005 omitió la ejecución superpuesta.
Estaba contemplando hacer esto, pero me pareció más fácil googlearlo y ... voila – Paul
- 1. ¿Cómo detectar con precisión si un trabajo de SQL Server se está ejecutando y lidiar con el trabajo que ya se está ejecutando?
- 2. comisión si ya se está ejecutando
- 3. Cómo comprobar si SQL Server Agent se está ejecutando
- 4. encontrar un trabajo si se está ejecutando en Quartz1.6
- 5. ¿Cómo comprobar si una aplicación WPF ya se está ejecutando?
- 6. SQL Server Agent Trabajo en ejecución lenta
- 7. ¿Cancelar una tarea que ya se está ejecutando con Apio?
- 8. Determinar si el programa se está ejecutando en Windows Server
- 9. Determine si ya se está ejecutando una secuencia de comandos de ruby
- 10. Verificando un proceso php ya se está ejecutando
- 11. Cómo comprobar si se está ejecutando un Thread de Android
- 12. ¿Cómo comprobar si la intención pendiente activada por AlarmManager setRepeating ya se está ejecutando?
- 13. Cómo determinar qué versión de SQL Server se está ejecutando utilizando T-SQL
- 14. Verifica programáticamente si se está ejecutando syncdb
- 15. Python: Cómo prohibir la apertura de una aplicación si ya se está ejecutando
- 16. Detectando si ya se está ejecutando otra instancia de la aplicación
- 17. Ejecutando SQL Server en EC2
- 18. Shell script: Asegúrese de que la secuencia de comandos no se ejecuta si ya se está ejecutando
- 19. ¿Cómo verificar si una variable ya está declarada (T-SQL)?
- 20. ¿Por qué Sql Server se sigue ejecutando después de raiserror cuando xact_abort está activado?
- 21. ¿Cómo puedo saber si un proceso ya se está ejecutando usando C#?
- 22. ¿Cómo saber si la actualización MATERIALIZED VIEW se está ejecutando?
- 23. Compruebe si un script php todavía se está ejecutando
- 24. Cómo saber si el servidor de emacs se está ejecutando
- 25. Cómo rastrear si se está ejecutando una tarea async/awaitable
- 26. Powershell: si un proceso no se está ejecutando, inícielo
- 27. Cómo comprobar si un trabajo se está ejecutando en Quartz Framework
- 28. Ejecución programada del procedimiento almacenado en el servidor SQL
- 29. Comprobar si el proceso se está ejecutando
- 30. ¿Verifica si se está ejecutando un servicio de Windows?
Impresionante, eso es exactamente lo que quería saber. Tengo un corrector de correo electrónico que a veces demora un poco para descargar correos electrónicos grandes. Debido a que se ejecuta cada minuto, es muy importante que no se inicie una segunda instancia del trabajo si la primera aún no se ha completado. –
¿Hay alguna forma de lograr esto, me refiero a evitar el salto y comenzar otra instancia del trabajo? ¿O simplemente podría hacerse creando otro trabajo SQL? Gracias –