Fixed #16358 - Failure to set a memcache key deletes the key

Default Memcached configuration allows for a maximum object of 1MB and
will fail to set the key if it is too large. The key will be deleted from
memcached if it fails to be set. This is needed to avoid an issue with
cache_db session backend using the old value stored in memcached, instead
of the newer value stored in the database.
pylibmc doesn't seem to have SERVER_MAX_VALUE_LENGTH as far as I can tell from a quick check of its source code. This is falling back to the default value exposed by python-memcached on my system.