Migrated D8 site breaks when cache_discovery is truncated I was developing a site for a migration on Acquia's free tier, but it turned out there wasn't enough space for all of the files. Since I can no longer use local development/acquia for development, I decided to migrate it all over to another host that I use.

Did my normal process of installing a clean site on the new server, and then copying the modules, themes, and file folders from the old dev site to the new dev site, and then importing the full database dump from the old database into the new database.

Boom, site is up and running. I go to clear the caches on the new dev site to finalize the migration and am met with the angry error "The mysite.com page isn’t working. mysite.com is currently unable to handle this request. HTTP ERROR 500".

After re-importing a few times and clearing the cache tables one at a time, I've learned that the cache_discovery table in particular is the culprit. Clearing all of the other cache tables works fine, but when I clear this one the site throws that error. 

Anybody know what might be happening here? I never encountered anything like this in D7 and this is my first D8 build, so I'm not sure how to proceed.
Did my normal process of installing a clean site on the new server,
  and then copying the modules, themes, and file folders from the old
  dev site to the new dev site,


In D8 all information from annotations and yaml files are newly discovered on a cache rebuild. And your mix from the clean site install and the copied files did not fit together. This could be one file, which is left over from an older core or module version and you get this problem. So the solution is, to copy complete site archives or when updating remove the old code completely before replacing it.