java.lang.Throwable | 2 months ago
  1. 0

    Lucee freezes on 2 Ubuntu 14.04 systems

    Google Groups | 4 months ago | Arc Net
  2. 0

    RDF will sometimes get stuck responding to a query, and it will never respond to a query again. The remedy is to restart tomcat. If nobody queries this RDF excessively, then DSpace/RDF will be stable endlessly. However, too much, or too hard of a query will cause RDF to get stuck. To benchmark, I setup jmeter to hit: Header: Accept: application/rdf+xml, application/xhtml+xml;q=0.3, text/xml;q=0.2, application/xml;q=0.2, text/html;q=0.3, text/plain;q=0.1, text/n3, text/rdf+n3;q=0.5, application/x-turtle;q=0.2, text/turtle;q=1 5 threads, loop count forever. It seemed to be fine for a long while, and then extreme failure. sample times (s): 2.4, 2.5, 2.4, 832 (fail, 503), 833 (fail, 503), 834 (fail, 503), ..., 857 (success), 858 (success), 858 (success), 859 (success), 1800 (Apache timeout), 2100 (apache timeout), 2100 (apache web timeout)... I also ran /dspace/bin/dspace rdfizer -c -o -v concurrently To detect stuck threads, I altered my tomcat context for RDF, to add valve StuckThreadDetectionValve. <?xml version="1.0" encoding="UTF-8"?> <Context docBase="/dspace/webapps/rdf" privileged="true" antiResourceLocking="false" antiJARLocking="false"> <Valve className="org.apache.catalina.valves.StuckThreadDetectionValve" threshold="70" interruptThreadThreshold="80"/> </Context> These stuck threads then begin logging like crazy: 22-Aug-2016 14:10:47.688 WARNING [ContainerBackgroundProcessor[StandardEngine[Catalina]]] org.apache.catalina.valves.StuckThreadDetectionValve$MonitoredThread.interruptIfStuck Thread "ajp-nio-8009-exec-24" (id=101) h as been interrupted because it was active for 2,308,500 milliseconds (since 8/22/16 1:32 PM) to serve the same request for and was probably stuck (configu red interruption threshold for this StuckThreadDetectionValve is 80 seconds). java.lang.Throwable at Method) at at at at at at at org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead( at org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead( at at org.apache.http.impl.AbstractHttpClientConnection.receiveResponseHeader( at org.apache.http.impl.conn.DefaultClientConnection.receiveResponseHeader( at org.apache.http.impl.conn.ManagedClientConnectionImpl.receiveResponseHeader( at org.apache.http.protocol.HttpRequestExecutor.doReceiveResponse( at org.apache.http.protocol.HttpRequestExecutor.execute( at org.apache.http.impl.client.DefaultRequestDirector.tryExecute( at org.apache.http.impl.client.DefaultRequestDirector.execute( at org.apache.http.impl.client.AbstractHttpClient.doExecute( at org.apache.http.impl.client.CloseableHttpClient.execute( at org.apache.http.impl.client.CloseableHttpClient.execute( at org.apache.jena.riot.web.HttpOp.exec( at org.apache.jena.riot.web.HttpOp.execHttpGet( at org.apache.jena.riot.web.HttpOp.execHttpGet( at org.apache.jena.web.DatasetGraphAccessorHTTP.doGet( at org.apache.jena.web.DatasetGraphAccessorHTTP.httpGet( at at org.dspace.rdf.RDFUtil.loadModel( at org.dspace.rdf.providing.DataProviderServlet.serveNamedGraph( at org.dspace.rdf.providing.DataProviderServlet.processRequest( at org.dspace.rdf.providing.DataProviderServlet.doGet( Running DSpace 5.x, using the built in sesame triple store. I also happened to note that Sesame has been renamed to RDF4J, and it appears that they have just had their FIRST release of RDF4J (since the change from open rdf sesame), just this past week: I think a solution that we need is to set a timeout, for max request time: Otherwise, if the triplestore gets hung up, DSpace will wait forever, endless loop?

    Sakai JIRA | 2 months ago | Peter Dietz
  3. Speed up your debug routine!

    Automated exception search integrated into your IDE

    1 unregistered visitors
    Not finding the right solution?
    Take a tour to get the most out of Samebug.

    Tired of useless tips?

    Automated exception search integrated into your IDE

    Root Cause Analysis

    1. java.lang.Throwable

      No message provided

    2. Java RT
      1. Method)
      4 frames
    3. PostgreSQL JDBC Driver
      1. org.postgresql.core.VisibleBufferedInputStream.readMore(
      2. org.postgresql.core.VisibleBufferedInputStream.ensureBytes(
      4. org.postgresql.core.PGStream.ReceiveChar(
      5. org.postgresql.core.v3.QueryExecutorImpl.processResults(
      6. org.postgresql.core.v3.QueryExecutorImpl.execute(
      7. org.postgresql.jdbc2.AbstractJdbc2Statement.execute(
      8. org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(
      9. org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(
      9 frames
    4. Apache Commons DBCP
      1. org.apache.commons.dbcp2.DelegatingPreparedStatement.executeQuery(
      1 frame
    5. blackboard.db.impl
      1. blackboard.db.impl.MonitoringConnectionPool$SQLRecorder.execute(
      2. blackboard.db.impl.MonitoringConnectionPool$MonitoringPreparedStatement.executeQuery(
      2 frames
    6. Apache Commons DBCP
      1. org.apache.commons.dbcp2.DelegatingPreparedStatement.executeQuery(
      2. org.apache.commons.dbcp2.DelegatingPreparedStatement.executeQuery(
      2 frames
    7. blackboard.db.impl
      1. blackboard.db.impl.SafetyNetPreparedStatement.executeQuery(
      1 frame
    8. blackboard.persist.impl
      1. blackboard.persist.impl.JdbcQueryHelper.executeQuery(
      1 frame