Forum Replies Created

Viewing 15 replies - 1 through 15 (of 19 total)
  • Thread Starter wmiles

    (@wmiles)

    And here is the trace from the “Activate Plugin’ failure with the expanded parameter trace …

    With the PHP Opcode cache now working as it once did, or something else, your plugin appears to be failing like it once did before. I will disable it until I hear back from you.

    Thank you for your assistance.

    2023-02-04T22:45:55+00:00 CRITICAL Uncaught Error: Class "QM_Component" not found in /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Util.php:312
    Stack trace:
    #0 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Backtrace.php(275): QM_Util::get_file_component('/home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/woocommerce-square/vendor/woocommerce/action-scheduler/classes/ActionScheduler_DateTime.php')
    #1 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Backtrace.php(209): QM_Backtrace::get_frame_component(Array)
    #2 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/collectors/php_errors.php(272): QM_Backtrace->get_component()
    #3 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/ewww-image-optimizer/vendor/composer/ClassLoader.php(571): QM_Collector_PHP_Errors->error_handler(8192, 'Return type of ActionScheduler_DateTime::setTimezone($timezone) should either be compatible with DateTime::setTimezone(DateTimeZone $timezone): DateTime, or the #[\\ReturnTypeWillChange] attribute shou...', '/home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/woocommerce-square/vendor/woocommerce/action-scheduler/classes/ActionScheduler_DateTime.php', 60)
    #4 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/ewww-image-optimizer/vendor/composer/ClassLoader.php(571): include('/home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/collectors/php_errors.php')
    #5 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/ewww-image-optimizer/vendor/composer/ClassLoader.php(428): Composer\Autoload\includeFile('/home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/vendor/composer/../../classes/QM_Component.php')
    #6 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Util.php(312): Composer\Autoload\ClassLoader->loadClass('QM_Component')
    #7 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Backtrace.php(275): QM_Util::get_file_component('/home/wmiles/bronzeart.ca/wordpress/wp-includes/functions.php')
    #8 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Backtrace.php(209): QM_Backtrace::get_frame_component(Array)
    #9 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/collectors/php_errors.php(272): QM_Backtrace->get_component()
    #10 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/collectors/php_errors.php(100): QM_Collector_PHP_Errors->error_handler(8192, 'str_replace(): Passing null to parameter #3 ($subject) of type array|string is deprecated', '/home/wmiles/bronzeart.ca/wordpress/wp-includes/functions.php', 2162, NULL, false)
    #11 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Collectors.php(39): QM_Collector_PHP_Errors->set_up()
    #12 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/collectors/php_errors.php(563): QM_Collectors::add(Object(QM_Collector_PHP_Errors))
    #13 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/QueryMonitor.php(48): include_once('/home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/collectors/php_errors.php')
    #14 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/query-monitor.php(82): QueryMonitor->set_up()
    #15 /home/wmiles/bronzeart.ca/wordpress/wp-admin/includes/plugin.php(2314): include_once('/home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/query-monitor.php')
    #16 /home/wmiles/bronzeart.ca/wordpress/wp-admin/includes/plugin.php(661): plugin_sandbox_scrape('query-monitor/query-monitor.php')
    #17 /home/wmiles/bronzeart.ca/wordpress/wp-admin/plugins.php(58): activate_plugin('query-monitor/query-monitor.php', 'https://www.bronzeart.ca/wordpress/wp-admin/plugins.php?error=true&plugin=query-monitor%2Fquery-monitor.php', false)
    #18 {main}
      thrown in /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Util.php on line 312
    
    2023-02-04T22:45:57+00:00 CRITICAL Uncaught Error: Class "QM_Component" not found in /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Util.php:312
    Stack trace:
    #0 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Backtrace.php(275): QM_Util::get_file_component('/home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/woocommerce-square/vendor/woocommerce/action-scheduler/classes/ActionScheduler_DateTime.php')
    #1 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Backtrace.php(209): QM_Backtrace::get_frame_component(Array)
    #2 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/collectors/php_errors.php(272): QM_Backtrace->get_component()
    #3 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/ewww-image-optimizer/vendor/composer/ClassLoader.php(571): QM_Collector_PHP_Errors->error_handler(8192, 'Return type of ActionScheduler_DateTime::setTimezone($timezone) should either be compatible with DateTime::setTimezone(DateTimeZone $timezone): DateTime, or the #[\\ReturnTypeWillChange] attribute shou...', '/home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/woocommerce-square/vendor/woocommerce/action-scheduler/classes/ActionScheduler_DateTime.php', 60)
    #4 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/ewww-image-optimizer/vendor/composer/ClassLoader.php(571): include('/home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/collectors/php_errors.php')
    #5 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/ewww-image-optimizer/vendor/composer/ClassLoader.php(428): Composer\Autoload\includeFile('/home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/vendor/composer/../../classes/QM_Component.php')
    #6 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Util.php(312): Composer\Autoload\ClassLoader->loadClass('QM_Component')
    #7 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Backtrace.php(275): QM_Util::get_file_component('/home/wmiles/bronzeart.ca/wordpress/wp-includes/functions.php')
    #8 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Backtrace.php(209): QM_Backtrace::get_frame_component(Array)
    #9 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/collectors/php_errors.php(272): QM_Backtrace->get_component()
    #10 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/collectors/php_errors.php(100): QM_Collector_PHP_Errors->error_handler(8192, 'str_replace(): Passing null to parameter #3 ($subject) of type array|string is deprecated', '/home/wmiles/bronzeart.ca/wordpress/wp-includes/functions.php', 2162, NULL, false)
    #11 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Collectors.php(39): QM_Collector_PHP_Errors->set_up()
    #12 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/collectors/php_errors.php(563): QM_Collectors::add(Object(QM_Collector_PHP_Errors))
    #13 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/QueryMonitor.php(48): include_once('/home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/collectors/php_errors.php')
    #14 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/query-monitor.php(82): QueryMonitor->set_up()
    #15 /home/wmiles/bronzeart.ca/wordpress/wp-admin/includes/plugin.php(2314): include_once('/home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/query-monitor.php')
    #16 /home/wmiles/bronzeart.ca/wordpress/wp-admin/plugins.php(192): plugin_sandbox_scrape('query-monitor/query-monitor.php')
    #17 {main}
      thrown in /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Util.php on line 312
    
    2023-02-04T22:45:57+00:00 CRITICAL Uncaught Error: Class "QM_Component" not found in /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Util.php:312
    Stack trace:
    #0 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Backtrace.php(275): QM_Util::get_file_component('/home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/woocommerce-square/vendor/woocommerce/action-scheduler/classes/ActionScheduler_DateTime.php')
    #1 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Backtrace.php(209): QM_Backtrace::get_frame_component(Array)
    #2 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/collectors/php_errors.php(272): QM_Backtrace->get_component()
    #3 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/ewww-image-optimizer/vendor/composer/ClassLoader.php(571): QM_Collector_PHP_Errors->error_handler(8192, 'Return type of ActionScheduler_DateTime::setTimezone($timezone) should either be compatible with DateTime::setTimezone(DateTimeZone $timezone): DateTime, or the #[\\ReturnTypeWillChange] attribute shou...', '/home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/woocommerce-square/vendor/woocommerce/action-scheduler/classes/ActionScheduler_DateTime.php', 60)
    #4 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/ewww-image-optimizer/vendor/composer/ClassLoader.php(571): include('/home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/collectors/php_errors.php')
    #5 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/ewww-image-optimizer/vendor/composer/ClassLoader.php(428): Composer\Autoload\includeFile('/home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/vendor/composer/../../classes/QM_Component.php')
    #6 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Util.php(312): Composer\Autoload\ClassLoader->loadClass('QM_Component')
    #7 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Backtrace.php(275): QM_Util::get_file_component('/home/wmiles/bronzeart.ca/wordpress/wp-includes/functions.php')
    #8 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Backtrace.php(209): QM_Backtrace::get_frame_component(Array)
    #9 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/collectors/php_errors.php(272): QM_Backtrace->get_component()
    #10 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/collectors/php_errors.php(100): QM_Collector_PHP_Errors->error_handler(8192, 'str_replace(): Passing null to parameter #3 ($subject) of type array|string is deprecated', '/home/wmiles/bronzeart.ca/wordpress/wp-includes/functions.php', 2162, NULL, false)
    #11 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Collectors.php(39): QM_Collector_PHP_Errors->set_up()
    #12 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/collectors/php_errors.php(563): QM_Collectors::add(Object(QM_Collector_PHP_Errors))
    #13 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/QueryMonitor.php(48): include_once('/home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/collectors/php_errors.php')
    #14 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/query-monitor.php(82): QueryMonitor->set_up()
    #15 /home/wmiles/bronzeart.ca/wordpress/wp-admin/includes/plugin.php(2314): include_once('/home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/query-monitor.php')
    #16 /home/wmiles/bronzeart.ca/wordpress/wp-admin/plugins.php(192): plugin_sandbox_scrape('query-monitor/query-monitor.php')
    #17 {main}
      thrown in /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Util.php on line 312
    
    
    • This reply was modified 2 years, 1 month ago by wmiles.
    Thread Starter wmiles

    (@wmiles)

    I caught another failure incident today. The trace follows.

    To explain, I discovered today that I had messed up my update to php.ini for the “zend.exception_string_param_max_len” parameter. As a result of this, PHP Opcode cache on my PHP 8.1 was no longer operational. Both your plugin and W3TC reported this condition. For the two days while this condition was in place I have been unable to recreate the fault.

    Recognizing my error I corrected my php.ini update and confirmed with phpinfo.php that the “zend.exception_string_param_max_len” was now set to 200 characters, Your plugin and W3TC both now confirmed that “Zend OPcache” was now recognized and Opcode caching was operational. Then, within one minute of testing your plugin failed.

    I don’t know if the Opcode cache is related to the failure?

    I will keep testing and post again if I discover something new.

    2023-02-04T21:35:01+00:00 CRITICAL Uncaught Error: Class "QM_Component" not found in /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Util.php:312
    Stack trace:
    #0 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Backtrace.php(275): QM_Util::get_file_component('/home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/woocommerce-square/vendor/woocommerce/action-scheduler/classes/ActionScheduler_DateTime.php')
    #1 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Backtrace.php(209): QM_Backtrace::get_frame_component(Array)
    #2 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/collectors/php_errors.php(272): QM_Backtrace->get_component()
    #3 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/vendor/composer/ClassLoader.php(578): QM_Collector_PHP_Errors->error_handler(8192, 'Return type of ActionScheduler_DateTime::setTimezone($timezone) should either be compatible with DateTime::setTimezone(DateTimeZone $timezone): DateTime, or the #[\\ReturnTypeWillChange] attribute shou...', '/home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/woocommerce-square/vendor/woocommerce/action-scheduler/classes/ActionScheduler_DateTime.php', 60)
    #4 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/vendor/composer/ClassLoader.php(578): include('/home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/collectors/php_errors.php')
    #5 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/vendor/composer/ClassLoader.php(432): Composer\Autoload\ClassLoader::Composer\Autoload\{closure}('/home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/vendor/composer/../../classes/QM_Component.php')
    #6 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Util.php(312): Composer\Autoload\ClassLoader->loadClass('QM_Component')
    #7 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Backtrace.php(275): QM_Util::get_file_component('/home/wmiles/bronzeart.ca/wordpress/wp-includes/global-styles-and-settings.php')
    #8 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Backtrace.php(209): QM_Backtrace::get_frame_component(Array)
    #9 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/collectors/transients.php(91): QM_Backtrace->get_component()
    #10 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/collectors/transients.php(59): QM_Collector_Transients->setted_transient('global_styles_mystile-child', 'blog', 'body{--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2...', 60)
    #11 /home/wmiles/bronzeart.ca/wordpress/wp-includes/class-wp-hook.php(308): QM_Collector_Transients->action_setted_blog_transient('global_styles_mystile-child', 'body{--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2...', 60)
    #12 /home/wmiles/bronzeart.ca/wordpress/wp-includes/class-wp-hook.php(332): WP_Hook->apply_filters('', Array)
    #13 /home/wmiles/bronzeart.ca/wordpress/wp-includes/plugin.php(517): WP_Hook->do_action(Array)
    #14 /home/wmiles/bronzeart.ca/wordpress/wp-includes/option.php(1022): do_action('setted_transient', 'global_styles_mystile-child', 'body{--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2...', 60)
    #15 /home/wmiles/bronzeart.ca/wordpress/wp-includes/global-styles-and-settings.php(157): set_transient('global_styles_mystile-child', 'body{--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2...', 60)
    #16 /home/wmiles/bronzeart.ca/wordpress/wp-includes/script-loader.php(2434): wp_get_global_stylesheet()
    #17 /home/wmiles/bronzeart.ca/wordpress/wp-includes/class-wp-hook.php(308): wp_enqueue_global_styles('')
    #18 /home/wmiles/bronzeart.ca/wordpress/wp-includes/class-wp-hook.php(332): WP_Hook->apply_filters(NULL, Array)
    #19 /home/wmiles/bronzeart.ca/wordpress/wp-includes/plugin.php(517): WP_Hook->do_action(Array)
    #20 /home/wmiles/bronzeart.ca/wordpress/wp-includes/script-loader.php(2180): do_action('wp_enqueue_scripts')
    #21 /home/wmiles/bronzeart.ca/wordpress/wp-includes/class-wp-hook.php(308): wp_enqueue_scripts('')
    #22 /home/wmiles/bronzeart.ca/wordpress/wp-includes/class-wp-hook.php(332): WP_Hook->apply_filters(NULL, Array)
    #23 /home/wmiles/bronzeart.ca/wordpress/wp-includes/plugin.php(517): WP_Hook->do_action(Array)
    #24 /home/wmiles/bronzeart.ca/wordpress/wp-includes/general-template.php(3043): do_action('wp_head')
    #25 /home/wmiles/bronzeart.ca/wordpress/wp-content/themes/mystile-child/header-index.php(51): wp_head()
    #26 /home/wmiles/bronzeart.ca/wordpress/wp-includes/template.php(783): require_once('/home/wmiles/bronzeart.ca/wordpress/wp-content/themes/mystile-child/header-index.php')
    #27 /home/wmiles/bronzeart.ca/wordpress/wp-includes/template.php(718): load_template('/home/wmiles/bronzeart.ca/wordpress/wp-content/themes/mystile-child/header-index.php', true, Array)
    #28 /home/wmiles/bronzeart.ca/wordpress/wp-includes/general-template.php(48): locate_template(Array, true, true, Array)
    #29 /home/wmiles/bronzeart.ca/wordpress/wp-content/themes/mystile-child/index.php(16): get_header('index')
    #30 /home/wmiles/bronzeart.ca/wordpress/wp-includes/template-loader.php(106): include('/home/wmiles/bronzeart.ca/wordpress/wp-content/themes/mystile-child/index.php')
    #31 /home/wmiles/bronzeart.ca/wordpress/wp-blog-header.php(19): require_once('/home/wmiles/bronzeart.ca/wordpress/wp-includes/template-loader.php')
    #32 /home/wmiles/bronzeart.ca/index.php(17): require('/home/wmiles/bronzeart.ca/wordpress/wp-blog-header.php')
    #33 {main}
      thrown in /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Util.php on line 312
    
    2023-02-04T21:35:44+00:00 CRITICAL Uncaught Error: Class "QM_Component" not found in /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Util.php:312
    Stack trace:
    #0 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Backtrace.php(275): QM_Util::get_file_component('/home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/woocommerce-square/vendor/woocommerce/action-scheduler/classes/ActionScheduler_DateTime.php')
    #1 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Backtrace.php(209): QM_Backtrace::get_frame_component(Array)
    #2 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/collectors/php_errors.php(272): QM_Backtrace->get_component()
    #3 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/vendor/composer/ClassLoader.php(578): QM_Collector_PHP_Errors->error_handler(8192, 'Return type of ActionScheduler_DateTime::setTimezone($timezone) should either be compatible with DateTime::setTimezone(DateTimeZone $timezone): DateTime, or the #[\\ReturnTypeWillChange] attribute shou...', '/home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/woocommerce-square/vendor/woocommerce/action-scheduler/classes/ActionScheduler_DateTime.php', 60)
    #4 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/vendor/composer/ClassLoader.php(578): include('/home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/collectors/php_errors.php')
    #5 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/vendor/composer/ClassLoader.php(432): Composer\Autoload\ClassLoader::Composer\Autoload\{closure}('/home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/vendor/composer/../../classes/QM_Component.php')
    #6 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Util.php(312): Composer\Autoload\ClassLoader->loadClass('QM_Component')
    #7 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Util.php(414): QM_Util::get_file_component('/home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/wordpress-seo/inc/options/class-wpseo-options.php')
    #8 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Hook.php(40): QM_Util::populate_callback(Array)
    #9 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/collectors/hooks.php(64): QM_Hook::process('registered_taxonomy', Array, true, false)
    #10 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Collectors.php(84): QM_Collector_Hooks->process()
    #11 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Dispatcher.php(108): QM_Collectors->process()
    #12 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/dispatchers/REST.php(40): QM_Dispatcher->get_outputters('headers')
    #13 /home/wmiles/bronzeart.ca/wordpress/wp-includes/class-wp-hook.php(308): QM_Dispatcher_REST->filter_rest_post_dispatch(Object(WP_REST_Response), Object(WP_REST_Server), Object(WP_REST_Request))
    #14 /home/wmiles/bronzeart.ca/wordpress/wp-includes/plugin.php(205): WP_Hook->apply_filters(Object(WP_REST_Response), Array)
    #15 /home/wmiles/bronzeart.ca/wordpress/wp-includes/rest-api/class-wp-rest-server.php(465): apply_filters('rest_post_dispatch', Object(WP_REST_Response), Object(WP_REST_Server), Object(WP_REST_Request))
    #16 /home/wmiles/bronzeart.ca/wordpress/wp-includes/rest-api.php(410): WP_REST_Server->serve_request('/wc-admin/options')
    #17 /home/wmiles/bronzeart.ca/wordpress/wp-includes/class-wp-hook.php(308): rest_api_loaded(Object(WP))
    #18 /home/wmiles/bronzeart.ca/wordpress/wp-includes/class-wp-hook.php(332): WP_Hook->apply_filters(NULL, Array)
    #19 /home/wmiles/bronzeart.ca/wordpress/wp-includes/plugin.php(565): WP_Hook->do_action(Array)
    #20 /home/wmiles/bronzeart.ca/wordpress/wp-includes/class-wp.php(399): do_action_ref_array('parse_request', Array)
    #21 /home/wmiles/bronzeart.ca/wordpress/wp-includes/class-wp.php(780): WP->parse_request('')
    #22 /home/wmiles/bronzeart.ca/wordpress/wp-includes/functions.php(1332): WP->main('')
    #23 /home/wmiles/bronzeart.ca/wordpress/wp-blog-header.php(16): wp()
    #24 /home/wmiles/bronzeart.ca/index.php(17): require('/home/wmiles/bronzeart.ca/wordpress/wp-blog-header.php')
    #25 {main}
      thrown in /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Util.php on line 312
    
    
    Thread Starter wmiles

    (@wmiles)

    The reason you have trace message parameters truncated to 15 characters in the log file is due to a new configuration parameter in php.ini :

    “zend.exception_string_param_max_len” default value “15”

    This parameter was introduced in PHP 8.0.0. See https://www.php.net/manual/en/ini.core.php

    I changed my server configuration to specify a 200 character value for this parameter for a new trace, but sadly I now seem unable to recreate the fault. Isn’t this always the way things happen?

    You might want to check if you can use ini_set() to change this value when your plugin runs?

    I’ll keep testing with your plugin for a while and post again if I see a new fault.

    Thread Starter wmiles

    (@wmiles)

    I don’t know why WooCommerce truncates the message? I can check the raw server logs for further information, if such PHP information exists, but it will be tomorrow before I can get to this. I also don’t know if I can re-create the error on activation.

    I will reply tomorrow.

    Thread Starter wmiles

    (@wmiles)

    Thank you for looking into this. Knowing you are investigating, I reinstalled your QM plugin to confirm that the failure still exists. It does. It occurred on the 8th attempt to transition to my site from administrator mode. After this, the error continually showed in the Woocommerce log files.

    I then de-activated your plugin and re-activated it, at which time the plugin failed on activation. The trace logs from the activation failure follow. Note, this trace show a failure on a PHP str_replace() function that may point to the issue?

    I then de-installed your plugin and re-installed it. After this, I was then unable to recreate the error by swapping back and forth from administrator view to my site, until such time as I performed a logout from my site, at which time the error appeared.

    I am running on PHP 8.1 now without issues. Your plugin is the only one that fails. So, I’m baffled?

    2023-02-01T03:08:57+00:00 CRITICAL Uncaught Error: Class "QM_Component" not found in /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Util.php:312
    Stack trace:
    #0 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Backtrace.php(275): QM_Util::get_file_component('/home/wmiles/br...')
    #1 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Backtrace.php(209): QM_Backtrace::get_frame_component(Array)
    #2 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/collectors/php_errors.php(272): QM_Backtrace->get_component()
    #3 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/ewww-image-optimizer/vendor/composer/ClassLoader.php(571): QM_Collector_PHP_Errors->error_handler(8192, 'Return type of ...', '/home/wmiles/br...', 60)
    #4 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/ewww-image-optimizer/vendor/composer/ClassLoader.php(571): include('/home/wmiles/br...')
    #5 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/ewww-image-optimizer/vendor/composer/ClassLoader.php(428): Composer\Autoload\includeFile('/home/wmiles/br...')
    #6 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Util.php(312): Composer\Autoload\ClassLoader->loadClass('QM_Component')
    #7 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Backtrace.php(275): QM_Util::get_file_component('/home/wmiles/br...')
    #8 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Backtrace.php(209): QM_Backtrace::get_frame_component(Array)
    #9 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/collectors/php_errors.php(272): QM_Backtrace->get_component()
    #10 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/collectors/php_errors.php(100): QM_Collector_PHP_Errors->error_handler(8192, 'str_replace(): ...', '/home/wmiles/br...', 2162, NULL, false)
    #11 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Collectors.php(39): QM_Collector_PHP_Errors->set_up()
    #12 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/collectors/php_errors.php(563): QM_Collectors::add(Object(QM_Collector_PHP_Errors))
    #13 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/QueryMonitor.php(48): include_once('/home/wmiles/br...')
    #14 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/query-monitor.php(82): QueryMonitor->set_up()
    #15 /home/wmiles/bronzeart.ca/wordpress/wp-admin/includes/plugin.php(2314): include_once('/home/wmiles/br...')
    #16 /home/wmiles/bronzeart.ca/wordpress/wp-admin/includes/plugin.php(661): plugin_sandbox_scrape('query-monitor/q...')
    #17 /home/wmiles/bronzeart.ca/wordpress/wp-admin/plugins.php(58): activate_plugin('query-monitor/q...', 'https://www.bro...', false)
    #18 {main}
      thrown in /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Util.php on line 312
    
    2023-02-01T03:08:58+00:00 CRITICAL Uncaught Error: Class "QM_Component" not found in /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Util.php:312
    Stack trace:
    #0 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Backtrace.php(275): QM_Util::get_file_component('/home/wmiles/br...')
    #1 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Backtrace.php(209): QM_Backtrace::get_frame_component(Array)
    #2 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/collectors/php_errors.php(272): QM_Backtrace->get_component()
    #3 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/ewww-image-optimizer/vendor/composer/ClassLoader.php(571): QM_Collector_PHP_Errors->error_handler(8192, 'Return type of ...', '/home/wmiles/br...', 60)
    #4 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/ewww-image-optimizer/vendor/composer/ClassLoader.php(571): include('/home/wmiles/br...')
    #5 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/ewww-image-optimizer/vendor/composer/ClassLoader.php(428): Composer\Autoload\includeFile('/home/wmiles/br...')
    #6 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Util.php(312): Composer\Autoload\ClassLoader->loadClass('QM_Component')
    #7 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Backtrace.php(275): QM_Util::get_file_component('/home/wmiles/br...')
    #8 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Backtrace.php(209): QM_Backtrace::get_frame_component(Array)
    #9 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/collectors/php_errors.php(272): QM_Backtrace->get_component()
    #10 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/collectors/php_errors.php(100): QM_Collector_PHP_Errors->error_handler(8192, 'str_replace(): ...', '/home/wmiles/br...', 2162, NULL, false)
    #11 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Collectors.php(39): QM_Collector_PHP_Errors->set_up()
    #12 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/collectors/php_errors.php(563): QM_Collectors::add(Object(QM_Collector_PHP_Errors))
    #13 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/QueryMonitor.php(48): include_once('/home/wmiles/br...')
    #14 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/query-monitor.php(82): QueryMonitor->set_up()
    #15 /home/wmiles/bronzeart.ca/wordpress/wp-admin/includes/plugin.php(2314): include_once('/home/wmiles/br...')
    #16 /home/wmiles/bronzeart.ca/wordpress/wp-admin/plugins.php(192): plugin_sandbox_scrape('query-monitor/q...')
    #17 {main}
      thrown in /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Util.php on line 312
    
    2023-02-01T03:08:58+00:00 CRITICAL Uncaught Error: Class "QM_Component" not found in /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Util.php:312
    Stack trace:
    #0 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Backtrace.php(275): QM_Util::get_file_component('/home/wmiles/br...')
    #1 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Backtrace.php(209): QM_Backtrace::get_frame_component(Array)
    #2 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/collectors/php_errors.php(272): QM_Backtrace->get_component()
    #3 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/ewww-image-optimizer/vendor/composer/ClassLoader.php(571): QM_Collector_PHP_Errors->error_handler(8192, 'Return type of ...', '/home/wmiles/br...', 60)
    #4 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/ewww-image-optimizer/vendor/composer/ClassLoader.php(571): include('/home/wmiles/br...')
    #5 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/ewww-image-optimizer/vendor/composer/ClassLoader.php(428): Composer\Autoload\includeFile('/home/wmiles/br...')
    #6 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Util.php(312): Composer\Autoload\ClassLoader->loadClass('QM_Component')
    #7 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Backtrace.php(275): QM_Util::get_file_component('/home/wmiles/br...')
    #8 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Backtrace.php(209): QM_Backtrace::get_frame_component(Array)
    #9 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/collectors/php_errors.php(272): QM_Backtrace->get_component()
    #10 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/collectors/php_errors.php(100): QM_Collector_PHP_Errors->error_handler(8192, 'str_replace(): ...', '/home/wmiles/br...', 2162, NULL, false)
    #11 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Collectors.php(39): QM_Collector_PHP_Errors->set_up()
    #12 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/collectors/php_errors.php(563): QM_Collectors::add(Object(QM_Collector_PHP_Errors))
    #13 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/QueryMonitor.php(48): include_once('/home/wmiles/br...')
    #14 /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/query-monitor.php(82): QueryMonitor->set_up()
    #15 /home/wmiles/bronzeart.ca/wordpress/wp-admin/includes/plugin.php(2314): include_once('/home/wmiles/br...')
    #16 /home/wmiles/bronzeart.ca/wordpress/wp-admin/plugins.php(192): plugin_sandbox_scrape('query-monitor/q...')
    #17 {main}
      thrown in /home/wmiles/bronzeart.ca/wordpress/wp-content/plugins/query-monitor/classes/Util.php on line 312
    
    
    Thread Starter wmiles

    (@wmiles)

    So, I reverted back to PHP 7.4 and everything worked. I upgraded again to PHP 8.1 and the Uncaught Error: Class “QM_Component” returned.

    I can say that the problem is intermittent, it doesn’t occur on all transitions to “Visit Site”, but the error will typically show up after a number of repeated transitions into the administrator console and back to the site.

    I was not able to isolate the issue to any one plugin after deactivation and testing. Not all plugins were tested, but I did test all suspect ones that are not common or standard WordPress or WooCommerce extensions.

    When on my site testing pages I did observe that QM at times did not populate any results in the “Query Monitor” tab on the WordPress toolbar at the top of the screen. No dropdown menu showed. At other times the Query Monitor tab would show actual results.

    Note that when logged in to my site and testing (as administrator) no caching of pages or minification of Javascript or CSS is being performed (W3-Total-Cache). Object caching is still happening.

    So, I don’t know what the problem can be? I’ll leave it with you, as I continue to validate my PHP 8.1 upgrade.

    Thanks for your help.

    Thread Starter wmiles

    (@wmiles)

    I don’t think your plugin is the root cause of the problem. But, it probably shouldn’t blow up, which is mostly the concern.

    I have deactivated and reactivated the QM plugin and even deleted and reinstalled, to no effect. The problem returns when the plugin is active.

    I should state, that when deleted and reinstalled, when I went to “Visit Site” the first time, it worked. When I went back to administrator mode and tried to “Visit Site” a second time, the Uncaught Error on class QM_Component returned.

    Before the upgrade I was running on PHP 7.4 with your plugin active with no issues. I’ll drop back and retry the upgrade and report back tomorrow.

    Before the upgrade, I did look at my plugins and upgraded to WordPress supported versions where I could. I also ran my theme and other non-current plugin code through Composer and “squizlabs/php_codesniffer” to check for PHP 8.2 compatibility issues. Everything seemed clean except for some old MCRYPT code in Captcha by BestWebSoft that’s been outdated since PHP 7.1 and is no longer executed by their plugin.

    Current plugins:

    Active plugins (21)
    Captcha by BestWebSoft 	  	by BestWebSoft – 5.1.7
    Classic Editor 	  	by WordPress Contributors – 1.6.2
    Classic Widgets 	  	by WordPress Contributors – 0.3
    Enable Media Replace 	  	by ShortPixel – 4.0.1
    EWWW Image Optimizer 	  	by Exactly WWW – 6.9.3
    Force Regenerate Thumbnails 	  	by Exactly WWW – 2.1.1
    GazChap's WooCommerce Auto Category Product Thumbnails 	  	by Gareth 'GazChap' Griffiths – 1.4
    iframe 	  	by webvitaly – 4.5
    Shipping Canada Post WooCommerce 	  	by Jeremy Carter and Daphne Volante – 0.2.0
    Sticky Menu (or Anything!) on Scroll 	  	by WebFactory Ltd – 2.32
    W3 Total Cache 	  	by BoldGrid – 2.2.9
    Woo Empty Cart Button 	  	by WPCodelibrary – 1.4.0
    Captcha for WooCommerce 	  	by William Miles – 5.1.7
    WooCommerce PayPal Payments 	  	by WooCommerce – 2.0.1
    WooCommerce Square 	  	by WooCommerce – 3.4.2
    WooCommerce 	  	by Automattic – 7.2.2
    WooSidebars 	  	by WooCommerce – 1.4.6
    Yoast SEO 	  	by Team Yoast – 19.13
    WP Crontrol 	  	by John Blackbourn & contributors – 1.15.1
    WP Mail SMTP 	  	by WPForms – 3.7.0
    XML Sitemap & Google News 	  	by RavanH – 5.3.3 
    Thread Starter wmiles

    (@wmiles)

    That did the trick. Thanks for the assist.

    Thread Starter wmiles

    (@wmiles)

    Thank you for your reply and your explanation of the issue.

    Your Free version of WPSSO can be repaired without the requirement to purchase your WooCommerce integration module. I would ask that you do this as the fix to correct the incorrect $post object is trivial. Once fixed, your product will no longer report incorrect markup for every WooCommerce site that chooses to use your free SSO version. This will improve the quality of your product.

    Thank you for your consideration.

    If you choose not to correct this, one way for others to resolve the issue in the Free WPSSO implementation is to include the following fix in the theme ‘functions.php’ file.

    
    // Fix WPSSO incorrect Shop page meta values and JSON-LD markup
    
    function filter_sucom_get_post_object( $post_obj, $use_post ) {
        if (function_exists('is_shop') && is_shop()) {
           $shop_page_id  = (function_exists('wc_get_page_id')) ? wc_get_page_id( 'shop' ) : -1 ;
           if ( $shop_page_id > 0) $post_obj = get_post( $shop_page_id );
         }
        return $post_obj;
    };
    add_filter( 'sucom_get_post_object', 'filter_sucom_get_post_object', 10, 2 );
    
    
    
    @type WebPage
    @id https://www.bronzeart.ca/shop/#id/webpage
    mainEntityOfPage https://www.bronzeart.ca/shop/
    url https://www.bronzeart.ca/shop/
    sameAs https://www.bronzeart.ca/?p=4
    name Bronze Castings
    description These are all my unique bronze castings. ...
    
    Thread Starter wmiles

    (@wmiles)

    Hello Mark,

    You might consider adding this little function into ‘stickThis.js’ …

    /**
    * @preserve Sticky Anything 2.1.1 | @senff | GPL2 Licensed
    */
    
    (function($) {
        $(document).ready(function($) {
    .
    .
    .
        });
    
        $(window).resize(function() {
            $originalElement = $('.sticky-element-original');
    
            if($originalElement.hasClass('element-is-sticky')) {
                $originalElement.attr('style',orgAssignedStyles) ;
                var w = $originalElement[0].getBoundingClientRect().width;
                if (!w) { w = $originalElement.css('width'); }  // FALLBACK for subpixels
                $('.sticky-element-placeholder').css('width',w+'px');
            }
        });
    
    }(jQuery));
    

    This corrects sticky element width calculations on a window resize to make my menu responsive, but you might like to validate that this fix is general enough for other use cases of which you are aware.

    Thread Starter wmiles

    (@wmiles)

    Hello Mark,

    Frankly, this is not a developer issue. Simply rotating an iPAD or tablet or mobile device from landscape to portrait mode causes a new screen layout or refresh. I would think this is something that is regularly done?

    Your plugin doesn’t refresh properly on responsive devices. It is something that you should consider and fix.

    Thread Starter wmiles

    (@wmiles)

    Thank you Mark. This explains the issue.

    For what it is worth, I have noticed that a refresh of the browser window corrects the layout after the resize. Automating a full window refresh is probably not a good solution due to the overheads involved, but there may be a way to force the DOM to layout the screen again if you recognize the resize event.

    The plugin code in PgCache_Plugin_Admin for the prime() function has changed from version 0.9.6. The priming offset into the sitemap is now maintained in the wordpress option table in the database. The cron event for the page prime offset is no longer required and has been removed.

    update_option( ‘w3tc_pgcache_prime_offset’, $next_offset, false );

    Thread Starter wmiles

    (@wmiles)

    Version 4.8.2 installed and seems to work now.

    Thread Starter wmiles

    (@wmiles)

    Version 4.7.5 works just fine. So, it’s something in your latest 4.8 update. Thanks for looking at this.

Viewing 15 replies - 1 through 15 (of 19 total)