Specification of Apache Slider behaviour

This is a a "more rigorous" definition of the behavior of Slider in terms of its state and its command-line operations -by defining a 'formal' model of HDFS, YARN and Slider's internal state, then describing the operations that can take place in terms of their preconditions and postconditions.

This is to show what tests we can create to verify that an action with a valid set of preconditions results in an outcome whose postconditions can be verified. It also makes more apparent what conditions should be expected to result in failures, as well as what the failure codes should be.

Specifying the behavior has also helped identify areas where there was ambiguity, where clarification and more tests were needed.

The specification depends on ongoing work in HADOOP-9361: to define the Apache Hadoop Filesytem APIs --This specification uses the same notation

  1. Model: YARN And Slider
  2. CLI actions

Exceptions and operations may specify exit codes -these are listed in Client Exit Codes