Fix SPARK-4471: blockManagerIdFromJson function throws exception while B...

Fix [SPARK-4471](https://issues.apache.org/jira/browse/SPARK-4471): blockManagerIdFromJson function throws exception while BlockManagerId be null in MetadataFetchFailedException

should you just do something like
```
if (bm1 == null) {
  assert(bm2 === null)
} else if (bm2 == null) {
  assert(bm1 === null)
} else {
  assert(bm1.executorId ...
  ...
}
```