The following message is displayed when attempting to run the exporter for large exports. I only have about 80 rows I'm trying to export, but I have about 30 fields I'm exporting. None of the fields has an unreasonable amount of data.

An AJAX HTTP error occurred. HTTP Result Code: 200 Debugging information follows. Path: /batch?id=159&op=do StatusText: parsererror ResponseText: Additional uncaught exception thrown while handling exception.OriginalPDOException: SQLSTATE[08S01]: Communication link failure: 1153 Got a packet bigger than 'max_allowed_packet' bytes: INSERT INTO {views_data_export_object_cache} (eid, updated, data) VALUES (:db_insert_placeholder_0, :db_insert_placeholder_1, :db_insert_placeholder_2); Array ( [:db_insert_placeholder_0] => 5 [:db_insert_placeholder_1] => 1327956936 [:db_insert_placeholder_2] => O:4:"view":39:{s:8:"db_table";s:10:"views_view";s:10:"base_table";s:4:"node";s:10:"base_field";s:3:"nid";s:4:"name";s:20:"admin_tl_schools_xls";s:3:"vid";s:2:"27";s:7:"editing";b:0;s:4:"args";a:0:{}s:8:"use_ajax";b:0;s:6:"result";a:0:{}s:12:"current_page";N;s:14:"items_per_page";N;s:6:"offset";N;s:10:"total_rows";N;s:17:"exposed_raw_input";a:0:{}s:8:"old_view";a:1:{i:0;N;}s:12:"parent_views";a:0:{}s:13:"is_attachment";N;s:7:"display";a:2:{s:7:"default";O:13:"views_display":7:{s:8:"db_table";s:13:"views_display";s:3:&qu ........ (goes on for pages and pages)

Comments

Steven Jones’s picture

Status: Active » Postponed (maintainer needs more info)

How big is your max allowed packet? I know that we're storing a lot of data in the DB during export, but this is clearly excessive.

erikwebb’s picture

Status: Postponed (maintainer needs more info) » Active

I am having the issue with 128M max_allowed_packet. Because this is a predictable error, can we catch this exception somewhere? Or maybe we can divide the database inserts more?

erikwebb’s picture

Maybe we could use something like SET SESSION VARIABLE `max_allowed_packet` = 134217728\G? Then allow users to configure this value via an admin form.

erikwebb’s picture

Nevermind, not a problem at 128M.

erikwebb’s picture

16M works fine for meand that's the d.o recommendation as well. Maybe we should just check using hook_requirements() for 16M?

I'm guessing larsdjohnson has the default 1M setting.

Steven Jones’s picture

Title: Exporting large files: "got a packet bigger than 'max_allowed_packet' bytes" » Warn if max allowed packet is too small
Version: 7.x-3.0-beta5 » 7.x-3.x-dev
Category: bug » feature
Steven Jones’s picture

Version: 7.x-3.x-dev » 6.x-2.x-dev
Status: Active » Patch (to be ported)

I've added a hook_requirements to 7.x-3.x

Steven Jones’s picture

Status: Patch (to be ported) » Fixed

Pushed a fix into 6.x-2.x.

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.

Anonymous’s picture

Issue summary: View changes

Clarification