Broken modules are not rolled back I try to develop a D8 module with entities. A lot of them ^^. But there is an issue with the way D8 handles the creation of tables during the installation process. If the definition of the entities is not correct D8 can't create the table. But the module is enabled anyway. 

Now D8 is not able to uninstall the module. I have tried drush pm-uninstall, drush cr, drush dre on the module. The uninstall process fails every time because D8 cant find the table and is obviously not aware of the failed installation of the module.

The only way I figured out was to create the tables with the primary key and then to uninstall the module. That works, but is very time consuming. How can I force uninstall my module even if the corresponding tables doesn't exist? And why is D8 ignoring the fact that the module was not installed correctly in the first place?
This is a known bug: https://www.drupal.org/node/2563515

As a workaround, remove the entity type definition (e.g. by removing the @ so it doesn't parse it as an annotation), clear cache, then uninstall.