code: def fresh_transaction(self, name=None):
          
          with drop_lock:
  
              connection = self.get_thread_connection()
  
              if connection.transaction_open:
                  self.commit()
  
              self.begin()
              yield
  
              self.commit()
              self.begin()
docs: On entrance to this context manager, hold an exclusive lock and
          create a fresh transaction for redshift, then commit and begin a new
          one before releasing the lock on exit.
  
          See drop_relation in RedshiftAdapter for more information.
  
          :param Optional[str] name: The name of the connection to use, or None
              to use the default.