When a block fires an exception a 500 error occurs. A small block error can take a whole website this way.
When a block fires an exception the block will be hidden in prod mode and the exception will be logged in the production log. In dev mode the exception can be fired (the problem should be solved). In block edit mode show a message: "This block contains an error", so the user knows there is a block.