Server Error 246 at final Rebuilding Step after Import of vB

snowman

Member
Today, I installed XenForo for the first time on my server and then attempted to import my existing vBulletin 3.87 into it. I had no problems installing XenForo and the import proceeded without any problems. However, I got the following error below after I started the final rebuild the cache step. The error may have happened after the cache was done -- it was working on the threads and messages slowly and I was in another window. When I checked to see if it was done, the error below was displayed.

What should I do? Did the error mean that the rebuilding of the cache and indexes is incomplete or corrupt?

Also, the number of threads after import is almost exactly what vBulletin had (it's off by one), but the messages in XenForo are higher by about 33,000. I'm not sure why.

Thanks!

###

Server Error

mysqli_stmt::bind_result() [mysqli-stmt.bind-result]: Server returned unknown type 246. Probably your client library is incompatible with the server version you use!
  1. XenForo_Application::handlePhpError()
  2. mysqli_stmt->bind_result() in Zend/Db/Statement/Mysqli.php at line 255
  3. Zend_Db_Statement_Mysqli->_execute() in Zend/Db/Statement.php at line 297
  4. Zend_Db_Statement->execute() in Zend/Db/Adapter/Abstract.php at line 479
  5. Zend_Db_Adapter_Abstract->query() in Zend/Db/Adapter/Abstract.php at line 753
  6. Zend_Db_Adapter_Abstract->fetchRow() in XenForo/Model/Forum.php at line 578
  7. XenForo_Model_Forum->getForumCounters() in XenForo/DataWriter/Forum.php at line 172
  8. XenForo_DataWriter_Forum->rebuildCounters() in XenForo/CacheRebuilder/Forum.php at line 54
  9. XenForo_CacheRebuilder_Forum->rebuild() in XenForo/ControllerHelper/CacheRebuild.php at line 26
  10. XenForo_ControllerHelper_CacheRebuild->rebuildCache() in XenForo/ControllerAdmin/Tools.php at line 64
  11. XenForo_ControllerAdmin_Tools->actionCacheRebuild() in XenForo/FrontController.php at line 310
  12. XenForo_FrontController->dispatch() in XenForo/FrontController.php at line 132
  13. XenForo_FrontController->run() in /home/snowman/public_html/community/admin.php at line 13
###
In the xenForo error log detail, here is what it contains:

Error Info
ErrorException: mysqli_stmt::bind_result() [<a href='mysqli-stmt.bind-result'>mysqli-stmt.bind-result</a>]: Server returned unknown type 246. Probably your client library is incompatible with the server version you use! -library/Zend/Db/Statement/Mysqli.php:255
Generated By: Snowman, 23 minutes ago

Stack Trace

#0 [internal function]: XenForo_Application::handlePhpError(NULL, NULL) #1 /home/snowman/public_html/community/library/Zend/Db/Statement/Mysqli.php(255): mysqli_stmt->bind_result(Array, Array) #2 /home/snowman/public_html/community/library/Zend/Db/Statement.php(297): Zend_Db_Statement_Mysqli->_execute(Array) #3 /home/snowman/public_html/community/library/Zend/Db/Adapter/Abstract.php(479): Zend_Db_Statement->execute(Array) #4 /home/snowman/public_html/community/library/Zend/Db/Adapter/Abstract.php(753): Zend_Db_Adapter_Abstract->query('????SELECT?????...', 2) #5 /home/snowman/public_html/community/library/XenForo/Model/Forum.php(578): Zend_Db_Adapter_Abstract->fetchRow('????SELECT?????...', 2) #6 /home/snowman/public_html/community/library/XenForo/DataWriter/Forum.php(172): XenForo_Model_Forum->getForumCounters(2) #7 /home/snowman/public_html/community/library/XenForo/CacheRebuilder/Forum.php(54): XenForo_DataWriter_Forum->rebuildCounters() #8 /home/snowman/public_html/community/library/XenForo/ControllerHelper/CacheRebuild.php(26): XenForo_CacheRebuilder_Forum->rebuild(0, Array, NULL) #9 /home/snowman/public_html/community/library/XenForo/ControllerAdmin/Tools.php(64): XenForo_ControllerHelper_CacheRebuild->rebuildCache(Array, 'admin.php?impor...', 'admin.php?tools...', true) #10 /home/snowman/public_html/community/library/XenForo/FrontController.php(310): XenForo_ControllerAdmin_Tools->actionCacheRebuild() #11 /home/snowman/public_html/community/library/XenForo/FrontController.php(132): XenForo_FrontController->dispatch(Object(XenForo_RouteMatch)) #12 /home/snowman/public_html/community/admin.php(13): XenForo_FrontController->run() #13 {main}

Request State

array(3) { ["url"] => string(70) "http://www.raincoatreviews.com/community/admin.php?tools/cache-rebuild" ["_GET"] => array(1) { ["tools/cache-rebuild"] => string(0) "" } ["_POST"] => array(5) { ["process"] => string(1) "1" ["caches"] => string(9) "["Forum"]" ["position"] => string(1) "0" ["redirect"] => string(43) "admin.php?import/complete&confirm=vBulletin" ["_xfToken"] => string(53) "1,1310139977,5034d6054333455ea845647a209dae516e3c087b" }
 
Which version of MySQL are you running?

A quick Google search yields this:
In MySQL 5.0.3, a new field type was introduced, to support fixed-point math with more accuracy. This new field type is identified in the MySQL protocol with a numeric value 246.

If you have a MySQL server running 5.0.x or higher, and you use the NUMERIC or DECIMAL, it's incompatible with the DECIMAL field type used in the MySQL 4.x client.
 
Which version of SQL are you running?

A quick Google search yields this:
In MySQL 5.0.3, a new field type was introduced, to support fixed-point math with more accuracy. This new field type is identified in the MySQL protocol with a numeric value 246.

If you have a MySQL server running 5.0.x or higher, and you use the NUMERIC or DECIMAL, it's incompatible with the DECIMAL field type used in the MySQL 4.x client.

It says 5.0.92 - Community
 
The PHP version currently on the server is 5.2.6. Looks like that was from 2008. I have a managed server. Should I ask them to install PHP 5.3 and recompile MySQL with it?

Also, I saw this in the article you pointed me to. "Change your DECIMAL type to FLOAT in the database until it's supported." -- is that a good temporary fix? I don't know offhand how to do that. Is it something that can be done easily?
 
The tech guys at my host replied as follows:

We can actually recompile to a newer version of 5.2, and I would highly suggest AGAINST going to 5.3 as it is has a very strong tendency of breaking things.

If you can easily contact the developers ask them is PHP 5.2.17 would fix the problem.

Please let us know if you would like to do this as it is pretty time-consuming.

What do you guys advise? Do you think a recompile with 5.2.17 will fix this issue? Thanks!
 
It's not strictly the PHP version. It's the version of MySQL it's compiled against. This can be seen in PHP info. This thread discusses it as well:

http://zend-framework-community.634...erver-returned-unknown-type-246-td672273.html

The versions discussed there are well under our required versions, so it shouldn't normally be a problem (this is the first report). Compiling PHP with MySQL 5.0 would be all that's necessary.

If PHP is upgraded, including all compiled in or dynamically loaded components, then a PHP upgrade would fix it. From XF, I would recommend 5.3 (higher performance), but 5.2 is fine if you're not comfortable/can't get 5.3.
 
I just wanted to report back and say that the suggestions above fixed the problem. The tech team at my host updated and recompiled PHP to 5.2.17 and MySQL to 5.1.56. I was able to rebuild the catches from the tools panel now without causing the error. Thanks for the help in solving this issue!
 
If PHP is upgraded, including all compiled in or dynamically loaded components, then a PHP upgrade would fix it. From XF, I would recommend 5.3 (higher performance), but 5.2 is fine if you're not comfortable/can't get 5.3.

Doesn't 5.3 cause issues with older versions of VB (3.7, 3.8)? For now whilst we're still running VB and waiting to migrate I held off upgrading to 5.3 as I seemed to remember some issues.
 
Yes, it is true they were reluctant to upgrade the server to PHP 5.3. Here is what they said:

We will gladly update you to PHP 5.3, but it will break Zen Optimizer and Ion Cube Loader.

The reason I say this is PHP 5.2.17 is very recent, as in not more then a few months old. If you would like we could also upgrade you to MySQL 5.1, as this may help compatibility as well.

Please let us know what your final decision will be. We have no issues upgrading you to PHP 5.3 but be aware it will break things and we cannot provide extensive support if several things stop working.

Since it sounded like 5.3 would have been a convenient excuse to blame problems on and then refuse to help me, I decided to stay with the 5.2.17 they recommended. I wasn't sure whether I even need or use Zen Optimizer or Ion Cube Loader.

As far as PH 5.3 breaking vB 3.7/3.8 -- I have no idea. I don't run any other forums so it wouldn't have been an issue for me, but perhaps the server analysts were right that it the upgrade does break a lot of older programs.
 
Top Bottom