Unexpected error message
Does anyone know what this means and how I can fix it?
Every database record has a unique identity. The message is saying that a save is being attempted that duplicates an entry that already exists, so if allowed to continue the identity would no longer be unique.
It relates to the block cache, so you may be able to clear it by disabling all the caches and clearing them. That should hopefully empty the block cache table and the site can get on with things.
Another possibility is a mistake in the database code of a custom block (you don't say what the block type is being saved).