[ 
https://issues.apache.org/jira/browse/KYLIN-4305?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17123373#comment-17123373
 ] 

ASF GitHub Bot commented on KYLIN-4305:
---------------------------------------

codecov-commenter commented on pull request #1239:
URL: https://github.com/apache/kylin/pull/1239#issuecomment-637300033


   # [Codecov](https://codecov.io/gh/apache/kylin/pull/1239?src=pr&el=h1) Report
   > Merging 
[#1239](https://codecov.io/gh/apache/kylin/pull/1239?src=pr&el=desc) into 
[master](https://codecov.io/gh/apache/kylin/commit/ed7658d87104c9ab365062cbfed239341d33aa2b&el=desc)
 will **decrease** coverage by `0.00%`.
   > The diff coverage is `36.04%`.
   
   [![Impacted file tree 
graph](https://codecov.io/gh/apache/kylin/pull/1239/graphs/tree.svg?width=650&height=150&src=pr&token=JawVgbgsVo)](https://codecov.io/gh/apache/kylin/pull/1239?src=pr&el=tree)
   
   ```diff
   @@             Coverage Diff              @@
   ##             master    #1239      +/-   ##
   ============================================
   - Coverage     25.77%   25.76%   -0.01%     
   - Complexity     6621     6624       +3     
   ============================================
     Files          1482     1482              
     Lines         90949    90999      +50     
     Branches      12687    12700      +13     
   ============================================
   + Hits          23443    23447       +4     
   - Misses        65213    65251      +38     
   - Partials       2293     2301       +8     
   ```
   
   
   | [Impacted 
Files](https://codecov.io/gh/apache/kylin/pull/1239?src=pr&el=tree) | Coverage 
Δ | Complexity Δ | |
   |---|---|---|---|
   | 
[.../apache/kylin/rest/service/StreamingV2Service.java](https://codecov.io/gh/apache/kylin/pull/1239/diff?src=pr&el=tree#diff-c2VydmVyLWJhc2Uvc3JjL21haW4vamF2YS9vcmcvYXBhY2hlL2t5bGluL3Jlc3Qvc2VydmljZS9TdHJlYW1pbmdWMlNlcnZpY2UuamF2YQ==)
 | `0.00% <0.00%> (ø)` | `0.00 <0.00> (ø)` | |
   | 
[...storage/stream/rpc/HttpStreamDataSearchClient.java](https://codecov.io/gh/apache/kylin/pull/1239/diff?src=pr&el=tree#diff-c3RvcmFnZS1zdHJlYW0vc3JjL21haW4vamF2YS9vcmcvYXBhY2hlL2t5bGluL3N0b3JhZ2Uvc3RyZWFtL3JwYy9IdHRwU3RyZWFtRGF0YVNlYXJjaENsaWVudC5qYXZh)
 | `0.00% <0.00%> (ø)` | `0.00 <0.00> (ø)` | |
   | 
[...rg/apache/kylin/stream/core/model/DataRequest.java](https://codecov.io/gh/apache/kylin/pull/1239/diff?src=pr&el=tree#diff-c3RyZWFtLWNvcmUvc3JjL21haW4vamF2YS9vcmcvYXBhY2hlL2t5bGluL3N0cmVhbS9jb3JlL21vZGVsL0RhdGFSZXF1ZXN0LmphdmE=)
 | `0.00% <0.00%> (ø)` | `0.00 <0.00> (ø)` | |
   | 
[.../stream/server/rest/controller/DataController.java](https://codecov.io/gh/apache/kylin/pull/1239/diff?src=pr&el=tree#diff-c3RyZWFtLXJlY2VpdmVyL3NyYy9tYWluL2phdmEvb3JnL2FwYWNoZS9reWxpbi9zdHJlYW0vc2VydmVyL3Jlc3QvY29udHJvbGxlci9EYXRhQ29udHJvbGxlci5qYXZh)
 | `0.00% <0.00%> (ø)` | `0.00 <0.00> (ø)` | |
   | 
[.../java/org/apache/kylin/common/KylinConfigBase.java](https://codecov.io/gh/apache/kylin/pull/1239/diff?src=pr&el=tree#diff-Y29yZS1jb21tb24vc3JjL21haW4vamF2YS9vcmcvYXBhY2hlL2t5bGluL2NvbW1vbi9LeWxpbkNvbmZpZ0Jhc2UuamF2YQ==)
 | `11.70% <20.00%> (+0.08%)` | `44.00 <0.00> (ø)` | |
   | 
[...n/stream/core/query/StreamingCubeDataSearcher.java](https://codecov.io/gh/apache/kylin/pull/1239/diff?src=pr&el=tree#diff-c3RyZWFtLWNvcmUvc3JjL21haW4vamF2YS9vcmcvYXBhY2hlL2t5bGluL3N0cmVhbS9jb3JlL3F1ZXJ5L1N0cmVhbWluZ0N1YmVEYXRhU2VhcmNoZXIuamF2YQ==)
 | `41.33% <28.57%> (-3.74%)` | `6.00 <0.00> (ø)` | |
   | 
[...ylin/stream/core/query/StreamingSearchContext.java](https://codecov.io/gh/apache/kylin/pull/1239/diff?src=pr&el=tree#diff-c3RyZWFtLWNvcmUvc3JjL21haW4vamF2YS9vcmcvYXBhY2hlL2t5bGluL3N0cmVhbS9jb3JlL3F1ZXJ5L1N0cmVhbWluZ1NlYXJjaENvbnRleHQuamF2YQ==)
 | `79.03% <50.00%> (-2.01%)` | `20.00 <2.00> (+1.00)` | :arrow_down: |
   | 
[...stream/core/query/MultiThreadsResultCollector.java](https://codecov.io/gh/apache/kylin/pull/1239/diff?src=pr&el=tree#diff-c3RyZWFtLWNvcmUvc3JjL21haW4vamF2YS9vcmcvYXBhY2hlL2t5bGluL3N0cmVhbS9jb3JlL3F1ZXJ5L011bHRpVGhyZWFkc1Jlc3VsdENvbGxlY3Rvci5qYXZh)
 | `66.66% <54.16%> (-9.81%)` | `4.00 <2.00> (+1.00)` | :arrow_down: |
   | 
[...g/apache/kylin/metrics/lib/impl/MetricsSystem.java](https://codecov.io/gh/apache/kylin/pull/1239/diff?src=pr&el=tree#diff-Y29yZS1tZXRyaWNzL3NyYy9tYWluL2phdmEvb3JnL2FwYWNoZS9reWxpbi9tZXRyaWNzL2xpYi9pbXBsL01ldHJpY3NTeXN0ZW0uamF2YQ==)
 | `61.66% <0.00%> (-6.67%)` | `17.00% <0.00%> (ø%)` | |
   | 
[...he/kylin/job/impl/threadpool/DefaultScheduler.java](https://codecov.io/gh/apache/kylin/pull/1239/diff?src=pr&el=tree#diff-Y29yZS1qb2Ivc3JjL21haW4vamF2YS9vcmcvYXBhY2hlL2t5bGluL2pvYi9pbXBsL3RocmVhZHBvb2wvRGVmYXVsdFNjaGVkdWxlci5qYXZh)
 | `74.41% <0.00%> (-2.33%)` | `12.00% <0.00%> (ø%)` | |
   | ... and [2 
more](https://codecov.io/gh/apache/kylin/pull/1239/diff?src=pr&el=tree-more) | |
   
   ------
   
   [Continue to review full report at 
Codecov](https://codecov.io/gh/apache/kylin/pull/1239?src=pr&el=continue).
   > **Legend** - [Click here to learn 
more](https://docs.codecov.io/docs/codecov-delta)
   > `Δ = absolute <relative> (impact)`, `ø = not affected`, `? = missing data`
   > Powered by 
[Codecov](https://codecov.io/gh/apache/kylin/pull/1239?src=pr&el=footer). Last 
update 
[ed7658d...68f0fab](https://codecov.io/gh/apache/kylin/pull/1239?src=pr&el=lastupdated).
 Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments).
   


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


> Streaming Receiver cannot limit income query request or cancel long-running 
> query
> ---------------------------------------------------------------------------------
>
>                 Key: KYLIN-4305
>                 URL: https://issues.apache.org/jira/browse/KYLIN-4305
>             Project: Kylin
>          Issue Type: Improvement
>          Components: Real-time Streaming
>            Reporter: Xiaoxiang Yu
>            Assignee: Xiaoxiang Yu
>            Priority: Major
>             Fix For: v3.1.0
>
>         Attachments: Jietu20191217-221025.png, after_repair_receiver.jstack, 
> image-2019-12-17-22-12-01-098.png, streaming_receiver_jstack.log
>
>
> When under heavy load(high rate of query request), receiver can not stand it, 
> and most quey may timeout, but the query processing thread cannot be 
> cancelled in receiver side, which will cause receiver's crash. You have to 
> restart it.
> kylin.log
> {code:java}
> Caused by: java.lang.RuntimeException: timeout when call stream rpc
>       at 
> org.apache.kylin.storage.stream.rpc.HttpStreamDataSearchClient$QueuedStreamingTupleIterator.hasNext(HttpStreamDataSearchClient.java:298)
>       at com.google.common.collect.Iterators$5.hasNext(Iterators.java:596)
>       at 
> org.apache.kylin.metadata.tuple.CompoundTupleIterator.hasNext(CompoundTupleIterator.java:52)
>       at 
> org.apache.kylin.query.enumerator.OLAPEnumerator.moveNext(OLAPEnumerator.java:63)
>       at Baz$1$1.moveNext(Unknown Source)
>       at 
> org.apache.calcite.linq4j.EnumerableDefaults.groupBy_(EnumerableDefaults.java:825)
>       at 
> org.apache.calcite.linq4j.EnumerableDefaults.groupBy(EnumerableDefaults.java:761)
>       at 
> org.apache.calcite.linq4j.DefaultEnumerable.groupBy(DefaultEnumerable.java:302)
>       at Baz.bind(Unknown Source)
>       at 
> org.apache.calcite.jdbc.CalcitePrepare$CalciteSignature.enumerable(CalcitePrepare.java:365)
>       at 
> org.apache.calcite.jdbc.CalciteConnectionImpl.enumerable(CalciteConnectionImpl.java:301)
>       at 
> org.apache.calcite.jdbc.CalciteMetaImpl._createIterable(CalciteMetaImpl.java:559)
>       at 
> org.apache.calcite.jdbc.CalciteMetaImpl.createIterable(CalciteMetaImpl.java:550)
>       at 
> org.apache.calcite.avatica.AvaticaResultSet.execute(AvaticaResultSet.java:182)
>       at 
> org.apache.calcite.jdbc.CalciteResultSet.execute(CalciteResultSet.java:67)
>       at 
> org.apache.calcite.jdbc.CalciteResultSet.execute(CalciteResultSet.java:44)
>       at 
> org.apache.calcite.avatica.AvaticaConnection$1.execute(AvaticaConnection.java:667)
>       at 
> org.apache.calcite.jdbc.CalciteMetaImpl.prepareAndExecute(CalciteMetaImpl.java:619)
>       at 
> org.apache.calcite.avatica.AvaticaConnection.prepareAndExecuteInternal(AvaticaConnection.java:675)
>       at 
> org.apache.calcite.avatica.AvaticaStatement.executeInternal(AvaticaStatement.java:156)
>       ... 83 more
> {code}
> jstack
> {code:java}
> "qtp1901663135-48" #48 prio=5 os_prio=0 tid=0x00007f839995f800 nid=0x3cdd 
> runnable [0x00007f83674fe000]
>    java.lang.Thread.State: RUNNABLE
>       at java.lang.Thread.yield(Native Method)
>       at 
> org.apache.kylin.stream.core.query.MultiThreadsResultCollector$1.hasNext(MultiThreadsResultCollector.java:75)
>       at 
> org.apache.kylin.stream.core.query.RecordsAggregator.aggregate(RecordsAggregator.java:100)
>       at 
> org.apache.kylin.stream.core.query.StreamingCubeDataSearcher$StreamAggregateSearchResult.iterator(StreamingCubeDataSearcher.java:191)
>       at 
> org.apache.kylin.stream.server.rest.controller.DataController.query(DataController.java:119)
>       at sun.reflect.GeneratedMethodAccessor87.invoke(Unknown Source)
>       at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>       at java.lang.reflect.Method.invoke(Method.java:498)
>       at 
> org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)
>       at 
> org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:133)
>       at 
> org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:97)
>       at 
> org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:827)
>       at 
> org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:738)
>       at 
> org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85)
>       at 
> org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:967)
>       at 
> org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:901)
>       at 
> org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
>       at 
> org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:872)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
>       at 
> org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
>       at 
> org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:848)
>       at 
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:584)
>       at 
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1180)
>       at 
> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:512)
>       at 
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1112)
>       at 
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
>       at 
> org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:213)
>       at 
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:134)
>       at org.eclipse.jetty.server.Server.handle(Server.java:534)
>       at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:333)
>       at 
> org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:251)
>       at 
> org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:283)
>       at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:108)
>       at 
> org.eclipse.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:93)
>       at 
> org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.executeProduceConsume(ExecuteProduceConsume.java:303)
>       at 
> org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceConsume(ExecuteProduceConsume.java:148)
>       at 
> org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:136)
>       at 
> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:671)
>       at 
> org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:589)
>       at java.lang.Thread.run(Thread.java:748)
> {code}
> {code}
> [root@cdh-worker-1 apache-kylin-3.0.0-SNAPSHOT-bin]# jstack 15512 | grep 
> org.apache.kylin.stream.core.query.MultiThreadsResultCollector | wc -l
> 81
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to