Thanks very much Wangda Tan, for your review and helpful comments.
I'm OK with both approach - existing one in latest patch or simply return false if there's no such field in proto.
So, if I understand correctly, you are okay with QueueInfo#getPreemptionDisabled returning Boolean with the possibility of returning null if the field doesn't exist. With that understanding, I'm leaving that in the latest patch.
2) For QueueCLI, is it better to print "preemption is disabled/enabled" instead of "preemption status: disabled/enabled"?
Actually, I think that leaving it as "Preemption : disabled/enabled" is more consistent with the way the other properties are displayed. What do you think?
3) Is it possible to add a simple test to verify end-to-end behavior?
I added a couple of tests to TestYarnCLI. Good suggestion.