syahra712 commented on issue #138: URL: https://github.com/apache/solr-orbit/issues/138#issuecomment-6290458194
Thanks, I'll take this one. Here's the plan, so you can redirect me before I write it: 1. Build the JVM devices (`jfr`, `gc`, `jit`, `heapdump`, `disk-io`) once in `test_run_orchestrator.py` from `telemetry.devices` / `telemetry.params`, using the same factory the `start`/`stop` path in `builder/launcher.py` uses. Then pass them to `SolrProvisioner` and `SolrDockerLauncher` in all three pipelines. 2. Docker: when a JVM device is enabled, bind-mount the log directory into the container at the same path, and make sure uid 8983 can write to it. Then `gc.log` / `profile.jfr` survive `docker rm -f`. 3. heapdump: run the dump before the container or process is stopped, not after. 4. Tests: unit tests that each pipeline passes the devices through and that `SOLR_OPTS` gets the flags. For Docker, a test that checks the `-v` mount and the paths in the flags. If you want, I can also add an `it/` case that checks `gc.log` exists after a short docker run. I'll split it into two PRs: wiring plus from-distribution/from-sources first, then Docker mounts plus heapdump. That keeps each one reviewable. Does that work for you? -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
