You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@helix.apache.org by "Hudson (JIRA)" <ji...@apache.org> on 2018/07/17 22:36:00 UTC

[jira] [Commented] (HELIX-735) Make AssignmentCalculators non-static so that tests pass

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

Hudson commented on HELIX-735:
------------------------------

FAILURE: Integrated in Jenkins build helix #1515 (See [https://builds.apache.org/job/helix/1515/])
[HELIX-735] Make AssignmentCalculators non-static so that tests pass (narendly: rev cc625065bffced9a66566eeccb3055ec28a74611)
* (edit) helix-core/src/main/java/org/apache/helix/task/JobRebalancer.java
* (edit) helix-core/src/test/java/org/apache/helix/integration/task/TestQuotaBasedScheduling.java
* (edit) helix-core/src/test/java/org/apache/helix/task/TestAssignableInstanceManagerControllerSwitch.java
* (edit) helix-core/src/test/java/org/apache/helix/integration/task/TestTaskThrottling.java


> Make AssignmentCalculators non-static so that tests pass
> --------------------------------------------------------
>
>                 Key: HELIX-735
>                 URL: https://issues.apache.org/jira/browse/HELIX-735
>             Project: Apache Helix
>          Issue Type: Improvement
>            Reporter: Hunter L
>            Priority: Major
>
> With the introduction of quota-based scheduling, every task that gets scheduled takes up a thread. However, previously these AssignmentCalculators (both generic and fixed for generic jobs and targeted jobs) were stateless so they were instantiated statically. Since AssignmentCalculators now are stateful due to them operating on AssignableInstances' quota profile, they were made non-static so that they would be re-instantiated every pipeline.
> This problem is specific to the testing environment where static variables live on from test to test, causing AssignmentCalculators to hold on to the very first reference to AssignableInstanceManager. Tasks were not being assigned and scheduled because the first set of AssignableInstances would get filled up and never get freed.
> Changelist:
> 1. Make AssignmentCalculators non-static
> 2. Adjust sleep duration for some tests for stability



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