JDK-8218792 : Milestone 1: Prototype
  • Type: Sub-task
  • Component: hotspot
  • Sub-Component: jfr
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2019-02-12
  • Updated: 2019-02-15
  • Resolved: 2019-02-15
Description
Build a prototype API that can validate that streaming works within and across file chunks.

Deliverables:

- Extend -XX:StartFlightRecording / JFR.start with an option to set flush interval
- Add method to the JVM class that can flush buffers within a chunk
- Create period task that flush events at the specified interval 
- Implement communication protocol (parser + JVM) to atomically read/write in the chunk header
- Rewrite checkpoint mechanism so all the necessary constants are written before a flush point
- Add EventStream class that can start a stream, push events and close it
- Add unit tests that validate that streaming works within and across chunks