Details
-
Bug
-
Status: Patch Available
-
Minor
-
Resolution: Unresolved
-
2.6.0
-
None
-
None
Description
In case of crashed task attempts, we may have in rumen logs task attempts with null hostName and finishTime defined to -1
for example
{ "resourceUsageMetrics": { "heapUsage": 0, "physicalMemoryUsage": 0, "virtualMemoryUsage": 0, "cumulativeCpuUsage": 0 }, "vmemKbytes": [], "physMemKbytes": [], "cpuUsages": [], "clockSplits": [], "location": null, "sortFinished": -1, "shuffleFinished": -1, "spilledRecords": -1, "reduceOutputRecords": -1, "reduceShuffleBytes": -1, "fileBytesRead": -1, "hdfsBytesWritten": -1, "hdfsBytesRead": -1, "hostName": null, "finishTime": -1, "startTime": 1489619193378, "result": null, "attemptID": "attempt_1488896259152_410442_r_000015_1", "fileBytesWritten": -1, "mapInputRecords": -1, "mapInputBytes": -1, "mapOutputBytes": -1, "mapOutputRecords": -1, "combineInputRecords": -1, "reduceInputGroups": -1, "reduceInputRecords": -1 }
Jackson parser will automatically consider -1 as a java.lang.Integer. However RumenToSLSConverter make the assumption than jackson has deserialize all timstamp as instance of java.lang.Long, resulting in a ClassCastException.
RumenToSLSConverter also make the assumption that hostName is not null, so we can also have a NullPointerException.