Conversation
There was a problem hiding this comment.
Code Review
This pull request introduces the AcceleratorDaemon class to manage the lifecycle of the Go accelerator daemon subprocess, including spawning the binary, waiting for its Unix domain socket (UDS) to become connectable, and handling teardown. The review feedback identifies several critical robustness and cross-platform compatibility issues: a potential file-locking issue on Windows when cleaning up after a failed spawn, platform-specific errors due to the direct use of socket.AF_UNIX and signal.SIGKILL (which are not supported on all platforms), and a missing cleanup step for self._log_path in _cleanup_tempdir.
Change-Id: I576365629b0f737edc86815208351759d548b734
da7a290 to
26ed3b9
Compare
Change-Id: I7c218be39c2f62a87e8ca8e924717d6091d97ed7
|
/gemini review |
There was a problem hiding this comment.
Code Review
This pull request introduces the AcceleratorDaemon class to manage the lifecycle of the Go accelerator daemon subprocess, including spawning the binary, waiting for its Unix domain socket to become connectable, and performing a graceful teardown. The review feedback suggests several robust improvements: failing fast by checking for AF_UNIX support at the start of the process, preventing resource leaks by handling potential exceptions when opening the log file, wrapping process termination calls to safely handle concurrent exits, and simplifying the polling loop once the socket support check is relocated.
…apper Change-Id: Ia8b08c13324612b478e47782db6042eecf4fcac7
Change-Id: I9e3cbbc360a39955459269526bd6efe417bb764f
Thank you for opening a Pull Request! Before submitting your PR, there are a few things you can do to make sure it goes smoothly:
Fixes #<issue_number_goes_here> 🦕