Bilduppladdningsproblem i Drupal

Felmeddelandet ”An unrecoverable error occurred. This form was missing from the server cache. Try reloading the page and submitting again.” vid bilduppladdning till en nod som ännu inte blivit sparad.

Felet beror på att Drupal förutsätter att formuläret finns i cachen, medan cachen inte ger några garantier för att så är fallet. När det gäller memcachd på en större site är chansen överhängande att allt inte får plats, utan det som bedöms vara minst användbart tas bort.

Enklaste sättet att återskapa felet är:

1. Gå till formuläret för att lägga in en ny nod som brukar ha problemet

2. Starta om memcache

/etc/init.d/memcached restart

3. Ladda upp bilden

Problemet diskuteras i följande buggrapport:

[Add ability to exclude bins (tables) from memcache](http://drupal.org/node/959200)

I senaste dev-snapshoten av memcache-modulen finns det möjlighet att lägga till ett direktiv som hänvisar cachningen av formulär till databasen istället för memcached. Det görs med följande direktiv i settings.php

$conf['memcache_bins'] = array('cache' => 'default', 'cache_form' => 'database');