From 6927feb8064d33b38100b98d62201aa3c8d708cb Mon Sep 17 00:00:00 2001 From: Diane Trout Date: Mon, 10 Sep 2012 14:15:32 -0700 Subject: [PATCH] Allow retrying retrieving rdf from website a few times. --- htsworkflow/util/rdfhelp.py | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/htsworkflow/util/rdfhelp.py b/htsworkflow/util/rdfhelp.py index b95d1ff..7f8902a 100644 --- a/htsworkflow/util/rdfhelp.py +++ b/htsworkflow/util/rdfhelp.py @@ -276,7 +276,18 @@ def load_into_model(model, parser_name, path, ns=None): logger.info("Opening {0} with parser {1}".format(url, parser_name)) rdf_parser = RDF.Parser(name=parser_name) - for s in rdf_parser.parse_as_stream(url, ns): + + retries = 3 + while retries > 0: + try: + retries -= 1 + statements = rdf_parser.parse_as_stream(url, ns) + retries = 0 + except RDF.RedlandError, e: + errmsg = "RDF.RedlandError: {0} {1} tries remaining" + logger.error(errmsg.format(str(e), tries)) + + for s in statements: conditionally_add_statement(model, s, ns) def load_string_into_model(model, parser_name, data, ns=None): -- 2.30.2