helix - Build # 1625 - Still Failing

2019-06-24 Thread Apache Jenkins Server
The Apache Jenkins build system has built helix (build #1625)

Status: Still Failing

Check console output at https://builds.apache.org/job/helix/1625/ to view the 
results.

[GitHub] [helix] jackjlli commented on issue #322: java.lang.IllegalStateException: null is thrown when resource is disabled.

2019-06-24 Thread GitBox
jackjlli commented on issue #322: java.lang.IllegalStateException: null is 
thrown when resource is disabled.
URL: https://github.com/apache/helix/issues/322#issuecomment-505184521
 
 
   Great! Thanks for confirming!


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:
us...@infra.apache.org


With regards,
Apache Git Services


[GitHub] [helix] jiajunwang edited a comment on issue #322: java.lang.IllegalStateException: null is thrown when resource is disabled.

2019-06-24 Thread GitBox
jiajunwang edited a comment on issue #322: java.lang.IllegalStateException: 
null is thrown when resource is disabled.
URL: https://github.com/apache/helix/issues/322#issuecomment-505180440
 
 
   Thanks for the information, @jackjlli. So you are more concerned about the 
verbose log, right? We can definitely avoid it. Will remove this stack trace 
when I have time.


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:
us...@infra.apache.org


With regards,
Apache Git Services


[GitHub] [helix] jiajunwang commented on issue #322: java.lang.IllegalStateException: null is thrown when resource is disabled.

2019-06-24 Thread GitBox
jiajunwang commented on issue #322: java.lang.IllegalStateException: null is 
thrown when resource is disabled.
URL: https://github.com/apache/helix/issues/322#issuecomment-505180440
 
 
   Thanks for the information, @jackjlli. So you are more concerned about the 
verbose log, right? We can definitely avoid it.


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:
us...@infra.apache.org


With regards,
Apache Git Services


[GitHub] [helix] jiajunwang commented on issue #323: [HELIX-817] Support for multiple instance group tags for Job config

2019-06-24 Thread GitBox
jiajunwang commented on issue #323: [HELIX-817] Support for multiple instance 
group tags for Job config
URL: https://github.com/apache/helix/issues/323#issuecomment-505162329
 
 
   @DImuthuUpe, by supporting both sides configuration, we definitely cover 
more use cases. I think it's very nice to have feature.
   
   To clarify, the instance config update does not require restarting 
participants.
   
   In addition, I want to better understand your needs. By "dynamically set the 
target instance / group", can you give us some examples of the external metrics 
that you might use?


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:
us...@infra.apache.org


With regards,
Apache Git Services


[GitHub] [helix] DImuthuUpe commented on issue #323: [HELIX-817] Support for multiple instance group tags for Job config

2019-06-24 Thread GitBox
DImuthuUpe commented on issue #323: [HELIX-817] Support for multiple instance 
group tags for Job config
URL: https://github.com/apache/helix/issues/323#issuecomment-505127003
 
 
   @jiajunwang Good question. We can add tags to instances as much as we want. 
But the problem is, is it scalable? I'm not sure whether there is a 
straightforward way to update the instance config tag dynamically with out 
restarting participants. I usually set the tag by calling 
InstanceConfig.addTag(tag). In my use case, I need to dynamically set the 
target instance / group for a job based on some other external metrics. In that 
case it would be easy to manipulate the tags at JobConfig level rather than 
InstanceConfig level. 


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:
us...@infra.apache.org


With regards,
Apache Git Services


[GitHub] [helix] jackjlli commented on issue #322: java.lang.IllegalStateException: null is thrown when resource is disabled.

2019-06-24 Thread GitBox
jackjlli commented on issue #322: java.lang.IllegalStateException: null is 
thrown when resource is disabled.
URL: https://github.com/apache/helix/issues/322#issuecomment-505109075
 
 
   Hi @jiajunwang ,  basically we recently added a resource called 
`leadControllerResource` in Pinot and set the rebalance strategy to 
`CrushEdReBalanceStrategy`. In all the integration test where a local Helix 
cluster is set up we encounter the exception messages. You can easily reproduce 
the exception in some tests like `OfflineClusterIntegrationTest`. Since this 
exception is thrown from Helix thread, is there any way to clean up the 
exception stack trace?


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:
us...@infra.apache.org


With regards,
Apache Git Services


[GitHub] [helix] jiajunwang commented on issue #322: java.lang.IllegalStateException: null is thrown when resource is disabled.

2019-06-24 Thread GitBox
jiajunwang commented on issue #322: java.lang.IllegalStateException: null is 
thrown when resource is disabled.
URL: https://github.com/apache/helix/issues/322#issuecomment-505104174
 
 
   This is an error log. Could you please share the test case? What was 
complained is lacking an eligible instance to use. In this case, the controller 
cannot assign the resource. Cleaning up the exception stack trace will hide the 
detail.


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:
us...@infra.apache.org


With regards,
Apache Git Services


[GitHub] [helix] jiajunwang commented on issue #323: [HELIX-817] Support for multiple instance group tags for Job config

2019-06-24 Thread GitBox
jiajunwang commented on issue #323: [HELIX-817] Support for multiple instance 
group tags for Job config
URL: https://github.com/apache/helix/issues/323#issuecomment-505100927
 
 
   What's the difference between using multiple instance group tags and
   defining a new tag that includes the desired scope?
   The second solution is supported right now and maybe easier to use.
   
   Best Regards,
   Jiajun
   
   
   On Mon, Jun 24, 2019 at 10:10 AM Hunter Lee 
   wrote:
   
   > Currently we can set only one instance group tag for a job.
   >
   > jobCfg.setInstanceGroupTag("INSTANCEGROUPTAG");
   >
   > It will be really helpful to support support multiple instance group tags
   > for one job so that the job can be run either in group A or group B.
   > Through this, we can support more advanced scheduling use cases like in
   > Node Affinity in Kubernetes [1]
   >
   > [1] https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
   >
   > —
   > You are receiving this because you are subscribed to this thread.
   > Reply to this email directly, view it on GitHub
   > 
,
   > or mute the thread
   > 

   > .
   >
   


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:
us...@infra.apache.org


With regards,
Apache Git Services


Re: Multiple instance group tags for Job config

2019-06-24 Thread Hunter Lee
https://github.com/apache/helix/issues/323


On Mon, Jun 24, 2019 at 10:09 AM Hunter Lee  wrote:

> Hi all -
>
> Moving forward, let's use GitHub Issues over JIRA. It is closer to the
> code itself and arguably easier to link to and work with the code. I have
> created an issue based on the JIRA Dimuthu provided for the time being.
>
> Hunter
>
> On Mon, Jun 24, 2019 at 8:56 AM DImuthu Upeksha <
> dimuthu.upeks...@gmail.com> wrote:
>
>> Hi Junkai,
>>
>> Thanks for the quick response. I created the ticket [2] as you have asked.
>>
>> [2]
>>
>> https://issues.apache.org/jira/projects/HELIX/issues/HELIX-817?filter=allopenissues
>>
>> Thanks
>> Dimuthu
>>
>> On Mon, Jun 24, 2019 at 11:34 AM Xue Junkai  wrote:
>>
>> > Hi Dimuthu,
>> >
>> > That's a good feature to support in the future. We dont have plan to
>> > support it right now. Could you please create a Helix ticket for that?
>> >
>> > Best,
>> >
>> > Junkai
>> >
>> > On Mon, Jun 24, 2019 at 7:59 AM DImuthu Upeksha <
>> > dimuthu.upeks...@gmail.com>
>> > wrote:
>> >
>> > > Hi Folks,
>> > >
>> > > Currently we can set only one instance group tag for a job.
>> > >
>> > > jobCfg.setInstanceGroupTag("INSTANCEGROUPTAG");
>> > >
>> > > Do you have anything planned to support multiple instance group tags
>> for
>> > > one job so that the job can be run either in group A or group B? This
>> is
>> > > somewhat similar to Node Affinity [1] concept in Kubernetes.
>> > >
>> > > [1]
>> https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
>> > >
>> > > Thanks
>> > > Dimuthu
>> > >
>> >
>> >
>> > --
>> > Junkai Xue
>> >
>>
>


[GitHub] [helix] narendly opened a new issue #323: [HELIX-817] Support for multiple instance group tags for Job config

2019-06-24 Thread GitBox
narendly opened a new issue #323: [HELIX-817] Support for multiple instance 
group tags for Job config
URL: https://github.com/apache/helix/issues/323
 
 
   Currently we can set only one instance group tag for a job. 

   jobCfg.setInstanceGroupTag("INSTANCEGROUPTAG");

   It will be really helpful to support support multiple instance group tags 
for one job so that the job can be run either in group A or group B. Through 
this, we can support more advanced scheduling use cases like in Node Affinity 
in Kubernetes [1]

   [1] https://kubernetes.io/docs/concepts/configuration/assign-pod-node/


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:
us...@infra.apache.org


With regards,
Apache Git Services


Re: Multiple instance group tags for Job config

2019-06-24 Thread Hunter Lee
Hi all -

Moving forward, let's use GitHub Issues over JIRA. It is closer to the code
itself and arguably easier to link to and work with the code. I have
created an issue based on the JIRA Dimuthu provided for the time being.

Hunter

On Mon, Jun 24, 2019 at 8:56 AM DImuthu Upeksha 
wrote:

> Hi Junkai,
>
> Thanks for the quick response. I created the ticket [2] as you have asked.
>
> [2]
>
> https://issues.apache.org/jira/projects/HELIX/issues/HELIX-817?filter=allopenissues
>
> Thanks
> Dimuthu
>
> On Mon, Jun 24, 2019 at 11:34 AM Xue Junkai  wrote:
>
> > Hi Dimuthu,
> >
> > That's a good feature to support in the future. We dont have plan to
> > support it right now. Could you please create a Helix ticket for that?
> >
> > Best,
> >
> > Junkai
> >
> > On Mon, Jun 24, 2019 at 7:59 AM DImuthu Upeksha <
> > dimuthu.upeks...@gmail.com>
> > wrote:
> >
> > > Hi Folks,
> > >
> > > Currently we can set only one instance group tag for a job.
> > >
> > > jobCfg.setInstanceGroupTag("INSTANCEGROUPTAG");
> > >
> > > Do you have anything planned to support multiple instance group tags
> for
> > > one job so that the job can be run either in group A or group B? This
> is
> > > somewhat similar to Node Affinity [1] concept in Kubernetes.
> > >
> > > [1] https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
> > >
> > > Thanks
> > > Dimuthu
> > >
> >
> >
> > --
> > Junkai Xue
> >
>


[GitHub] [helix] jackjlli opened a new issue #322: java.lang.IllegalStateException: null is thrown when resource is disabled.

2019-06-24 Thread GitBox
jackjlli opened a new issue #322: java.lang.IllegalStateException: null is 
thrown when resource is disabled.
URL: https://github.com/apache/helix/issues/322
 
 
   When CRUSH based rebalance strategy algorithm is used, if the related 
resource isn't enabled yet, Helix will throw `IllegalStateException`. The below 
is an example from one of the integration tests in Pinot code base:
   ```
   2019/06/22 09:05:16.929 WARN [BestPossibleStateCalcStage] 
[HelixController-async_tasks-OfflineClusterIntegrationTest] Event 
aaadf5d1_DEFAULT : Failed to calculate best possible states for 1 resources.
   2019/06/22 09:05:21.954 WARN [AutoRebalancer] 
[HelixController-pipeline-default-OfflineClusterIntegrationTest] Resource 
leadControllerResource has tag controller but no configured participants have 
this tag
   2019/06/22 09:05:21.954 ERROR [CRUSHPlacementAlgorithm] 
[HelixController-pipeline-default-OfflineClusterIntegrationTest] 1 nodes of 
type INSTANCE were requested but the tree has only 0 nodes!
   2019/06/22 09:05:21.955 ERROR [BestPossibleStateCalcStage] 
[HelixController-pipeline-default-OfflineClusterIntegrationTest] Event 
512cdf47_DEFAULT : Error computing assignment for resource 
leadControllerResource. Skipping.
   java.lang.IllegalStateException: null
at 
org.apache.helix.controller.rebalancer.strategy.crushMapping.CRUSHPlacementAlgorithm$Selector.select(CRUSHPlacementAlgorithm.java:308)
 ~[helix-core-0.9.0.jar:0.9.0]
at 
org.apache.helix.controller.rebalancer.strategy.crushMapping.CRUSHPlacementAlgorithm.select(CRUSHPlacementAlgorithm.java:119)
 ~[helix-core-0.9.0.jar:0.9.0]
at 
org.apache.helix.controller.rebalancer.strategy.CrushRebalanceStrategy.doSelect(CrushRebalanceStrategy.java:174)
 ~[helix-core-0.9.0.jar:0.9.0]
at 
org.apache.helix.controller.rebalancer.strategy.CrushRebalanceStrategy.select(CrushRebalanceStrategy.java:140)
 ~[helix-core-0.9.0.jar:0.9.0]
at 
org.apache.helix.controller.rebalancer.strategy.CrushRebalanceStrategy.computePartitionAssignment(CrushRebalanceStrategy.java:92)
 ~[helix-core-0.9.0.jar:0.9.0]
at 
org.apache.helix.controller.rebalancer.strategy.CrushRebalanceStrategy.computePartitionAssignment(CrushRebalanceStrategy.java:48)
 ~[helix-core-0.9.0.jar:0.9.0]
at 
org.apache.helix.controller.rebalancer.strategy.AbstractEvenDistributionRebalanceStrategy.computePartitionAssignment(AbstractEvenDistributionRebalanceStrategy.java:89)
 ~[helix-core-0.9.0.jar:0.9.0]
at 
org.apache.helix.controller.rebalancer.strategy.AbstractEvenDistributionRebalanceStrategy.computePartitionAssignment(AbstractEvenDistributionRebalanceStrategy.java:49)
 ~[helix-core-0.9.0.jar:0.9.0]
at 
org.apache.helix.controller.rebalancer.AutoRebalancer.computeNewIdealState(AutoRebalancer.java:129)
 ~[helix-core-0.9.0.jar:0.9.0]
at 
org.apache.helix.controller.rebalancer.AutoRebalancer.computeNewIdealState(AutoRebalancer.java:51)
 ~[helix-core-0.9.0.jar:0.9.0]
at 
org.apache.helix.controller.stages.BestPossibleStateCalcStage.computeResourceBestPossibleState(BestPossibleStateCalcStage.java:245)
 ~[helix-core-0.9.0.jar:0.9.0]
at 
org.apache.helix.controller.stages.BestPossibleStateCalcStage.compute(BestPossibleStateCalcStage.java:121)
 ~[helix-core-0.9.0.jar:0.9.0]
at 
org.apache.helix.controller.stages.BestPossibleStateCalcStage.process(BestPossibleStateCalcStage.java:77)
 ~[helix-core-0.9.0.jar:0.9.0]
at 
org.apache.helix.controller.pipeline.Pipeline.handle(Pipeline.java:68) 
~[helix-core-0.9.0.jar:0.9.0]
at 
org.apache.helix.controller.GenericHelixController.handleEvent(GenericHelixController.java:640)
 ~[helix-core-0.9.0.jar:0.9.0]
at 
org.apache.helix.controller.GenericHelixController.access$400(GenericHelixController.java:117)
 ~[helix-core-0.9.0.jar:0.9.0]
   ```
This exception should be cleaned up and the behavior should just be the 
same as the default rebalance strategy.
   
   Related Pinot issue: https://github.com/apache/incubator-pinot/issues/4355


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:
us...@infra.apache.org


With regards,
Apache Git Services


Re: Multiple instance group tags for Job config

2019-06-24 Thread DImuthu Upeksha
Hi Junkai,

Thanks for the quick response. I created the ticket [2] as you have asked.

[2]
https://issues.apache.org/jira/projects/HELIX/issues/HELIX-817?filter=allopenissues

Thanks
Dimuthu

On Mon, Jun 24, 2019 at 11:34 AM Xue Junkai  wrote:

> Hi Dimuthu,
>
> That's a good feature to support in the future. We dont have plan to
> support it right now. Could you please create a Helix ticket for that?
>
> Best,
>
> Junkai
>
> On Mon, Jun 24, 2019 at 7:59 AM DImuthu Upeksha <
> dimuthu.upeks...@gmail.com>
> wrote:
>
> > Hi Folks,
> >
> > Currently we can set only one instance group tag for a job.
> >
> > jobCfg.setInstanceGroupTag("INSTANCEGROUPTAG");
> >
> > Do you have anything planned to support multiple instance group tags for
> > one job so that the job can be run either in group A or group B? This is
> > somewhat similar to Node Affinity [1] concept in Kubernetes.
> >
> > [1] https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
> >
> > Thanks
> > Dimuthu
> >
>
>
> --
> Junkai Xue
>


[jira] [Created] (HELIX-817) Support for multiple instance group tags for Job config

2019-06-24 Thread Dimuthu Upeksha (JIRA)
Dimuthu Upeksha created HELIX-817:
-

 Summary: Support for multiple instance group tags for Job config
 Key: HELIX-817
 URL: https://issues.apache.org/jira/browse/HELIX-817
 Project: Apache Helix
  Issue Type: New Feature
  Components: helix-core
Affects Versions: 0.8.x
Reporter: Dimuthu Upeksha


Currently we can set only one instance group tag for a job. 
 
jobCfg.setInstanceGroupTag("INSTANCEGROUPTAG");
 
It will be really helpful to support support multiple instance group tags for 
one job so that the job can be run either in group A or group B. Through this, 
we can support more advanced scheduling use cases like in Node Affinity in 
Kubernetes [1]
 
[1] [https://kubernetes.io/docs/concepts/configuration/assign-pod-node/]



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


Re: Multiple instance group tags for Job config

2019-06-24 Thread Xue Junkai
Hi Dimuthu,

That's a good feature to support in the future. We dont have plan to
support it right now. Could you please create a Helix ticket for that?

Best,

Junkai

On Mon, Jun 24, 2019 at 7:59 AM DImuthu Upeksha 
wrote:

> Hi Folks,
>
> Currently we can set only one instance group tag for a job.
>
> jobCfg.setInstanceGroupTag("INSTANCEGROUPTAG");
>
> Do you have anything planned to support multiple instance group tags for
> one job so that the job can be run either in group A or group B? This is
> somewhat similar to Node Affinity [1] concept in Kubernetes.
>
> [1] https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
>
> Thanks
> Dimuthu
>


-- 
Junkai Xue


Multiple instance group tags for Job config

2019-06-24 Thread DImuthu Upeksha
Hi Folks,

Currently we can set only one instance group tag for a job.

jobCfg.setInstanceGroupTag("INSTANCEGROUPTAG");

Do you have anything planned to support multiple instance group tags for
one job so that the job can be run either in group A or group B? This is
somewhat similar to Node Affinity [1] concept in Kubernetes.

[1] https://kubernetes.io/docs/concepts/configuration/assign-pod-node/

Thanks
Dimuthu