From 25e011209d35ba5dfd006e54b99bda84f2cf71f0 Mon Sep 17 00:00:00 2001 From: Denis Vaksman Date: Mon, 19 Oct 2026 19:04:37 +0300 Subject: [PATCH] fix `error_type` reset at the end of a request processing --- server/php-runner.cpp | 1 + tests/python/tests/http_server/test_errors.py | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/server/php-runner.cpp b/server/php-runner.cpp index 6d438e1a15..e22dab5d8e 100644 --- a/server/php-runner.cpp +++ b/server/php-runner.cpp @@ -238,6 +238,7 @@ void PhpScript::init(script_t *script, php_query_data_t *data_to_set) noexcept { state = run_state_t::ready; error_message = "??? error"; + error_type = script_error_t::no_error; script_time = 0; net_time = 0; diff --git a/tests/python/tests/http_server/test_errors.py b/tests/python/tests/http_server/test_errors.py index 4f63d1bd3c..d649505dae 100644 --- a/tests/python/tests/http_server/test_errors.py +++ b/tests/python/tests/http_server/test_errors.py @@ -22,10 +22,15 @@ def test_script_errors(self): "Critical error during script execution: php assert error" ]) + response = self.web_server.http_get("/pid") + self.assertEqual(200, response.status_code) + self.web_server.assert_stats( timeout=5, initial_stats=stats_before, expected_added_stats={ + # Successful requests must not inherit the preceding script error. + "kphp_server.workers_general_errors_php_assert": 5, # ensure shared data is not leaked "kphp_server.server_workers_strange_dead": 0, "kphp_server.server_workers_killed": 0,