diff --git a/transfer_service/retrieve_executor.py b/transfer_service/retrieve_executor.py index 3bc43c61be5a2039cbb2108b3f32a73824c5eb30..c009ec8a178f59c4e6bb9631004390f2edcb3472 100644 --- a/transfer_service/retrieve_executor.py +++ b/transfer_service/retrieve_executor.py @@ -456,16 +456,19 @@ class RetrieveExecutor(TaskExecutor): self.numBlocks = 0 self.procBlocks = 0 self.totalSize = 0 - urlListFilePath = os.path.join(self.resDir, self.urlListFileName) - try: - os.remove(urlListFilePath) - except OSError: - self.logger.exception(f"FATAL: unable to remove {self.urlListFileName}") - try: - os.remove(urlListFilePath + ".tar.gz") - except OSError: - self.logger.exception(f"FATAL: unable to remove {self.urlListFileName}.tar.gz") - self.urlListFileName = None + + # If an error occurs, the variable is None: just ignore it (the URL list is not generated) + if self.urlListFileName is not None: + urlListFilePath = os.path.join(self.resDir, self.urlListFileName) + try: + os.remove(urlListFilePath) + except OSError: + self.logger.exception(f"FATAL: unable to remove {self.urlListFileName}") + try: + os.remove(urlListFilePath + ".tar.gz") + except OSError: + self.logger.exception(f"FATAL: unable to remove {self.urlListFileName}.tar.gz") + self.urlListFileName = None def run(self): self.logger.info("Starting retrieve executor...")