I had JMC running on JDK 10 and dumped the last 5 minutes of the flight recording. After doing this twice (not an exact reproducer, sorry for that), I see a recording listed as "Snapshot" in JMC. That recording has a very strange start time (not 2017-10-30 as expected, but 292278994-08-17 08:12:55). This corresponds to 9223372036854775807 ms, according to JMC. If I look in the json produced by the reference parser, I see the following values:
{
"name": "com.oracle.jdk.ActiveRecording",
"typeId": 1634,
"startTime": "2017-10-30T09:32:53.360024479Z",
"duration": "PT0S",
"values": {
"startTime": 463718693704,
"duration": 0,
"eventThread": {
"osName": "Worker-4",
"osThreadId": 78407,
"javaName": "Worker-4",
"javaThreadId": 62,
"group": {
"parent": {
"parent": null,
"name": "system"
},
"name": "main"
}
},
"stackTrace": null,
"id": 1,
"name": "JMC_Default",
"destination": null,
"maxAge": 9223372036854775807,
"maxSize": 104857600,
"recordingStart": 1509355780868,
"recordingDuration": 9223372036854775807
}
}, {
"name": "com.oracle.jdk.ActiveRecording",
"typeId": 1634,
"startTime": "2017-10-30T09:32:53.360040434Z",
"duration": "PT0S",
"values": {
"startTime": 463718731996,
"duration": 0,
"eventThread": {
"osName": "Worker-4",
"osThreadId": 78407,
"javaName": "Worker-4",
"javaThreadId": 62,
"group": {
"parent": {
"parent": null,
"name": "system"
},
"name": "main"
}
},
"stackTrace": null,
"id": 6,
"name": "Snapshot",
"destination": null,
"maxAge": 9223372036854775807,
"maxSize": 0,
"recordingStart": 9223372036854775807,
"recordingDuration": 9223372036854775807
}
}
Is this snapshot recording event necessary to produce an event for? Should it be visible and used for something, or is it only an artifact of some sort?
{
"name": "com.oracle.jdk.ActiveRecording",
"typeId": 1634,
"startTime": "2017-10-30T09:32:53.360024479Z",
"duration": "PT0S",
"values": {
"startTime": 463718693704,
"duration": 0,
"eventThread": {
"osName": "Worker-4",
"osThreadId": 78407,
"javaName": "Worker-4",
"javaThreadId": 62,
"group": {
"parent": {
"parent": null,
"name": "system"
},
"name": "main"
}
},
"stackTrace": null,
"id": 1,
"name": "JMC_Default",
"destination": null,
"maxAge": 9223372036854775807,
"maxSize": 104857600,
"recordingStart": 1509355780868,
"recordingDuration": 9223372036854775807
}
}, {
"name": "com.oracle.jdk.ActiveRecording",
"typeId": 1634,
"startTime": "2017-10-30T09:32:53.360040434Z",
"duration": "PT0S",
"values": {
"startTime": 463718731996,
"duration": 0,
"eventThread": {
"osName": "Worker-4",
"osThreadId": 78407,
"javaName": "Worker-4",
"javaThreadId": 62,
"group": {
"parent": {
"parent": null,
"name": "system"
},
"name": "main"
}
},
"stackTrace": null,
"id": 6,
"name": "Snapshot",
"destination": null,
"maxAge": 9223372036854775807,
"maxSize": 0,
"recordingStart": 9223372036854775807,
"recordingDuration": 9223372036854775807
}
}
Is this snapshot recording event necessary to produce an event for? Should it be visible and used for something, or is it only an artifact of some sort?