Hi Cristóbal,

What's the query and which version of jena is this?

    Andy

On 28/07/2021 19:39, Cristóbal Miranda wrote:
Hello everyone,

I'm trying to run a sequence of queries with TDB, using a
locally loaded dataset. I don't want to wait more than a few
seconds for each query to finish. My attempt to do this looks like
the following:


try {
   RDFConnection rdfConnection = RDFConnectionFactory.connect(dataset);
   QueryExecution queryExecution = rdfConnection.query(query);
   queryExecution.setTimeout(timeoutMilliseconds);
   ResultSet resultSet = queryExecution.execSelect();
   while (resultSet.hasNext()) {
     QuerySolution querySolution = resultSet.next();
     ...
   }
} catch (QueryCancelledException e) {
    ...
}


The problem is that this is not working. With htop I see that
the process gets stuck in disk operations. One of the queries
took about 2 hours with the code above. An idea would
be trying to run this in a new thread and stopping the thread outside once
the timeout is reached, but I'm almost sure this wouldn't be a safe
way to stop the processing, even if it worked.

Is there a better way to do this?

Cristobal

Reply via email to