sjyangkevin commented on code in PR #51167:
URL: https://github.com/apache/airflow/pull/51167#discussion_r2114662079
##########
providers/sftp/src/airflow/providers/sftp/sensors/sftp.py:
##########
@@ -96,8 +96,9 @@ def poke(self, context: Context) -> PokeReturnValue | bool:
return False
else:
try:
- self.hook.isfile(self.path)
- actual_files_to_check = [self.path]
+ # File that did not exist was still being added to the list,
which was causing the Sensor
+ # to return True, even if the file was not present
+ actual_files_to_check = [self.path] if
self.hook.isfile(self.path) else []
except OSError as e:
if e.errno != SFTP_NO_SUCH_FILE:
Review Comment:
I think it can be helpful to log and raise the actual error for better
debugging purpose, instead of raising the generic Airflow Exception. One more
nit about `OSError`. Is it the only error will be raised in this branch? It
will be helpful to validate so we won’t miss any exception that can potentially
result in silent failure.
--
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]