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

XF 1.5 Row size too large (> 8126) when updating theme

Discussion in 'Troubleshooting and Problems' started by daimpa, Jan 18, 2016.

  1. daimpa

    daimpa Member

    Hello, I receive this error when I try to update the theme uploading the XML file. I've read this post: https://xenforo.com/community/threads/mysqli-statement-execute-error-row-size-too-large.88390/

    On my local environment with xampp on Windows 10, I've "innodb_log_file_size = 5M". If I change it to 8M it works.
    If I look at the ib_logfile0 size on my production server, I see that it's 5MB.

    My question: is it 100% sure that I'll face the same error when uploading the XML? On the server I've php 5.3.3 and centos 6.7.

    Server Error
    Mysqli statement execute error : Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.

    1. Zend_Db_Statement_Mysqli->_execute() in C:\xampp\htdocs\forum\library\Zend\Db\Statement.php at line 297
    2. Zend_Db_Statement->execute() in C:\xampp\htdocs\forum\library\Zend\Db\Adapter\Abstract.php at line 479
    3. Zend_Db_Adapter_Abstract->query() in C:\xampp\htdocs\forum\library\XenForo\Model\Template.php at line 1692
    4. XenForo_Model_Template->_insertCompiledTemplateRecord() in C:\xampp\htdocs\forum\library\XenForo\Model\Template.php at line 1617
    5. XenForo_Model_Template->compileAndInsertParsedTemplate() in C:\xampp\htdocs\forum\library\XenForo\Model\Template.php at line 1379
    6. XenForo_Model_Template->compileTemplateInStyleTree() in C:\xampp\htdocs\forum\library\XenForo\Model\Template.php at line 1329
    7. XenForo_Model_Template->compileNamedTemplateInStyleTree() in C:\xampp\htdocs\forum\library\XenForo\Model\Template.php at line 1268
    8. XenForo_Model_Template->compileAllTemplates() in C:\xampp\htdocs\forum\library\XenForo\Deferred\Template.php at line 36
    9. XenForo_Deferred_Template->execute() in C:\xampp\htdocs\forum\library\XenForo\Model\Deferred.php at line 295
    10. XenForo_Model_Deferred->runDeferred() in C:\xampp\htdocs\forum\library\XenForo\Model\Deferred.php at line 429
    11. XenForo_Model_Deferred->_runInternal() in C:\xampp\htdocs\forum\library\XenForo\Model\Deferred.php at line 374
    12. XenForo_Model_Deferred->run() in C:\xampp\htdocs\forum\library\XenForo\ControllerAdmin\Tools.php at line 159
    13. XenForo_ControllerAdmin_Tools->actionRunDeferred() in C:\xampp\htdocs\forum\library\XenForo\FrontController.php at line 351
    14. XenForo_FrontController->dispatch() in C:\xampp\htdocs\forum\library\XenForo\FrontController.php at line 134
    15. XenForo_FrontController->run() in C:\xampp\htdocs\forum\admin.php at line 13
  2. Mike

    Mike XenForo Developer Staff Member

    It's not definitive, but it's pretty likely with that configuration. However, given your MySQL version must be 5.6.20 or newer, a 5MB setting for that is fairly small -- the default shifted to 48MB.

    You might be able to get away with adding more log files rather than increasing the size of an individual file. See the "Note" call out in blue here (assuming you're on 5.6.22+): http://dev.mysql.com/doc/relnotes/mysql/5.6/en/news-5-6-20.html
  3. daimpa

    daimpa Member

    Hi Mike. MySQL version is 5.7.13. I've another question: what happens when I face this error? Before changing these settings, can I try to upload the XML as a new style and check what happens? If I face the error, it will simply abort the process or it can mess up things?

    Once again, thanks for your patience and support.
  4. daimpa

    daimpa Member

    Hello @Mike, I'm sorry but I made a mistake: my MySQL version on production server is libmysql - 5.1.73. Data taken from phpmyadmin. Does this change something?
  5. Mike

    Mike XenForo Developer Staff Member

    It will potentially leave things in an inconsistent state.

    Not really. The issue here is specific to the server version. Though be aware that running a PHP mysqli extension and a MySQL server with very different versions can potentially cause issues. (Unless you're running into odd behaviors or other errors, it's unlikely to be a problem right now though.)
  6. daimpa

    daimpa Member

    Not sure what do you mean with this. Do you mean that with version lower than 5.6.22 I will not face the error "Row size too large (> 8126)"? So considering my mySQL version I don't have to fix the "innodb_log_file_size = 5M"?

    Sorry for confusion :oops:
  7. Mike

    Mike XenForo Developer Staff Member

    You specifically mentioned libmysql, so I assume you pulled that from your PHP info. That's explicitly not your MySQL server version; it's referencing a library that PHP has been compiled against. You need to connect to your MySQL server to get the exact version.
  8. daimpa

    daimpa Member

    From phpmyadmin:
    Screenshot (496).png
    So I think this confirms that MySQL version is 5.1.73, right?

    So again with the question: considering that I'm on a MySQL version lower than 5.6.22, I will not face the error "Row size too large (> 8126)" or there're the same probabilities to face it anyway?

    Again, THANK YOU!
  9. Mike

    Mike XenForo Developer Staff Member

    You are correct, that is (presumably) server version 5.1.73. You are unlikely to face the error with that version.

Share This Page