summaryrefslogtreecommitdiff
path: root/sapi
Commit message (Collapse)AuthorAgeFilesLines
* Add extra run test for pm.max_spawn_rateJakub Zelenka2021-03-282-0/+44
|
* Max spawn child processes rate an oncePaulius Sapragonas2021-03-287-4/+100
| | | | * Add functionality to expect log config options
* Free static variables in execute fuzzerNikita Popov2021-03-261-0/+1
| | | | Fixes a leak in the seed corpus.
* Revert "Do not check exact values of unstable metrices in FPM status test"Nikita Popov2021-03-242-0/+8
| | | | | | | This reverts commit 5b01c4863fe9e4bc2702b2bbf66d292d23001a18. The previous commit fixes the 32-bit issue. Maybe this one is also needed, but let's see if any failures of this form turn up first.
* Fix printf type in fpm statusNikita Popov2021-03-241-1/+1
|
* Do not check exact values of unstable metrices in FPM status testJakub Zelenka2021-03-232-8/+0
|
* Fix types in FPM status openmetrics formatJakub Zelenka2021-03-221-19/+39
|
* Merge branch 'PHP-8.0'Jakub Zelenka2021-03-215-38/+209
|\
| * Merge branch 'PHP-7.4' into PHP-8.0Jakub Zelenka2021-03-215-38/+209
| |\
| | * Fix bug #80024: Duplication of info about inherited socket after pool removingJakub Zelenka2021-03-215-38/+209
| | |
* | | fpm master/child process rename, enable on mac os.David CARLIER2021-03-211-5/+3
| | | | | | | | | | | | Note the change appears mainly in command like ps.
* | | Fix indent in FPM openmetrics statusJakub Zelenka2021-03-211-39/+39
| | |
* | | Add support for openmetrics formatting to FPM statusCees-Jan Kiewiet2021-03-213-5/+118
| | |
* | | Change Zend Stream API to use zend_string* instead of char*.Dmitry Stogov2021-03-168-57/+72
| | | | | | | | | | | | | | | This allows to eliminate re-calculation of string lenght and hash value. See the detailed list of changes in UPGRADING.INTERNALS.
* | | Merge branch 'PHP-8.0'George Wang2021-03-052-37/+54
|\ \ \ | |/ /
| * | Merge branch 'PHP-7.4' into PHP-8.0George Wang2021-03-052-37/+54
| |\ \ | | |/
| | * LiteSpeed SAPI v7.9: Process manager keeps forked child process alive for ↵George Wang2021-03-052-38/+55
| | | | | | | | | | | | longer time based on load. Reduces PM overhead for busy setup.
* | | Reference dynamic functions through dynamic_defsNikita Popov2021-03-011-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, dynamically declared functions and closures are inserted into the function table under a runtime definition key, and then later possibly renamed. When opcache is not used and a file containing a closure is repeatedly included, this leads to a very large memory leak, as the no longer needed closure declarations will never be freed (https://bugs.php.net/bug.php?id=76982). With this patch, dynamic functions are instead stored in a dynamic_func_defs member on the op_array, which opcodes reference by index. When the parent op_array is destroyed, the dynamic_func_defs it contains are also destroyed (unless they are stilled used elsewhere, e.g. because they have been bound, or are used by a live closure). This resolves the fundamental part of the leak, though doesn't completely fix it yet due to some arena allocations. The main non-obvious change here is to static variable handling: We can't destroy static_variables_ptr in destroy_op_array, as e.g. that would clear the static variables in a dynamic function when the op_array containing it is destroyed. Static variable destruction is separated out for this reason (we already do static variable destruction separately for normal functions, so we only need to handle main scripts). Closes GH-5595.
* | | Improve SPL directory and stat() cache using zend_srting* instead of char*Dmitry Stogov2021-02-261-4/+4
| | |
* | | Merge branch 'PHP-8.0'Nikita Popov2021-02-241-0/+1
|\ \ \ | |/ / | | | | | | | | | | | | | | | * PHP-8.0: Fix potential file collision in dom tests Fix bug #80757 (Exit code is 0 when could not open file) Update NEWS
| * | Merge branch 'PHP-7.4' into PHP-8.0Felipe Pena2021-02-241-0/+1
| |\ \ | | |/
| | * Fix bug #80757 (Exit code is 0 when could not open file)Felipe Pena2021-02-241-0/+1
| | |
* | | Merge branch 'PHP-8.0'Christoph M. Becker2021-02-221-1/+1
|\ \ \ | |/ / | | | | | | | | | * PHP-8.0: Fix #80771: phpinfo(INFO_CREDITS) displays nothing in CLI
| * | Merge branch 'PHP-7.4' into PHP-8.0Christoph M. Becker2021-02-221-1/+1
| |\ \ | | |/ | | | | | | | | | * PHP-7.4: Fix #80771: phpinfo(INFO_CREDITS) displays nothing in CLI
| | * Fix #80771: phpinfo(INFO_CREDITS) displays nothing in CLIChristoph M. Becker2021-02-221-1/+1
| | | | | | | | | | | | | | | | | | | | | There is no good reason not to show the credits in text based SAPIs, except for brevity. Thus, we suppress the credits from `php -i`. Closes GH-6710.
* | | Improve class entry generationMáté Kocsis2021-02-165-5/+0
| | | | | | | | | | | | Related to GH-6701
* | | Avoid repeatedly calling strlen in FPM setproctitle implementationDavid Carlier2021-02-151-2/+3
| | | | | | | | | | | | Closes GH-6689.
* | | Enable class entry generation for sapi extensionsMáté Kocsis2021-02-1410-10/+15
| | |
* | | Merge branch 'PHP-8.0'Nikita Popov2021-02-041-59/+47
|\ \ \ | |/ / | | | | | | | | | * PHP-8.0: Fix CLI server worker support
| * | Fix CLI server worker supportNikita Popov2021-02-041-59/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If we create separate listening sockets in each worker using SO_REUSEADDR, then an incoming connection may be load-balanced to a process that is already busy, either due to a long-running request, or because it is a recursive request (in which case we would deadlock). Instead, only create one listening socket, and only create worker forks afterwards. This way the incoming request will be served by one of the workers that is currently listening for an incoming connection.
* | | Merge branch 'PHP-8.0'Nikita Popov2021-02-023-3/+3
|\ \ \ | |/ / | | | | | | | | | * PHP-8.0: Update year to 2021
| * | Merge branch 'PHP-7.4' into PHP-8.0Nikita Popov2021-02-023-3/+3
| |\ \ | | |/ | | | | | | | | | * PHP-7.4: Update year to 2021
| | * Update year to 2021Peter Kokot2021-02-023-3/+3
| | | | | | | | | | | | Closes GH-6636.
| | * Revert "Fix #76813: Access violation near NULL on source operand"Christoph M. Becker2021-01-113-21/+3
| | | | | | | | | | | | | | | This reverts commit 5e15c9c41f8318a8392c2e2c78544f218736549c, since re2c default rules are only available as of re2c 0.13.7.
* | | Remove unused mmap member in phpdbg_file_sourceNikita Popov2021-01-261-3/+0
| | |
* | | Fixed crash in ZTS build with --repeat optionDmitry Stogov2021-01-211-0/+1
| | |
* | | Replace zend_bool uses with boolNikita Popov2021-01-1533-114/+114
| | | | | | | | | | | | | | | | | | | | | We're starting to see a mix between uses of zend_bool and bool. Replace all usages with the standard bool type everywhere. Of course, zend_bool is retained as an alias.
* | | Merge branch 'PHP-8.0'Christoph M. Becker2021-01-113-21/+3
|\ \ \ | |/ / | | | | | | | | | * PHP-8.0: Revert fix for bug 76813 and re2c version bump
| * | Revert fix for bug 76813 and re2c version bumpChristoph M. Becker2021-01-113-21/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CentOS 7 ships with re2c 0.13.5 by default, so we should not have bumped the required re2c version to 0.13.7. However, 0.13.5 does not support default rules, so we cannot use them to fix bug 76813. This reverts commit 420184ad529443182c9a348a55b1c9216005c613 and 5e15c9c41f8318a8392c2e2c78544f218736549c. Closes GH-6593.
* | | Fuzzer: Gracefully handle hashes that cannot be serializedNikita Popov2021-01-111-1/+7
| | |
* | | Restrict allowed usages of $GLOBALSNikita Popov2021-01-061-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | This restricts allowed usage of $GLOBALS, with the effect that plain PHP arrays can no longer contain INDIRECT elements. RFC: https://wiki.php.net/rfc/restrict_globals_usage Closes GH-6487.
* | | rename COMPILER and ARCHITECTURE macro (too generic)Remi Collet2021-01-041-4/+4
| | |
* | | Merge branch 'PHP-8.0'Jakub Zelenka2020-12-134-6/+80
|\ \ \ | |/ /
| * | Merge branch 'PHP-7.4' into PHP-8.0Jakub Zelenka2020-12-134-6/+80
| |\ \ | | |/
| | * Fix bug #69625: FPM returns 200 status on request without SCRIPT_FILENAMEJakub Zelenka2020-12-134-6/+80
| | |
* | | Ensure consistent error message in phpdbg parserNikita Popov2020-12-022-3/+4
| | | | | | | | | | | | | | | | | | This would be either $end or "end of file" depending on bison version. Explicitly specify "end of command" instead, which seems more appropriate in context.
* | | Add const modifier for zend_extension memberscodinghuang2020-12-011-5/+4
| | | | | | | | | | | | Closes GH-6462.
* | | Merge branch 'PHP-8.0'Christoph M. Becker2020-11-3019-93/+0
|\ \ \ | |/ / | | | | | | | | | * PHP-8.0: Drop all JIT related XFAILS from phpdbg test suite
| * | Drop all JIT related XFAILS from phpdbg test suiteChristoph M. Becker2020-11-3019-93/+0
| | | | | | | | | | | | phpdbg now disables JIT, so these cause XFAIL warnings.
* | | Merge branch 'PHP-8.0'Nikita Popov2020-11-303-0/+3
|\ \ \ | |/ / | | | | | | | | | * PHP-8.0: Add additional entries to unserialize corpus