Skip to content

Commit fa7fb11

Browse files
author
Max Burnette
committed
add PyClowderExtractionAbort exception class
1 parent 4268d74 commit fa7fb11

File tree

1 file changed

+15
-0
lines changed

1 file changed

+15
-0
lines changed

pyclowder/connectors.py

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -478,6 +478,10 @@ def _process_message(self, body):
478478
message = str.format("Error in subprocess [exit code={}]:\n{}", exc.returncode, exc.output)
479479
logger.exception("[%s] %s", resource['id'], message)
480480
self.message_error(resource, message)
481+
except PyClowderExtractionAbort as exc:
482+
message = str.format("Aborting message: {}", exc.message)
483+
logger.exception("[%s] %s", resource['id'], message)
484+
self.message_error(resource, message)
481485
except Exception as exc: # pylint: disable=broad-except
482486
message = str(exc)
483487
logger.exception("[%s] %s", resource['id'], message)
@@ -1099,3 +1103,14 @@ def put(self, url, data=None, raise_status=True, **kwargs):
10991103
def delete(self, url, raise_status=True, **kwargs):
11001104
logging.getLogger(__name__).debug("DELETE: " + url)
11011105
return None
1106+
1107+
1108+
class PyClowderExtractionAbort(Exception):
1109+
"""Raise exception that will not be subject to retry attempts (i.e. errors that are expected to fail again).
1110+
1111+
Attributes:
1112+
message -- explanation of the error
1113+
"""
1114+
1115+
def __init__(self, message):
1116+
self.message = message

0 commit comments

Comments
 (0)