MainLogger: Do output to console on the logger thread itself #1983
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This solves a range of issues (existing and potential) with logging, such as:
Changes
API changes
MainLogger->pushToOutputBuffer()
andMainLogger->getOutputBufferContents()
Behavioural changes
To be clear, we're usually talking fractions of a millisecond. This is primarily intended to resolve problems and not to provide performance improvements.
Backwards compatibility
This breaks tests as seen below - additionally, logger output can no longer be captured for a thread by using the PHP output buffer functions (
ob_*()
).Tests
Has been tested and several bugs fixed (bug fixes have since been ported to master since they were not specific to this change). However, Travis is broken because TesterPlugin needs updating.