You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@beam.apache.org by "ASF GitHub Bot (JIRA)" <ji...@apache.org> on 2018/03/28 08:21:00 UTC

[jira] [Work logged] (BEAM-3119) direct-metrics-counter-committer threads are leaking

     [ https://issues.apache.org/jira/browse/BEAM-3119?focusedWorklogId=85170&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-85170 ]

ASF GitHub Bot logged work on BEAM-3119:
----------------------------------------

                Author: ASF GitHub Bot
            Created on: 28/Mar/18 08:20
            Start Date: 28/Mar/18 08:20
    Worklog Time Spent: 10m 
      Work Description: rmannibucau opened a new pull request #4965: BEAM-3119 ensure the metrics thread pool is related to an execution
URL: https://github.com/apache/beam/pull/4965
 
 
   metrics pusher thread leaks in direct runner, this PR binds this pool to an execution
   
   IMPORTANT: it depends on  https://github.com/apache/beam/pull/4790 to work
   
   ------------------------
   
   Follow this checklist to help us incorporate your contribution quickly and easily:
   
    - [ ] Make sure there is a [JIRA issue](https://issues.apache.org/jira/projects/BEAM/issues/) filed for the change (usually before you start working on it).  Trivial changes like typos do not require a JIRA issue.  Your pull request should address just this issue, without pulling in other changes.
    - [ ] Format the pull request title like `[BEAM-XXX] Fixes bug in ApproximateQuantiles`, where you replace `BEAM-XXX` with the appropriate JIRA issue.
    - [ ] Write a pull request description that is detailed enough to understand:
      - [ ] What the pull request does
      - [ ] Why it does it
      - [ ] How it does it
      - [ ] Why this approach
    - [ ] Each commit in the pull request should have a meaningful subject line and body.
    - [ ] Run `mvn clean verify` to make sure basic checks pass. A more thorough check will be performed on your pull request automatically.
    - [ ] If this contribution is large, please file an Apache [Individual Contributor License Agreement](https://www.apache.org/licenses/icla.pdf).
   
   

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Issue Time Tracking
-------------------

            Worklog Id:     (was: 85170)
            Time Spent: 10m
    Remaining Estimate: 0h

> direct-metrics-counter-committer threads are leaking
> ----------------------------------------------------
>
>                 Key: BEAM-3119
>                 URL: https://issues.apache.org/jira/browse/BEAM-3119
>             Project: Beam
>          Issue Type: Bug
>          Components: runner-direct
>            Reporter: Etienne Chauchot
>            Assignee: Thomas Groh
>            Priority: Major
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> When I run ElasticsearchIOTests using ESv5, there is a thread leak control mechanism ({{com.carrotsearch.randomizedtesting.ThreadLeakControl}}). It waits for 5s for non-terminated threads at the end of a test. It detects leaked {{direct-metrics-counter-committer}} thread.
> {code}
> com.carrotsearch.randomizedtesting.ThreadLeakError: There are still zombie threads that couldn't be terminated:
>    1) Thread[id=296, name=direct-metrics-counter-committer, state=TIMED_WAITING, group=TGRP-ElasticsearchIOTest]
>         at sun.misc.Unsafe.park(Native Method)
>         at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
>         at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)
>         at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:362)
>         at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:941)
>         at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1066)
>         at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
>         at java.lang.Thread.run(Thread.java:745)
> 	at __randomizedtesting.SeedInfo.seed([59E504CA1B0DD6A8]:0){code}
> I tried to increase the timeout to 30s (by patching randomizedtesting-runner-2.5.0.jar) but still gets a zombie thread.
> To reproduce, just comment 
> {code}
> @ThreadLeakScope(ThreadLeakScope.Scope.NONE)
> {code}
>  in 
> {code}
> beam/sdks/java/io/elasticsearch-tests/elasticsearch-tests-5/src/test/java/org/apache/beam/sdk/io/elasticsearch/ElasticsearchIOTest.java
> {code}
> and run 
> {code}
> testRead()
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)