private int executeUpdateInternal(
     final Updater updater,
     final StatementExecutorWrapper statementExecutorWrapper,
     final boolean isExceptionThrown,
     final Map<String, Object> dataMap) {
   int result;
   ExecutorExceptionHandler.setExceptionThrown(isExceptionThrown);
   ExecutorDataMap.setDataMap(dataMap);
   try {
     result =
         updater.executeUpdate(
             statementExecutorWrapper.getStatement(),
             statementExecutorWrapper.getSqlExecutionUnit().getSql());
   } catch (final SQLException ex) {
     postExecutionEventsAfterExecution(
         statementExecutorWrapper, EventExecutionType.EXECUTE_FAILURE, Optional.of(ex));
     ExecutorExceptionHandler.handleException(ex);
     return 0;
   }
   postExecutionEventsAfterExecution(statementExecutorWrapper);
   return result;
 }