dpm breaks only if used in form custom submit on edit node Problem

I have a case where the dpm printout is working fine in all cases except on a specific node type, in a very specific scenario.

If I edit the node type and place  dpm($form_state) in the custom node submit called by hook_form_alter, no messages display on submitting the form.

If I create the node it works fine. If I put dpm($form) in the custom node submit it works fine. It's only that exact scenario which breaks.

I've read other questions where dpm breaks, but never for something so utterly and irritatingly specific.

I've cut down my code to:

function mymodule_form_alter(&amp;$form, &amp;$form_state, $form_id) {
  if ($form_id === 'mycustom_node_form_id') {
    $form['#validate'][] = 'mymodule_form_validate';
    $form['actions']['submit']['#submit'][] = 'mymodule_form_submit';
  }
}

function mymodule_form_validate ($form, &amp;$form_state) {
  dpm($form_state);
  dpm($form);
}

function mymodule_form_submit ($form, &amp;$form_state) {
  dpm($form_state); &lt;-- THE PROBLEM
}


The node type itself, contains a fairly complex field collection, a bunch of ordinary fields and a fivestar field.

Can anyone provide any guesses or places to begin debugging this? I'm completely stumped.
Thumbson was spot on. MySQL was hitting it's the packet limit and increasing maximum_allowed_packet in /etc/mysql/my.cnf solved the problem. (ubuntu path)

The error won't show in Drupal, the only place I could find it was in my php-fpm log. See below:

[13-Jan-2015 00:54:27] WARNING: [pool www1] child 21620 said into stderr: "NOTICE: PHP message: PHP Fatal error:  Uncaught exception 'PDOException' with message 'SQLSTATE[HY000]: General error: 2006 MySQL server has gone away' in /srv/w$
[13-Jan-2015 00:54:27] WARNING: [pool www1] child 21620 said into stderr: "Stack trace:"
[13-Jan-2015 00:54:27] WARNING: [pool www1] child 21620 said into stderr: "#0 /srv/www/eslsearch.net/public/includes/database/database.inc(2171): PDOStatement-&gt;execute(Array)"
[13-Jan-2015 00:54:27] WARNING: [pool www1] child 21620 said into stderr: "#1 /srv/www/eslsearch.net/public/includes/database/database.inc(683): DatabaseStatementBase-&gt;execute(Array, Array)"
[13-Jan-2015 00:54:27] WARNING: [pool www1] child 21620 said into stderr: "#2 /srv/www/eslsearch.net/public/includes/database/database.inc(2350): DatabaseConnection-&gt;query('SELECT expire, ...', Array, Array)"
[13-Jan-2015 00:54:27] WARNING: [pool www1] child 21620 said into stderr: "#3 /srv/www/eslsearch.net/public/includes/lock.inc(167): db_query('SELECT expire, ...', Array)"
[13-Jan-2015 00:54:27] WARNING: [pool www1] child 21620 said into stderr: "#4 /srv/www/eslsearch.net/public/includes/lock.inc(146): lock_may_be_available('schema:runtime:...')"
[13-Jan-2015 00:54:27] WARNING: [pool www1] child 21620 said into stderr: "#5 /srv/www/eslsearch.net/public/includes/bootstrap.inc(433): lock_acquire('schema:runtime:...')"
[13-Jan-2015 00:54:27] WARNING: [pool www1] child 21620 said into stderr: "#6 /srv/www/eslsearch.net/public/includes/bootstrap.inc(455): DrupalCacheArray-&gt;set(Array)"
[13-Jan-2015 00:54:27] WARNING: [pool www1] child 21620 said into stderr: "#7 [internal function]: DrupalCacheArray-&gt;__destruct()..."