Fixed Image Proxy: Data too long for column 'file_name'

JulianD

Well-known member
I'm not sure what is going on here but this mysql error came up today:

An exception occurred: Mysqli statement execute error : Data too long for column 'file_name' at row 1 in /home/site/public_html/library/Zend/Db/Statement/Mysqli.php on line 214

  1. Zend_Db_Statement_Mysqli->_execute() in Zend/Db/Statement.php at line 317
  2. Zend_Db_Statement->execute() in Zend/Db/Adapter/Abstract.php at line 479
  3. Zend_Db_Adapter_Abstract->query() in Zend/Db/Adapter/Abstract.php at line 632
  4. Zend_Db_Adapter_Abstract->update() in XenForo/Model/ImageProxy.php at line 360
  5. XenForo_Model_ImageProxy->_fetchAndCacheImage() in XenForo/Model/ImageProxy.php at line 119
  6. XenForo_Model_ImageProxy->refreshImageIfRequired() in XenForo/Model/ImageProxy.php at line 26
  7. XenForo_Model_ImageProxy->getImage() in XenForo/ProxyOutput.php at line 197
  8. XenForo_ProxyOutput->_outputImage() in XenForo/ProxyOutput.php at line 129
  9. XenForo_ProxyOutput->output() in XenForo/ProxyOutput.php at line 339
  10. XenForo_ProxyOutput::run() in /home/laneros/public_html/proxy.php at line 12

Request state:

Code:
array(3) {
["url"] => string(950) "http://www.site.com/proxy.php?image=http%3A%2F%2Fcas.sv.us.criteo.com%2Fdelivery%2Flg.php%3Fckmode%3D0%26bannerid%3D0%26campaignid%3D0%26zoneid%3D98134%26pb%3D1%26bizmodel%3D0%26catCol%3D0%26catId%3D0%26cb%3D449b73cd5d%26rtb%3D0%26zc%3D%25257ct5QrqJfQ1qXzzP0wnydqjg%25253d%25253d%25257c%26b%3D_%2525252fLqVauF2f3GKuekfelxxrA%2525253d%2525253d%26bi%3D%257ct5QrqJfQ1qWA7Y9BfKfKJWAR40x2bY4m%257c%26loc%3Dhttp%253a%252f%252ftranslate.googleusercontent.com%252ftranslate_c%253fdepth%253d1%2526hl%253des%2526ie%253dUTF8%2526prev%253d_t%2526rurl%253dtranslate.google.com%2526sl%253den%2526tl%253des%2526u%253dhttp%253a%252f%252fnews.softpedia.com%252fnews%252fiPhone-5S-Will-Sport-128GB-Storage-A7-Chip-Sapphire-Home-Button-KGI-375964.shtml%2526usg%253dALkJrhiqhimBsvpUDjDuwSBm4k-cfVzsnQ%26c%3DB4mqdBgpZRLcaZfeC7f-mw%26iii%3D174326296%26aid%3D50a36c05fe9044b0ac60a8ebdea75347%26iid%3D50a30b9e35904fd58b9536c37f8b4be7&hash=80ba4dbfdbe5b1291b2f93cc4da5fe20"
["_GET"] => array(2) {
["image"] => string(719) "http://cas.sv.us.criteo.com/delivery/lg.php?ckmode=0&bannerid=0&campaignid=0&zoneid=98134&pb=1&bizmodel=0&catCol=0&catId=0&cb=449b73cd5d&rtb=0&zc=%257ct5QrqJfQ1qXzzP0wnydqjg%253d%253d%257c&b=_%25252fLqVauF2f3GKuekfelxxrA%25253d%25253d&bi=%7ct5QrqJfQ1qWA7Y9BfKfKJWAR40x2bY4m%7c&loc=http%3a%2f%2ftranslate.googleusercontent.com%2ftranslate_c%3fdepth%3d1%26hl%3des%26ie%3dUTF8%26prev%3d_t%26rurl%3dtranslate.google.com%26sl%3den%26tl%3des%26u%3dhttp%3a%2f%2fnews.softpedia.com%2fnews%2fiPhone-5S-Will-Sport-128GB-Storage-A7-Chip-Sapphire-Home-Button-KGI-375964.shtml%26usg%3dALkJrhiqhimBsvpUDjDuwSBm4k-cfVzsnQ&c=B4mqdBgpZRLcaZfeC7f-mw&iii=174326296&aid=50a36c05fe9044b0ac60a8ebdea75347&iid=50a30b9e35904fd58b9536c37f8b4be7"
["hash"] => string(32) "80ba4dbfdbe5b1291b2f93cc4da5fe20"
}
["_POST"] => array(0) {
}
}
I was able to reproduce it here:

http://xenforo.com/community/threads/image-proxy-test.67929/
 
Last edited:
That is one long file name for the image...

Looks like there's a hard coded length limit in mysql - the name should be truncated to fit...

Liam
 
That is one long file name for the image...

Looks like there's a hard coded length limit in mysql - the name should be truncated to fit...

Liam
You're right. The image seems to be one used to track email campaigns and contains a lot of arguments.
 
Top Bottom