Home
404 Solution
3.2.1
Does 404 Solution work with WordPress 6.9.4 and PHP 8.1.12? A smoke test was performed on 2026-03-12 13:07:54 UTC .
Summary
Errors
4 Database errors
No JavaScript exceptions
All test pages loaded successfully
No resource errors
Performance
Memory usage: 265.84 KiB
The average PHP memory usage increased by this amount after activating by the plugin.
Page speed impact:
0.027 seconds
The average page load time increased by this amount after activating the plugin.
Environment
WordPress version 6.9.4 PHP version 8.1.12 MySQL version 10.6.10 PHP memory limit 512M
Pages 5 Plugins ‹ Test site — WordPress
URL
/wp-admin/plugins.php?plugin_status=all&paged=1&s
Requested URL
/wp-admin/plugins.php?action=activate&plugin=404-solution%2F404-solution.php&plugin_status=all&paged=1&s&_wpnonce=e012b1b0d0
Aspect
after-activation
HTTP status
200
Load time
2.876 s
Memory usage
4.02 MiB
JS errors
None
Resource errors
None
Settings → 404 Solution
URL
/wp-admin/options-general.php?page=abj404_solution
Aspect
menu-item
HTTP status
200
Load time
0.526 s
Memory usage
4.01 MiB
JS errors
None
Resource errors
None
Test site – Just another WordPress site
URL
/
Aspect
front-page
HTTP status
200
Load time
0.185 s
Memory usage
4.13 MiB
JS errors
None
Resource errors
None
Add Post ‹ Test site — WordPress
URL
/wp-admin/post-new.php
Aspect
new-meta-boxes
HTTP status
200
Load time
0.938 s
Memory usage
6.65 MiB
JS errors
None
Resource errors
None
Add Page ‹ Test site — WordPress
URL
/wp-admin/post-new.php?post_type=page
Aspect
new-meta-boxes
HTTP status
200
Load time
0.719 s
Memory usage
6.63 MiB
JS errors
None
Resource errors
None
Benchmark
URL
Load time
Memory usage
Inactive
Active
Change
Inactive
Active
Change
/wp-admin/index.php 0.443 s 0.375 s -0.068 s 3.78 MiB 4.05 MiB + 278.09 KiB /wp-admin/edit.php 0.374 s 0.317 s -0.057 s 3.78 MiB 4.1 MiB + 328.12 KiB /wp-admin/post-new.php 0.884 s 0.876 s -0.008 s 6.31 MiB 6.65 MiB + 352.27 KiB /wp-admin/upload.php 0.465 s 0.484 s +0.019 s 3.74 MiB 3.99 MiB + 259.95 KiB /wp-admin/options-writing.php 0.347 s 0.344 s -0.003 s 3.71 MiB 3.97 MiB + 263.95 KiB /wp-admin/media-new.php 0.513 s 0.331 s -0.182 s 3.7 MiB 3.97 MiB + 272.14 KiB /wp-admin/edit-tags.php?taxonomy=category 0.325 s 0.775 s +0.450 s 3.72 MiB 3.99 MiB + 282.81 KiB /wp-admin/post-new.php?post_type=page 0.710 s 0.885 s +0.175 s 6.3 MiB 6.63 MiB + 345.75 KiB /wp-admin/options-discussion.php 0.343 s 0.359 s +0.016 s 3.71 MiB 3.97 MiB + 260.45 KiB /wp-admin/edit-comments.php 0.334 s 0.343 s +0.009 s 3.73 MiB 3.99 MiB + 259.95 KiB / 0.272 s 0.221 s -0.051 s 4.11 MiB 4.13 MiB + 20.81 KiB
Average
0.455 s 0.483 s +0.027 s 4.24 MiB 4.5 MiB + 265.84 KiB
Code Statistics
Note: Third-party libraries and minified JS/CSS files are excluded from these statistics where
possible, so the numbers you see here may be lower than those reported by other tools.
Language
%
Lines of code
Comment lines
Files
PHP 40.3% 20,453 5,703 44 PO File 40.1% 20,345 1,956 13 CSS 7.3% 3,692 369 4 JavaScript 5.4% 2,758 600 18 Markdown 3.1% 1,586 0 2 HTML 2.6% 1,318 38 40 SQL 1.1% 544 125 35 JSON 0.1% 45 0 1
Total
50,741
8,791
157
Lines of code
20,521
Total complexity
4,810
Median class complexity
37.5
Median method complexity
3.0
Most complex class
ABJ_404_Solution_DataAccess
Most complex function
ABJ_404_Solution_SpellChecker::getLikelyMatchIDs()
Classes
40
Methods
774
Functions
32
Additions
Things that the plugin adds to the site. This section is not intended to be comprehensive.
The test tool only looks for a few specific types of added content.
Database Tables 7 wp_abj404_logsv2 wp_abj404_lookup wp_abj404_ngram_cache wp_abj404_permalink_cache wp_abj404_redirects wp_abj404_spelling_cache wp_abj404_view_cache Options wp_options 3 abj404_installed_time abj404_ngram_rebuild_offset abj404_settings Meta Boxes {
"post": {
"abj404_redirect_meta_box": {
"title": "404 Solution",
"context": "side"
}
},
"page": {
"abj404_redirect_meta_box": {
"title": "404 Solution",
"context": "side"
}
},
"attachment": {
"abj404_redirect_meta_box": {
"title": "404 Solution",
"context": "side"
}
}
}PHP Error Log 32 lines [12-Mar-2026 13:08:13 UTC] WordPress database error Table 'wordpress.wp_abj404_lookup' doesn't exist for query
/* ------------------ /wp-content/plugins/404-solution/includes/sql/correctLookupTableIssue.sql BEGIN ----- */
delete from wp_abj404_lookup
where lkup_value in (
select lkup_value from (
SELECT DISTINCT lkup_value
FROM wp_abj404_lookup
group by lkup_value
having count(lkup_value) > 1
) a
)
/* ------------------ /wp-content/plugins/404-solution/includes/sql/correctLookupTableIssue.sql END ----- */
made by activate_plugin, plugin_sandbox_scrape, include_once('/plugins/404-solution/404-solution.php'), require_once('/plugins/404-solution/includes/Loader.php'), ABJ_404_Solution_SpellChecker::init, ABJ_404_Solution_SpellChecker::getInstance, ABJ_404_Solution_ServiceContainer->get, {closure}, ABJ_404_Solution_SpellChecker->__construct, ABJ_404_Solution_PluginLogic->getOptions, ABJ_404_Solution_PluginLogic->updateToNewVersion, ABJ_404_Solution_PluginLogic->updateToNewVersionAction, ABJ_404_Solution_DatabaseUpgradesEtc->createDatabaseTables, ABJ_404_Solution_DatabaseUpgradesEtc->reallyCreateDatabaseTables, ABJ_404_Solution_DatabaseUpgradesEtc->correctIssuesBefore, ABJ_404_Solution_DataAccess->correctDuplicateLookupValues, ABJ_404_Solution_DataAccess->queryAndGetResults
[12-Mar-2026 13:08:14 UTC] WordPress database error Table 'wordpress.wp_abj404_lookup' doesn't exist for query
/* ------------------ /wp-content/plugins/404-solution/includes/sql/correctLookupTableIssue.sql BEGIN ----- */
delete from wp_abj404_lookup
where lkup_value in (
select lkup_value from (
SELECT DISTINCT lkup_value
FROM wp_abj404_lookup
group by lkup_value
having count(lkup_value) > 1
) a
)
/* ------------------ /wp-content/plugins/404-solution/includes/sql/correctLookupTableIssue.sql END ----- */
made by activate_plugin, plugin_sandbox_scrape, include_once('/plugins/404-solution/404-solution.php'), require_once('/plugins/404-solution/includes/Loader.php'), ABJ_404_Solution_SpellChecker::init, ABJ_404_Solution_SpellChecker::getInstance, ABJ_404_Solution_ServiceContainer->get, {closure}, ABJ_404_Solution_SpellChecker->__construct, ABJ_404_Solution_PluginLogic->getOptions, ABJ_404_Solution_PluginLogic->updateToNewVersion, ABJ_404_Solution_PluginLogic->updateToNewVersionAction, ABJ_404_Solution_DatabaseUpgradesEtc->createDatabaseTables, ABJ_404_Solution_DatabaseUpgradesEtc->reallyCreateDatabaseTables, ABJ_404_Solution_DatabaseUpgradesEtc->correctIssuesBefore, ABJ_404_Solution_DataAccess->correctDuplicateLookupValues, ABJ_404_Solution_DataAccess->queryAndGetResults, ABJ_404_Solution_DataAccess->attemptMissingTableRepairAndRetry
[12-Mar-2026 13:08:14 UTC] WordPress database error Table 'wordpress.wp_abj404_spelling_cache' doesn't exist for query delete from wp_abj404_spelling_cache where matchdata is null or matchdata = '' made by activate_plugin, plugin_sandbox_scrape, include_once('/plugins/404-solution/404-solution.php'), require_once('/plugins/404-solution/includes/Loader.php'), ABJ_404_Solution_SpellChecker::init, ABJ_404_Solution_SpellChecker::getInstance, ABJ_404_Solution_ServiceContainer->get, {closure}, ABJ_404_Solution_SpellChecker->__construct, ABJ_404_Solution_PluginLogic->getOptions, ABJ_404_Solution_PluginLogic->updateToNewVersion, ABJ_404_Solution_PluginLogic->updateToNewVersionAction, ABJ_404_Solution_DatabaseUpgradesEtc->createDatabaseTables, ABJ_404_Solution_DatabaseUpgradesEtc->reallyCreateDatabaseTables, ABJ_404_Solution_DatabaseUpgradesEtc->correctIssuesBefore, ABJ_404_Solution_DatabaseUpgradesEtc->correctMatchData, ABJ_404_Solution_DataAccess->queryAndGetResults
[12-Mar-2026 13:08:14 UTC] WordPress database error Table 'wordpress.wp_abj404_spelling_cache' doesn't exist for query delete from wp_abj404_spelling_cache where matchdata is null or matchdata = '' made by activate_plugin, plugin_sandbox_scrape, include_once('/plugins/404-solution/404-solution.php'), require_once('/plugins/404-solution/includes/Loader.php'), ABJ_404_Solution_SpellChecker::init, ABJ_404_Solution_SpellChecker::getInstance, ABJ_404_Solution_ServiceContainer->get, {closure}, ABJ_404_Solution_SpellChecker->__construct, ABJ_404_Solution_PluginLogic->getOptions, ABJ_404_Solution_PluginLogic->updateToNewVersion, ABJ_404_Solution_PluginLogic->updateToNewVersionAction, ABJ_404_Solution_DatabaseUpgradesEtc->createDatabaseTables, ABJ_404_Solution_DatabaseUpgradesEtc->reallyCreateDatabaseTables, ABJ_404_Solution_DatabaseUpgradesEtc->correctIssuesBefore, ABJ_404_Solution_DatabaseUpgradesEtc->correctMatchData, ABJ_404_Solution_DataAccess->queryAndGetResults, ABJ_404_Solution_DataAccess->attemptMissingTableRepairAndRetry