pankajkoti commented on code in PR #40022:
URL: https://github.com/apache/airflow/pull/40022#discussion_r1631147608
##########
airflow/providers/sftp/hooks/sftp.py:
##########
@@ -558,13 +558,17 @@ async def get_mod_time(self, path: str) -> str:
:param path: full path to the remote file
"""
- ssh_conn = await self._get_conn()
- sftp_client = await ssh_conn.start_sftp_client()
+ ssh_conn = None
try:
+ ssh_conn = await self._get_conn()
+ sftp_client = await ssh_conn.start_sftp_client()
ftp_mdtm = await sftp_client.stat(path)
modified_time = ftp_mdtm.mtime
mod_time =
datetime.datetime.fromtimestamp(modified_time).strftime("%Y%m%d%H%M%S") #
type: ignore[arg-type]
self.log.info("Found File %s last modified: %s", str(path),
str(mod_time))
return mod_time
except asyncssh.SFTPNoSuchFile:
raise AirflowException("No files matching")
+ finally:
Review Comment:
Instead of using try finally to close the connection, can we use a context
manager using the `with` clause similar to how we did here
https://github.com/apache/airflow/pull/38881/files#diff-b93450b73d39b53428071b8dad04528c86fef7597937b4a302ae711b709e17d9R521
in [PR](https://github.com/apache/airflow/pull/38881). The context manager
should take care of closing the connection after exiting the with block
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]