Description
I've seen this in several places now - commands returning -1 on failure to the shell. It's a bug. Someone confused their posix style returns (0 on success, < 0 on failure) with program returns, which are an unsigned character. Thus, a return of -1 actually becomes 255 to the shell.
$ hadoop key create happykey2 --provider kms://http@localhost:16000/kms --attr "a=a" --attr "a=b" Each attribute must correspond to only one value: atttribute "a" was repeated ... $ echo $? 255
A return value of 1 instead of -1 does the right thing.