added exception handling logic
diff --git a/tasks/main.yml b/tasks/main.yml index 12395a3..38e2a18 100644 --- a/tasks/main.yml +++ b/tasks/main.yml
@@ -5,10 +5,21 @@ environment: JAVA_HOME: '{{ java_home }}' -- name: Streaming repair Cassandra nodes - shell: '{{ nodetool }} repair -pr' - environment: - JAVA_HOME: '{{ java_home }}' +- block: + - name: Streaming repair Cassandra nodes + shell: '{{ nodetool }} repair -pr' + environment: + JAVA_HOME: '{{ java_home }}' + + rescue: + - name: Cassandra needs a another minute, then retry + pause: + minute: 1 + + - name: Try again to streaming repair Cassandra nodes + shell: '{{ nodetool }} repair -pr' + environment: + JAVA_HOME: '{{ java_home }}' - name: Nodetool flush after repair shell: '{{ nodetool }} flush'