You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Before removing forking from pantsd (#7596 ), we needed to warm up the v2 product graph of the daemon before forking into a pantsd-runner process (relevant code here).
Now, however, this warming is not necessary (because we don't fork a process per run of pants anymore), so we can do some cleanup to that code:
We can remove the concept of "warming" (here), which is invoked from scheduler_service.prefork (here). This probably means that we can remove the entire warm_product_graph function.
We can reword the code around scheduler_service.prefork so that it doesn't mention forking at all. It was called prefork because that's what we did before Pantsd without forking #7596, but it can be called something different now.
We can merge the try:except block in DaemonPantsRunner.create() (here) into the try:except block in DaemonPantsRunner.run() (here). The run() function aims to centralize and correctly handle all the exceptions that happen on a pants run, so the "prefork" logic should be integrated there as well.
This will help a lot in correctly diagnosing pantsd problems, as this split and the wrangled exception handling that happen as a result have caused numerous issues.
The text was updated successfully, but these errors were encountered:
**Implementation for #8002**
Before removing forking from pantsd (#7596 ), we needed to warm up the v2 product graph of the daemon before forking into a pantsd-runner process (relevant code here).
Now, however, this warming is not necessary (because we don't fork a process per run of pants anymore), so we can do some cleanup to that code:
We can remove the concept of "warming" (here), which is invoked from scheduler_service.prefork (here). This probably means that we can remove the entire warm_product_graph function.
We can reword the code around scheduler_service.prefork so that it doesn't mention forking at all. It was called prefork because that's what we did before #7596, but it can be called something different now.
We can merge the try:except block in DaemonPantsRunner.create() (here) into the try:except block in DaemonPantsRunner.run() (here). The run() function aims to centralize and correctly handle all the exceptions that happen on a pants run, so the "prefork" logic should be integrated there as well.
This will help a lot in correctly diagnosing pantsd problems, as this split and the wrangled exception handling that happen as a result have caused numerous issues.
Before removing forking from pantsd (#7596 ), we needed to warm up the v2 product graph of the daemon before forking into a
pantsd-runner
process (relevant code here).Now, however, this warming is not necessary (because we don't fork a process per run of pants anymore), so we can do some cleanup to that code:
scheduler_service.prefork
(here). This probably means that we can remove the entirewarm_product_graph
function.scheduler_service.prefork
so that it doesn't mention forking at all. It was called prefork because that's what we did before Pantsd without forking #7596, but it can be called something different now.DaemonPantsRunner.create()
(here) into the try:except block inDaemonPantsRunner.run()
(here). Therun()
function aims to centralize and correctly handle all the exceptions that happen on a pants run, so the "prefork
" logic should be integrated there as well.This will help a lot in correctly diagnosing pantsd problems, as this split and the wrangled exception handling that happen as a result have caused numerous issues.
The text was updated successfully, but these errors were encountered: