usc-isi-i2 / Web-Karma

Information Integration Tool

Home Page:http://www.isi.edu/integration/karma/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

jetty server: karma not able to talk to cleaning service properly

danishc opened this issue · comments

related code line:

<jettyVersion>9.4.43.v20210629</jettyVersion>

replacing it with 9.4.8.v20171121 version works but the version has vulnerabilities
https://mvnrepository.com/artifact/org.eclipse.jetty/jetty-server/9.4.8.v20171121

while loading a csv file from karma GUI the WorksheetCleaningUpdate command is not able to talk to Cleaning Service properly.
However, if the service is accessed using localhost:8080/cleaningService/IdentifyData?json={JSON_STRING} directly it works fine for short json strings but not for longer text.

To Reproduce
Steps to reproduce the behavior:

  1. Compile the source code of the Karma master branch
  2. run the kama using from karma-web directory using jetty on localhost
  3. load a CSV file
  4. see the error in the terminal

Expected behavior
there should not be any error related to cleaning a valid json object

Screenshots
ERROR StatusLogger Reconfiguration failed: No configuration found for '46a795de' at 'null' in 'null' [WARNING] java.lang.IllegalStateException: Form is larger than max length 0 org.eclipse.jetty.http.BadMessageException: 400: Unable to parse form content at org.eclipse.jetty.server.Request.getParameters(Request.java:439) at org.eclipse.jetty.server.Request.getParameter(Request.java:1075) at IdentifyData.doGet(IdentifyData.java:435) at IdentifyData.doPost(IdentifyData.java:759) at javax.servlet.http.HttpServlet.service(HttpServlet.java:707) at javax.servlet.http.HttpServlet.service(HttpServlet.java:790) at org.eclipse.jetty.servlet.ServletHolder$NotAsync.service(ServletHolder.java:1450) at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:799) at org.eclipse.jetty.servlet.ServletHandler$ChainEnd.doFilter(ServletHandler.java:1626) at org.eclipse.jetty.websocket.server.WebSocketUpgradeFilter.doFilter(WebSocketUpgradeFilter.java:228) at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193) at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:548) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:602) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127) at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:235) at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1624) at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1434) at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:501) at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1594) at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186) at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1349) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:234) at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:146) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127) at org.eclipse.jetty.server.Server.handle(Server.java:516) at org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:388) at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:633) at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:380) at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:277) at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311) at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105) at org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:338) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:315) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:173) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:131) at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:386) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:883) at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1034) at java.base/java.lang.Thread.run(Thread.java:829) Caused by: java.lang.IllegalStateException: Form is larger than max length 0 at org.eclipse.jetty.server.Request.extractFormParameters(Request.java:576) at org.eclipse.jetty.server.Request.extractContentParameters(Request.java:531) at org.eclipse.jetty.server.Request.getParameters(Request.java:434) ... 44 more ERROR [2022-02-02 22:03:20,911] (WorksheetCleaningUpdate->generateJson->163): Error occured with cleaning service for HNode:

Desktop (please complete the following information):

  • OS: ubuntu
  • Browser chrome
  • Version latest

This issue doesnt happen if tomcat server is used for deployment. All available versions of Jetty server seems to have issues with connecting to cleaning service or cluster service.