(Note that this error DOES APPEAR in 5.14, and previous Drupals at least back to 5.6.)

Failure mode: I have a lot of blocks (many automatically created by the aggregator module.) If I create a new block or try to enable or move an existing, enabled block (it does not matter whether the block is automatically created or was manually built,) I often will get the pink warning box with

"Validation error, please try again. If this error persists, please contact the site administrator."

(Of course I am the god user, so this is not applicable)

It does NOT matter whether page caching is enabled.
My PHP Timeout value (how long a script can run) is set artificially high, again, no effect on this problem.

On occasion I've also gone into the actual MYSQL tables and manually moved blocks around (since I have fifty themes, this is a really really ugly way to do work, trust me!)

Workaround:

I have noticed that if I create (but do NOT ENABLE) several blocks, and then DELETE one of them, the validation problem goes away. Once I am able to move or enable a block, then I can pretty generally move or enable all I want!

I've taken to creating a surplus stash of dummy blocks (SPACER1, SPACER2, etc) with no content. When I want to do something with the block arrangement, I just 'burn off' one of these spares by deleting it - as I say, it is a crude workaround and I have NO IDEA why this should do anything. It usually works for me.

If any Drupal developers are reading this thread, please fix this! It is really a deal killer for deploying a client site!

Comments

hound’s picture

I should clarify that when the validation error message appears, the change that I am trying to make (for instance, enable a disabled module) does NOT get made.

Also, there is no effect if I turn off MYSQL and the Apache server, run 'myisamchk -r' on all the data files associated with the site, and restart the Apache and MySQL servers . It does not appear as if this is a data or index problem.

FYI, I am running MySQL 5.0.51a and Apache/2.2.8 (Ubuntu) DAV/2 PHP/5.2.4-2ubuntu5.4 with Suhosin-Patch mod_perl/2.0.3 Perl/v5.8.8 on Ubuntu 8.04. I've moved the data around from internal SATA drives to a RAID array - no effect at all from doing that either (although the RAID is faster!)

hound’s picture

This has been driving me bananas, but I finally realized that maybe the Suhosin Hardened Apache and Suhosin PHP stuff on the box where the error was occurring was somehow involved, since I had previously been running the site on a different box without Suhosin, and the problem never occurred there.

A search for "php post configured variable exceeded" (which appears in the error-prone server's logs) led me to this link:

http://tracker.moodle.org/browse/MDL-17056

And I have now inserted

[suhosin]
suhosin.post.max_vars = 400
suhosin.request.max_vars = 400

into my php.ini file.

I will report back if this fixes the problem - it looks promising though.

Dataprix’s picture

I had the same problem with blocks and I've tried your solution.
I confirm that it works fine, almost for me.

Thank you hound!

Another solution could be eliminate RSS blocks generated automatically when you aggregate a feed, anyone knows how to do it?