Uh oh!
There was an error while loading. Please reload this page.
refactor: removes context on the C side - #1404
Conversation
Uh oh!
There was an error while loading. Please reload this page.
Reinhard-Berger
commented
Feb 26, 2025
Will this impact Performance? |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
AlliBalliBaba
commented
Feb 26, 2025
@Reinhard-Berger this will not affect performance |
…s-refactor-context # Conflicts: # frankenphp.c # phpthread.go # threadworker.go
AlliBalliBaba
commented
Mar 7, 2025
@dunglas let me know once you're ready to merge this, I have some small follow-ups that this PR enables. |
AlliBalliBaba
commented
Mar 8, 2025
We can also wait for #1376, pretty sure there will be some small conflicts. |
withinboredom
commented
Mar 9, 2025
Yes. Slow down on the major refactors :p I have a few too, but just been waiting on things to stabilize. Seriously good work though! |
dunglas
commented
Mar 10, 2025
Great! |
Most of this PR is a refactor of the
FrankenPHPContext. I noticed that having a context on both the C and the go side can be pretty confusing and error prone. Especially considering that fatal errors (like timeouts) will make a worker just jump to the end of a script. This PR removes most of the context on the C side and decouples some components fromnet/httpby passing the context in channels.Having minimal thread-local context on the C side should also make it easier to execute PHP directly in go threads in the future.