Jon created JENA-2074:
-------------------------
Summary: Jetty crash when returning badly formed URIrefs as
RDF/XML
Key: JENA-2074
URL: https://issues.apache.org/jira/browse/JENA-2074
Project: Apache Jena
Issue Type: Bug
Components: Fuseki
Affects Versions: Jena 3.17.0, Jena 4.0.0
Reporter: Jon
If the data loaded into jena contains some badly-formed absolute URIrefs as the
object of some triples (eg.
</tmp/release/crawl/2021/02/19/page.1g2y60c-x43zpnt82fv>)..
then:
- when I query passing header "Accept: application/sparql-results+xml" the
results come back the same as was loaded.
- when I query passing header "Accept: application/n-triples" the results come
back the same as was loaded.
- when I query passing header "Accept: application/rdf+xml" fuseki logs the
following exception:
{code:java}
13:09:11 ERROR Fuseki :: Internal error
java.lang.IllegalArgumentException: setContentLength(267) when already written
8192
at
org.eclipse.jetty.server.Response.setContentLength(Response.java:823)
~[fuseki-server.jar:3.17.0]
at
javax.servlet.ServletResponseWrapper.setContentLength(ServletResponseWrapper.java:161)
~[fuseki-server.jar:3.17.0]
at
org.apache.jena.fuseki.servlets.HttpServletResponseTracker.setContentLength(HttpServletResponseTracker.java:87)
~[fuseki-server.jar:3.17.0]
at
org.apache.jena.fuseki.servlets.ServletOps.writeMessagePlainText(ServletOps.java:73)
~[fuseki-server.jar:3.17.0]
at
org.apache.jena.fuseki.servlets.ServletOps.writeMessagePlainTextError(ServletOps.java:86)
~[fuseki-server.jar:3.17.0]
at
org.apache.jena.fuseki.servlets.ServletOps.responseSendError(ServletOps.java:55)
~[fuseki-server.jar:3.17.0]
at
org.apache.jena.fuseki.servlets.ActionExecLib.execAction(ActionExecLib.java:120)
~[fuseki-server.jar:3.17.0]
at
org.apache.jena.fuseki.server.Dispatcher.dispatchAction(Dispatcher.java:118)
~[fuseki-server.jar:3.17.0]
at
org.apache.jena.fuseki.server.Dispatcher.process(Dispatcher.java:110)
~[fuseki-server.jar:3.17.0]
at
org.apache.jena.fuseki.server.Dispatcher.dispatch(Dispatcher.java:96)
~[fuseki-server.jar:3.17.0]
at
org.apache.jena.fuseki.servlets.FusekiFilter.doFilter(FusekiFilter.java:51)
~[fuseki-server.jar:3.17.0]
at
org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193)
~[fuseki-server.jar:3.17.0]
at
org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601)
~[fuseki-server.jar:3.17.0]
at
org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:61)
~[fuseki-server.jar:3.17.0]
at
org.apache.shiro.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:108)
~[fuseki-server.jar:3.17.0]
at
org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:137)
~[fuseki-server.jar:3.17.0]
at
org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)
~[fuseki-server.jar:3.17.0]
at
org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:66)
~[fuseki-server.jar:3.17.0]
at
org.apache.shiro.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:108)
~[fuseki-server.jar:3.17.0]
at
org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:137)
~[fuseki-server.jar:3.17.0]
at
org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)
~[fuseki-server.jar:3.17.0]
at
org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:66)
~[fuseki-server.jar:3.17.0]
at
org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:450)
~[fuseki-server.jar:3.17.0]
at
org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:365)
~[fuseki-server.jar:3.17.0]
at
org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90)
~[fuseki-server.jar:3.17.0]
at
org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83)
~[fuseki-server.jar:3.17.0]
at
org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:387)
~[fuseki-server.jar:3.17.0]
at
org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:362)
~[fuseki-server.jar:3.17.0]
at
org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)
~[fuseki-server.jar:3.17.0]
at
org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193)
~[fuseki-server.jar:3.17.0]
at
org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601)
~[fuseki-server.jar:3.17.0]
at
org.apache.jena.fuseki.servlets.CrossOriginFilter.handle(CrossOriginFilter.java:284)
~[fuseki-server.jar:3.17.0]
at
org.apache.jena.fuseki.servlets.CrossOriginFilter.doFilter(CrossOriginFilter.java:247)
~[fuseki-server.jar:3.17.0]
at
org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:201)
~[fuseki-server.jar:3.17.0]
at
org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601)
~[fuseki-server.jar:3.17.0]
at
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:548)
~[fuseki-server.jar:3.17.0]
at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
~[fuseki-server.jar:3.17.0]
at
org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:602)
~[fuseki-server.jar:3.17.0]
at
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)
~[fuseki-server.jar:3.17.0]
at
org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:235)
~[fuseki-server.jar:3.17.0]
at
org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1612)
~[fuseki-server.jar:3.17.0]
at
org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233)
~[fuseki-server.jar:3.17.0]
at
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1434)
~[fuseki-server.jar:3.17.0]
at
org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188)
~[fuseki-server.jar:3.17.0]
at
org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:501)
~[fuseki-server.jar:3.17.0]
at
org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1582)
~[fuseki-server.jar:3.17.0]
at
org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186)
~[fuseki-server.jar:3.17.0]
at
org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1349)
~[fuseki-server.jar:3.17.0]
at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
~[fuseki-server.jar:3.17.0]
at
org.eclipse.jetty.server.handler.gzip.GzipHandler.handle(GzipHandler.java:766)
~[fuseki-server.jar:3.17.0]
at
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)
~[fuseki-server.jar:3.17.0]
at org.eclipse.jetty.server.Server.handle(Server.java:516)
~[fuseki-server.jar:3.17.0]
at
org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:383)
~[fuseki-server.jar:3.17.0]
at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:556)
[fuseki-server.jar:3.17.0]
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:375)
[fuseki-server.jar:3.17.0]
at
org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:273)
[fuseki-server.jar:3.17.0]
at
org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311)
[fuseki-server.jar:3.17.0]
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105)
[fuseki-server.jar:3.17.0]
at org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104)
[fuseki-server.jar:3.17.0]
at
org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:773)
[fuseki-server.jar:3.17.0]
at
org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:905)
[fuseki-server.jar:3.17.0]
at java.lang.Thread.run(Thread.java:834) [?:?]
{code}
.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)