**Apache Airflow version**:

2.1.0

**Environment**:

- self hosted docker-compose based stack

**What happened**:

Using JDBCOperator if the sql result in an error we got only 
```
[2021-06-21 11:05:55,377] {local_task_job.py:151} INFO - Task exited with return code 1
```

Before upgrading from 2.0.1 we got error details in logs:
```
jaydebeapi.DatabaseError: java.sql.SQLException:... [MapR][DrillJDBCDriver](500165) Query execution error. Details: VALIDATION ERROR:...
``` 

**What you expected to happen**:

See `SQLException` in logs

**How to reproduce it**:

Perform a generic SQL task with broken SQL.

**Anything else we need to know**:

I think is somehow related to https://github.com/apache/airflow/commit/abcd48731303d9e141bdc94acc2db46d73ccbe12#diff-4fd3febb74d94b2953bf5e9b4a981b617949195f83d96f4a589c3078085959b7R202 
airflow/models/taskinstance.py
session.merge(self)
        session.commit()
        
        
        settings.engine.dispose()  
        if verbose:
            if mark_success:
                self.log.info("Marking success for %s on %s", self.task, self.execution_date)
            else:
                self.log.info("Executing %s on %s", self.task, self.execution_date)
        return True
    def _date_or_empty(self, attr: str):
        result = getattr(self, attr, None)  
        return result.strftime('%Y%m%dT%H%M%S') if result else ''
    def _log_state(self, lead_msg: str = ''):
        self.log.info(
            '%sMarking task as %s.'
            + ' dag_id=%s, task_id=%s,'
            + ' execution_date=%s, start_date=%s, end_date=%s',
            lead_msg,
            self.state.upper(),
            self.dag_id,
            self.task_id,
            self._date_or_empty('execution_date'),
            self._date_or_empty('start_date'),
            self._date_or_empty('end_date'),
        )
    @provide_session
    @Sentry.enrich_errors
    def _run_raw_task(