Hi Akeeba Support,
We're experiencing a persistent issue on a Joomla 4.4.13 site where the database schema seems to be stuck at version 4.4.4-2024-03-28
, preventing Joomla core SQL updates from running correctly. We suspect a conflict involving Admin Tools and the #__user_keys
table, and we're also seeing critical errors related to Admin Tools itself. We're using Admin Tools Professional (latest version 7.8.0 but DB-Version is only at 7.4.5-20231214, updated through Joomla updater).
- Our Joomla files are at version 4.4.13.
- However, the
joomla_update.php
log consistently shows the following during core file reinstallation or database checks:
INFO ::1 update Start of SQL updates.
INFO ::1 update The current database version (schema) is 4.4.4-2024-03-28.
INFO ::1 update End of SQL updates.
- This indicates that SQL update scripts for Joomla versions after 4.4.4 (e.g., 4.4.5, etc., up to 4.4.13) are not being executed.
In System -> Maintenance -> Database, we see the "Joomla CMS" entry reporting schema 4.4.4 and a message "377 database changes did not alter table structure and were skipped."
#__user_keys
Table Conflict
- Our
#__user_keys
table has the following structure, which we believe might be due to Admin Tools' "Admin Access Control / admintools_adminaccess" feature:
CREATE TABLE `joomla_user_keys` (
`id` int(10) UNSIGNED NOT NULL,
`user_id` varchar(150) NOT NULL,
`token` varchar(255) NOT NULL,
`series` varchar(191) NOT NULL,
`time` varchar(200) NOT NULL,
`uastring` varchar(255) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
- This structure is missing several columns required by Joomla 4.4.5+ for its core API token functionality (e.g.,
invalid
,time_created
,token_type
,metadata
) etc. - We hypothesize that a Joomla core SQL update script (likely
4.4.5-2024-04-29.sql
or similar, which attempts toALTER TABLE #__user_keys
) is failing due to this structural mismatch, thereby halting the entire Joomla database schema update sequence.
Secondary Problem: Admin Tools Critical Error => Error fixed: by removing admin tools plugin folder and reinstalling latest .zip file
We are also seeing repeated critical errors in our everything.php log file related to Admin Tools:
CRITICAL ::1 error Uncaught Throwable of type Error thrown with message "Class "Joomla\Plugin\System\AdminTools\Feature\Base" not found". Stack trace:
#0 [ROOT]\libraries\vendor\composer\ClassLoader.php(571): include()
#1 [ROOT]\libraries\vendor\composer\ClassLoader.php(428): Composer\Autoload\includeFile('C:\\Web\\xampp\\ht...')
#2 [ROOT]\libraries\src\Autoload\ClassLoader.php(59): Composer\Autoload\ClassLoader->loadClass('Akeeba\\Plugin\\S...')
#3 [internal function]: Joomla\CMS\Autoload\ClassLoader->loadClass('Akeeba\\Plugin\\S...')
#4 [ROOT]\plugins\system\admintools\src\Extension\AdminTools.php(579): class_exists('Akeeba\\Plugin\\S...')
#5 [ROOT]\plugins\system\admintools\src\Extension\AdminTools.php(572): Akeeba\Plugin\System\AdminTools\Extension\AdminTools->loadFeatures()
#6 [ROOT]\plugins\system\admintools\src\Extension\AdminTools.php(171): Akeeba\Plugin\System\AdminTools\Extension\AdminTools->initialize()
#7 [ROOT]\plugins\system\admintools\services\provider.php(45): Akeeba\Plugin\System\AdminTools\Extension\AdminTools->initalisePlugin()
... (further stack trace)
This suggests there might be an issue with the Admin Tools installation itself (e.g., missing files, incorrect class loading).
Resulting Symptoms:
- The "API Tokens" tab is missing in User Profiles.
- The "Web Services" tab is missing in Global Configuration.
- The persistent "377 database changes ... skipped" message in Joomla Maintenance: Database.
- Multiple reinstallations of Joomla 4.4.13 core files.
- Used Admin Tools utilities: "Repair & Optimise Tables," "Clean Temp Directory," and "Reset Joomla Update."
- Checked Joomla logs (
joomla_update.php
, everything.php) and Apache error logs (no explicit SQL errors found during the update process, but thejoomla_update.php
log confirms the schema update halt, and everything.php shows the Admin Tools critical error).
- Could the "Class Joomla\Plugin\System\AdminTools\Feature\Base not found" error be contributing to the Joomla update problems or the
#__user_keys
table issue? How can we resolve this Admin Tools error? - Is Admin Tools' usage of the
#__user_keys
table known to conflict with the Joomla 4.4.5+ core API token table structure requirements? - If so, is there a recommended way to configure Admin Tools to avoid this conflict (e.g., use a different table for its "Admin Access Control" feature, or a setting to make it compatible)?
- What is the recommended procedure to allow Joomla core to correctly update the
#__user_keys
table to its required structure while preserving necessary Admin Tools functionality? What data, if any, stored by Admin Tools in the current#__user_keys
table is critical to retain?
We are trying to get our Joomla site fully updated and functional, including the core API features, and any guidance on resolving these interconnected issues would be greatly appreciated. We can provide full log files if needed.
Thank you for your time and assistance.