Fixes bug where using Execution the Hive sources no longer append data.

The hack we do in the Hive parquet sources no longer works so this is a work around. The benefit this has is that we can now choose which sources are append and which one's aren't.
This is now a reasonably sized block of code. It would be good to avoid duplicating it.