• This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn more.

XF 1.5 Account Upgrades Not Automatic (1.5.7 )

Our account upgrades have been working normally for a while but recently I had noticed that they stopped automatically giving out ranks.
I checked the upgrade logs and I was prompted with an error.

Mysqli prepare error: Table 'website_xenforotable.xf_user_upgrade_log' doesn't exist

  1. Zend_Db_Statement_Mysqli->_prepare() in Zend/Db/Statement.php at line 115
  2. Zend_Db_Statement->__construct() in Zend/Db/Adapter/Mysqli.php at line 381
  3. Zend_Db_Adapter_Mysqli->prepare() in Zend/Db/Adapter/Abstract.php at line 478
  4. Zend_Db_Adapter_Abstract->query() in XenForo/Model.php at line 219
  5. XenForo_Model->fetchAllKeyed() in XenForo/Model/UserUpgrade.php at line 745
  6. XenForo_Model_UserUpgrade->getTransactionLogs() in XenForo/ControllerAdmin/UserUpgrade.php at line 500
  7. XenForo_ControllerAdmin_UserUpgrade->actionTransactionLog() in XenForo/FrontController.php at line 351
  8. XenForo_FrontController->dispatch() in XenForo/FrontController.php at line 134
  9. XenForo_FrontController->run() in /home/xmannj2/public_html/admin.php at line 13

Chris D

XenForo developer
Staff member
That could be related.

The loss of that table could actually be quite problematic, especially if you have recurring subscriptions. You should attempt to restore this table from a backup in the first instance. As to how it came to get deleted in the first place, see if your host can shed any light on that.

If your host cannot help and you cannot restore it from a backup, you can re-create it, but any data which is missing from there could cause problems.

Chris D

XenForo developer
Staff member
You need to be able to run MySQL queries:
CREATE TABLE xf_user_upgrade_log (
   user_upgrade_record_id INT UNSIGNED NOT NULL,
   processor VARCHAR(25) NOT NULL,
   transaction_id VARCHAR(50) NOT NULL,
   subscriber_id VARCHAR(50) NOT NULL DEFAULT '',
   transaction_type ENUM('payment','cancel','info','error') NOT NULL,
   message VARCHAR(255) NOT NULL default '',
   transaction_details MEDIUMBLOB NOT NULL,
   PRIMARY KEY (user_upgrade_log_id),
   KEY transaction_id (transaction_id),
   KEY subscriber_id (subscriber_id),
   KEY log_date (log_date)
) ENGINE = InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci