You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jena.apache.org by an...@apache.org on 2011/11/13 14:52:47 UTC
svn commit: r1201426 -
/incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/servlets/SPARQL_ServletBase.java
Author: andy
Date: Sun Nov 13 13:52:47 2011
New Revision: 1201426
URL: http://svn.apache.org/viewvc?rev=1201426&view=rev
Log:
JENA-158 : Catch query timeout.
Modified:
incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/servlets/SPARQL_ServletBase.java
Modified: incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/servlets/SPARQL_ServletBase.java
URL: http://svn.apache.org/viewvc/incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/servlets/SPARQL_ServletBase.java?rev=1201426&r1=1201425&r2=1201426&view=diff
==============================================================================
--- incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/servlets/SPARQL_ServletBase.java (original)
+++ incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/servlets/SPARQL_ServletBase.java Sun Nov 13 13:52:47 2011
@@ -39,6 +39,8 @@ import org.openjena.fuseki.server.Datase
import org.openjena.fuseki.server.DatasetRef ;
import org.slf4j.Logger ;
+import com.hp.hpl.jena.query.ARQ;
+import com.hp.hpl.jena.query.QueryCancelledException;
import com.hp.hpl.jena.query.QueryParseException ;
import com.hp.hpl.jena.sparql.core.DatasetGraph ;
@@ -94,11 +96,16 @@ public abstract class SPARQL_ServletBase
}
perform(id, dsg, request, response) ;
//serverlog.info(String.format("[%d] 200 Success", id)) ;
+ } catch (QueryCancelledException ex)
+ {
+ String message = String.format("The query timed out after %sms.", ARQ.getContext().get(ARQ.queryTimeout));
+ responseSendError(response, HttpSC.SERVICE_UNAVAILABLE_503, message);
+ // Log message done by printResponse in a moment.
} catch (ActionErrorException ex)
{
if ( ex.exception != null )
ex.exception.printStackTrace(System.err) ;
- // Log mesage done by printResponse in a moment.
+ // Log message done by printResponse in a moment.
if ( ex.message != null )
responseSendError(response, ex.rc, ex.message) ;
else