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

1.1.1 Server Error

#1
Good morning, I'm trying to run the 1.1.1 update and get this message, advice please?

Server Error

Mysqli prepare error: Table 'warning_definition' 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/Install/Upgrade/1010031-110b1.php at line 146
  5. XenForo_Install_Upgrade_1010031->step1() in XenForo/Install/Controller/Upgrade.php at line 146
  6. XenForo_Install_Controller_Upgrade->actionRun() in XenForo/FrontController.php at line 310
  7. XenForo_FrontController->dispatch() in XenForo/FrontController.php at line 132
  8. XenForo_FrontController->run() in at line 18
Thanks!
 

Jake Bunce

XenForo moderator
Staff member
#2
It appears that the xf_warning_definition table was not successfully created during that upgrade step. I don't know why that would fail.

To proceed you should be able to just refresh the page. It will "try again" and hopefully not return an error this time. If the error persists then some further investigation may be in order.
 

Jake Bunce

XenForo moderator
Staff member
#4
Refreshing isn't working. Is there a permissions problem somewhere possibly?
Maybe.

Try running this query on your database using a program like phpmyadmin:

Code:
	CREATE TABLE xf_warning_definition (
		warning_definition_id INT UNSIGNED NOT NULL AUTO_INCREMENT,
		points_default SMALLINT UNSIGNED NOT NULL,
		expiry_type ENUM('never','days','weeks','months','years') NOT NULL,
		expiry_default SMALLINT UNSIGNED NOT NULL,
		extra_user_group_ids VARBINARY(255) NOT NULL,
		is_editable TINYINT UNSIGNED NOT NULL,
		PRIMARY KEY (warning_definition_id),
		KEY points_default (points_default)
	) ENGINE = InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci;
That will manually create the table. Then refresh the upgrade again.

If the query returns an error then that may indicate the problem.
 
#7
I was in the wrong window. Ok, got the table created, restarted my upgrade. New error:

Mysqli prepare error: Table 'pilonida_xfpilo.xf_user_field_value' 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/Install/Upgrade/1010031-110b1.php at line 387
  5. XenForo_Install_Upgrade_1010031->step6() in XenForo/Install/Controller/Upgrade.php at line 146
  6. XenForo_Install_Controller_Upgrade->actionRun() in XenForo/FrontController.php at line 310
  7. XenForo_FrontController->dispatch() in XenForo/FrontController.php at line 132
  8. XenForo_FrontController->run() in /home/pilonida/public_html/xfforums/install/index.php at line 18
 

Jake Bunce

XenForo moderator
Staff member
#8
Similar error as before, different table. The new tables aren't being created for some reason. But the manual query works so here are some possible explanations:

1) File problem. Upload the 1.1.1 files again, overwriting the existing files.

2) Permission problem in MySQL. A permission problem would have returned an error when you ran the query, but maybe the forum is using a different MySQL user than phpmyadmin. Check your MySQL user in the library/config.php file. Then make sure that user has full access to the database. On CPanel servers this can be done in the MySQL section in your CPanel.

In both cases you need to refresh the upgrade page again.
 
#9
It was a permissions problem with user access. When we moved to the new host and I set up the admin permissions all of the permissions options weren't checked. Problem solved.

Much thanks!