Michael Noll created KAFKA-2214:
-----------------------------------
Summary: kafka-reassign-partitions.sh --verify should return
non-zero exit codes when reassignment is not completed yet
Key: KAFKA-2214
URL: https://issues.apache.org/jira/browse/KAFKA-2214
Project: Kafka
Issue Type: Improvement
Components: admin
Affects Versions: 0.8.1.1
Reporter: Michael Noll
Priority: Minor
h4. Background
The admin script {{kafka-reassign-partitions.sh}} should integrate better with
automation tools such as Ansible, which rely on scripts adhering to Unix best
practices such as appropriate exit codes on success/failure.
h4. Current behavior (incorrect)
When reassignments are still in progress {{kafka-reassign-partitions.sh}}
prints {{ERROR}} messages but returns an exit code of zero, which indicates
success. This behavior makes it a bit cumbersome to integrate the script into
automation tools such as Ansible.
{code}
$ kafka-reassign-partitions.sh --zookeeper zookeeper1:2181
--reassignment-json-file partitions-to-move.json --verify
Status of partition reassignment:
ERROR: Assigned replicas (316,324,311) don't match the list of replicas for
reassignment (316,324) for partition [mytopic,2]
Reassignment of partition [mytopic,0] completed successfully
Reassignment of partition [myothertopic,1] completed successfully
Reassignment of partition [myothertopic,3] completed successfully
...
$ echo $?
0
# But preferably the exit code would be, say, 1.
{code}
h3. How to improve
I'd suggest that, using the above as the running example, if there are any
{{ERROR}} entries in the output (i.e. if there are any assignments remaining
that don't match the desired assignments), then the
{{kafka-reassign-partitions.sh}} should return a non-zero exit code.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)