private void checkExternalTable(Table dest_tab) throws SemanticException {
    if ((!conf.getBoolVar(HiveConf.ConfVars.HIVE_INSERT_INTO_EXTERNAL_TABLES)) &&
        (dest_tab.getTableType().equals(TableType.EXTERNAL_TABLE))) {
      throw new SemanticException(
          ErrorMsg.INSERT_EXTERNAL_TABLE.getMsg(dest_tab.getTableName()));
    }
  }
Merge stmt with early split update may create several (2) writes to the same
table with the same {@link WriteType}, e.g. if original Merge stmt has both update and
delete clauses, and update is split into insert + delete, in which case it's not an
error
ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java