Arrêt des tâches défaillantes
Le planificateur exécute par défaut des tâches dans un contexte transactionnel global. Si une tâche est défaillante en raison d'un problème de configuration ou d'une erreur d'application, le planificateur tente de recommencer la tâche jusqu'à ce que le seuil d'incidents du planificateur soit atteint. Vous pouvez arrêter les tâches défaillantes.
Avant de commencer
Le seuil d'échec du planificateur par défaut est 10 et peut être configuré à l'aide de la propriété personnalisée du planificateur taskFailureThreshold. Pour configurer cette dernière, à partir de la console d'administration, cliquez sur Ressources > Planificateurs > nom_planificateur et sélectionnez Propriétés personnalisées. Les valeurs valides sont des entiers non négatifs, c'est-à-dire des entiers supérieurs à 0.
Pourquoi et quand exécuter cette tâche
Procédure
- Annulez ou interrompez une tâche transactionnelle (QOS_ONLYONCE) constamment défaillante. Cette action peut s'avérer difficile si le planificateur n'a pas encore atteint le seuil d'incidents. Les méthodes Scheduler API cancel et suspend ou les opérations du MBean WASScheduler se bloquent jusqu'à ce que la tâche échoue ou que la méthode expire, en attendant le verrouillage de la base de données et qu'une exception TaskPending soit lancée. Dans ce cas, l'application peut tenter de nouveau l'opération d'annulation ou d'interruption jusqu'à ce qu'elle soit achevée.
- Vous pouvez également arrêter le démon du planificateur à l'aide de l'opération stopDaemon sur le MBean WASScheduler afin d'éviter une exécution multiple de la tâche et exécuter l'opération d'annulation ou d'interruption lorsqu'il est arrêté. Lorsque le démon est arrêté, le planificateur n'exécute pas de tâche. Cependant, toutes les opérations de MBean et les méthodes d'API restent disponibles.