PUP-7650 for the root cause of the issue. This behaviour is also sometimes (indeterminately) cause by using a resource collector, and that does not seem to be corrected by the patch linked in PUP-7650.
The error thrown is:
Error: Could not retrieve catalog from remote server: Error 500 on SERVER: Server Error: Evaluation Error: Error while evaluating a Virtual Query, Could not autoload puppet/type/pe_ini_setting: Attempt to redefine entity 'http://puppet.com/2016.1/runtime/type/pe_ini_setting'. Set at unknown location at /etc/puppetlabs/code/modules/classroom/manifests/master/student_environment.pp:51:3 on node superdog.puppetlabs.vm