[wp-trac] [WordPress Trac] #56688: Uncaught Requests_Exception using Requests::request_multiple
WordPress Trac
noreply at wordpress.org
Thu Sep 29 10:17:52 UTC 2022
#56688: Uncaught Requests_Exception using Requests::request_multiple
--------------------------+-----------------------------
Reporter: clutch2sft | Owner: (none)
Type: defect (bug) | Status: new
Priority: normal | Milestone: Awaiting Review
Component: General | Version: 6.0.2
Severity: normal | Keywords:
Focuses: performance |
--------------------------+-----------------------------
If a remote website does not respond to a request in
Requests::request_multiple then CURL timeout is unhandled in the process.
{{{
PHP Fatal error: Uncaught Requests_Exception: cURL error 28: Operation
timed out after 10001 milliseconds with 0 out of 0 bytes received in /ggg
/tg-plugin-development-local/app/public/wp-
includes/Requests/Transport/cURL.php:443
Stack trace:
#0 /ggg/tg-plugin-development-local/app/public/wp-
includes/Requests/Transport/cURL.php(179):
Requests_Transport_cURL->process_response('', Array)
#1 /ggg/tg-plugin-development-local/app/public/wp-includes/class-
requests.php(381): Requests_Transport_cURL->request('https://api.dyn...',
Array, NULL, Array)
#2 /ggg/tg-plugin-development-local/app/public/wp-includes/class-
requests.php(233): Requests::request('https://api.dyn...', Array, NULL,
'GET', Array)
#3 /ggg/tg-plugin-development-local/app/public/wp-content/plugins/tg-
dynamic-dns-updater/public/class-tg-dynamic-dns-updater-public.php(149):
Requests::get('https://api.dyn...', Array)
#4 /ggg/tg-plugin-development-local/app/public/wp-content/plugins/tg-
dynamic-dns-updater/public/class-tg-dynamic-dns-updater-public.php(131):
Tg_Dynamic_Dns_Updater_Public->tg_get_bearer_token('70f4>
#5 /ggg/tg-plugin-development-local/app/public/wp-includes/class-wp-
hook.php(307):
Tg_Dynamic_Dns_Updater_Public->tg_post_dynamic_dns('RHMgWcS1V5ybPtY...')
#6 /ggg/tg-plugin-development-local/app/public/wp-includes/class-wp-
hook.php(331): WP_Hook->apply_filters('', Array)
#7 /ggg/tg-plugin-development-local/app/public/wp-
includes/plugin.php(476): WP_Hook->do_action(Array)
#8 /ggg/tg-plugin-development-local/app/public/wp-content/plugins/tg-
dynamic-dns-updater/includes/class-tg-dynamic-dns-updater-async-api-
task.php(34): do_action('wp_async_tg_inv...', 'RHMgWcS1V5ybPt>
#9 /ggg/tg-plugin-development-local/app/public/wp-content/plugins/tg-
dynamic-dns-updater/includes/wp-async-task.php(164):
tg_async_dns_api_task->run_action()
#10 /ggg/tg-plugin-development-local/app/public/wp-includes/class-wp-
hook.php(307): WP_Async_Task->handle_postback('')
#11 /ggg/tg-plugin-development-local/app/public/wp-includes/class-wp-
hook.php(331): WP_Hook->apply_filters('', Array)
#12 /ggg/tg-plugin-development-local/app/public/wp-
includes/plugin.php(476): WP_Hook->do_action(Array)
#13 /ggg/tg-plugin-development-local/app/public/wp-admin/admin-
post.php(85): do_action('admin_post_wp_a...')
#14 {main}
}}}
To reproduce simply add non-responsive url to the requests array or reduce
the timeout value to an unreasonable value to force a CURL timeout.
This issue is a bit beyond my understanding but has to do with the hook
system calling other functions where the timeout occurs as best I can
tell.... this creates a fault where it can't be caught by the calling
code.
I also admit to not knowing what "Component" this belongs to.
--
Ticket URL: <https://core.trac.wordpress.org/ticket/56688>
WordPress Trac <https://core.trac.wordpress.org/>
WordPress publishing platform
More information about the wp-trac
mailing list