I think if you issue a FATAL/ERROR message, it has to come together with a return StatusCode::Failure
Of course, added a "throw StatusCode**::**FAILURE;" statement following this (since this function doesn't explicitly return any SC).