[jira] [Assigned] (MYRIAD-238) Convert groovy-based unit tests to JUnit tests

2019-02-27 Thread John Yost (JIRA)


 [ 
https://issues.apache.org/jira/browse/MYRIAD-238?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

John Yost reassigned MYRIAD-238:


Assignee: (was: John Yost)

> Convert groovy-based unit tests to JUnit tests
> --
>
> Key: MYRIAD-238
> URL: https://issues.apache.org/jira/browse/MYRIAD-238
> Project: Myriad
>  Issue Type: Test
>Reporter: John Yost
>Priority: Minor
>




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


[jira] [Assigned] (MYRIAD-229) Put upper limit on FGS

2019-02-27 Thread John Yost (JIRA)


 [ 
https://issues.apache.org/jira/browse/MYRIAD-229?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

John Yost reassigned MYRIAD-229:


Assignee: (was: John Yost)

> Put upper limit on FGS
> --
>
> Key: MYRIAD-229
> URL: https://issues.apache.org/jira/browse/MYRIAD-229
> Project: Myriad
>  Issue Type: Bug
>  Components: Scheduler
>Affects Versions: Myriad 0.2.0
>Reporter: DarinJ
>Priority: Minor
>
> Currently FGS can utilize as many resources as on the machine this is 
> sometimes problematic when considering machines with disproportionate core to 
> mem to disk ratios.  One way to fix the issue is to cap the amount of CPU/MEM 
> that Myriad will utilize with FGS.



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


[jira] [Assigned] (MYRIAD-237) SchedulerState getKillableTasks method mislabelled

2019-02-27 Thread John Yost (JIRA)


 [ 
https://issues.apache.org/jira/browse/MYRIAD-237?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

John Yost reassigned MYRIAD-237:


Assignee: (was: John Yost)

> SchedulerState getKillableTasks method mislabelled
> --
>
> Key: MYRIAD-237
> URL: https://issues.apache.org/jira/browse/MYRIAD-237
> Project: Myriad
>  Issue Type: Bug
>Reporter: John Yost
>Priority: Minor
>  Labels: easyfix, newbie
>
> In the process of writing SchedulerUtils JUnit tests, the tests for 
> setTaskKillable was failing and I determined that the 
> SchedulerState.getKillableTasks returns TaskID as opposed to NodeTask 
> objects. The method name is misleading and should be changed to be consistent 
> with the other SchedulerState getter methods.



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


[jira] [Assigned] (MYRIAD-225) Loading state in MyriadStateStore leads to inconsistent unit test results

2019-02-27 Thread John Yost (JIRA)


 [ 
https://issues.apache.org/jira/browse/MYRIAD-225?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

John Yost reassigned MYRIAD-225:


Assignee: (was: John Yost)

> Loading state in MyriadStateStore leads to inconsistent unit test results
> -
>
> Key: MYRIAD-225
> URL: https://issues.apache.org/jira/browse/MYRIAD-225
> Project: Myriad
>  Issue Type: Bug
>  Components: Scheduler
>Reporter: John Yost
>Priority: Minor
>
> After fixing bug in loading state in the MyriadStateStore I noticed the 
> MyriadOperationsTest unit test results were inconsistent. Need to investigate 
> and, if applicable, add @Before and @After logic to reset state correctly to 
> fix inconsistencies.



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


[jira] [Assigned] (MYRIAD-239) Setting frameworkRole to * causes exception

2019-02-27 Thread John Yost (JIRA)


 [ 
https://issues.apache.org/jira/browse/MYRIAD-239?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

John Yost reassigned MYRIAD-239:


Assignee: (was: John Yost)

> Setting frameworkRole to * causes exception
> ---
>
> Key: MYRIAD-239
> URL: https://issues.apache.org/jira/browse/MYRIAD-239
> Project: Myriad
>  Issue Type: Bug
>Reporter: John Yost
>Priority: Major
>
> Setting the frameworkRole in myriad-config-default.yml causes the following 
> exception to be thrown:
> org.apache.myriad.scheduler.event.handlers.ResourceOffersEventHandler: 
> Exception thrown while trying to create a task for nm
> java.lang.IllegalArgumentException: n must be positive
> at java.util.Random.nextInt(Random.java:300)
> at 
> org.apache.myriad.scheduler.resource.RangeResource.getRandomValues(RangeResource.java:128)
> at 
> org.apache.myriad.scheduler.resource.RangeResource.consumeResource(RangeResource.java:99)
> at 
> org.apache.myriad.scheduler.resource.ResourceOfferContainer.consumePorts(ResourceOfferContainer.java:171)
> at 
> org.apache.myriad.scheduler.NMTaskFactory.createTask(NMTaskFactory.java:45)
> at 
> org.apache.myriad.scheduler.event.handlers.ResourceOffersEventHandler.onEvent(ResourceOffersEventHandler.java:119)
> at 
> org.apache.myriad.scheduler.event.handlers.ResourceOffersEventHandler.onEvent(ResourceOffersEventHandler.java:49)
> at 
> com.lmax.disruptor.BatchEventProcessor.run(BatchEventProcessor.java:128)
> at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
> at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> at java.lang.Thread.run(Thread.java:745)



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


[jira] [Commented] (MYRIAD-251) ZERO size NodeManager fail to obtain resource from Mesos Offer

2016-12-14 Thread John Yost (JIRA)

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

John Yost commented on MYRIAD-251:
--

[~darinj] Gotcha, OK, I can do that.


> ZERO size NodeManager fail to obtain resource from Mesos Offer
> --
>
> Key: MYRIAD-251
> URL: https://issues.apache.org/jira/browse/MYRIAD-251
> Project: Myriad
>  Issue Type: Bug
>  Components: Scheduler
>Reporter: Tao Jie
>
> I tried Fine-grained Scaling and flexed up zero size NodeManager, then I run 
> a MR job which request for resource.
> However zero size NM did not obtain resource from mesos offer. RM logs like:
> {code}
> 2016-12-14 16:58:23,929 INFO 
> org.apache.myriad.scheduler.fgs.NMHeartBeatHandler: Did not update 
> bdi13.cmss.com with 10 cores and 5888 memory, over max cpu cores and/or max 
> memory
> 2016-12-14 16:58:23,931 WARN 
> org.apache.myriad.scheduler.fgs.YarnNodeCapacityManager: Asked to set Node 
> bdi13.cmss.com:31905 to a value less than zero!  Had , 
> setting to .
> 2016-12-14 16:58:23,931 WARN 
> org.apache.hadoop.yarn.server.resourcemanager.scheduler.AbstractYarnScheduler:
>  Update resource on node: bdi13.cmss.com with the same resource:  vCores:0>
> {code}
> It seems that mesos offer with memory larger than 2252.8mb would be denied, 
> and 2252.8mb is fixed value in code :
> {code}
> private Double generateNodeManagerMemory() {
> return (NodeManagerConfiguration.DEFAULT_JVM_MAX_MEMORY_MB) * (1 + 
> NodeManagerConfiguration.JVM_OVERHEAD);
>   }
> {code}
> where DEFAULT_JVM_MAX_MEMORY_MB=2048 and 
> NodeManagerConfiguration.JVM_OVERHEAD=0.1



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (MYRIAD-225) Loading state in MyriadStateStore leads to inconsistent unit test results

2016-08-24 Thread John Yost (JIRA)

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

John Yost commented on MYRIAD-225:
--

Updated the MYRIAD-229 branch, tested locally, checking in to see if Travis CI 
build succeeds

> Loading state in MyriadStateStore leads to inconsistent unit test results
> -
>
> Key: MYRIAD-225
> URL: https://issues.apache.org/jira/browse/MYRIAD-225
> Project: Myriad
>  Issue Type: Bug
>  Components: Scheduler
>Reporter: John Yost
>Assignee: John Yost
>Priority: Minor
>
> After fixing bug in loading state in the MyriadStateStore I noticed the 
> MyriadOperationsTest unit test results were inconsistent. Need to investigate 
> and, if applicable, add @Before and @After logic to reset state correctly to 
> fix inconsistencies.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Reopened] (MYRIAD-225) Loading state in MyriadStateStore leads to inconsistent unit test results

2016-08-24 Thread John Yost (JIRA)

 [ 
https://issues.apache.org/jira/browse/MYRIAD-225?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

John Yost reopened MYRIAD-225:
--

Was able to recreate this issue following failed Travis CI build.

> Loading state in MyriadStateStore leads to inconsistent unit test results
> -
>
> Key: MYRIAD-225
> URL: https://issues.apache.org/jira/browse/MYRIAD-225
> Project: Myriad
>  Issue Type: Bug
>  Components: Scheduler
>Reporter: John Yost
>Assignee: John Yost
>Priority: Minor
>
> After fixing bug in loading state in the MyriadStateStore I noticed the 
> MyriadOperationsTest unit test results were inconsistent. Need to investigate 
> and, if applicable, add @Before and @After logic to reset state correctly to 
> fix inconsistencies.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (MYRIAD-240) Created lower limit on FGS

2016-08-24 Thread John Yost (JIRA)

 [ 
https://issues.apache.org/jira/browse/MYRIAD-240?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

John Yost updated MYRIAD-240:
-
Issue Type: New Feature  (was: Improvement)

> Created lower limit on FGS
> --
>
> Key: MYRIAD-240
> URL: https://issues.apache.org/jira/browse/MYRIAD-240
> Project: Myriad
>  Issue Type: New Feature
>Reporter: John Yost
>
> In analogy to MYRIAD-229, create a lower limit in the FGS



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (MYRIAD-240) Created lower limit on FGS

2016-08-24 Thread John Yost (JIRA)

 [ 
https://issues.apache.org/jira/browse/MYRIAD-240?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

John Yost updated MYRIAD-240:
-
Issue Type: Improvement  (was: Bug)

> Created lower limit on FGS
> --
>
> Key: MYRIAD-240
> URL: https://issues.apache.org/jira/browse/MYRIAD-240
> Project: Myriad
>  Issue Type: Improvement
>Reporter: John Yost
>
> In analogy to MYRIAD-229, create a lower limit in the FGS



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (MYRIAD-241) Create Docker container based upon Cloudera Hadoop distribution

2016-08-24 Thread John Yost (JIRA)
John Yost created MYRIAD-241:


 Summary: Create Docker container based upon Cloudera Hadoop 
distribution
 Key: MYRIAD-241
 URL: https://issues.apache.org/jira/browse/MYRIAD-241
 Project: Myriad
  Issue Type: Bug
Reporter: John Yost






--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (MYRIAD-241) Create Docker container based upon Cloudera Hadoop distribution

2016-08-24 Thread John Yost (JIRA)

 [ 
https://issues.apache.org/jira/browse/MYRIAD-241?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

John Yost updated MYRIAD-241:
-
Issue Type: Improvement  (was: Bug)

> Create Docker container based upon Cloudera Hadoop distribution
> ---
>
> Key: MYRIAD-241
> URL: https://issues.apache.org/jira/browse/MYRIAD-241
> Project: Myriad
>  Issue Type: Improvement
>Reporter: John Yost
>




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (MYRIAD-240) Created lower limit on FGS

2016-08-24 Thread John Yost (JIRA)
John Yost created MYRIAD-240:


 Summary: Created lower limit on FGS
 Key: MYRIAD-240
 URL: https://issues.apache.org/jira/browse/MYRIAD-240
 Project: Myriad
  Issue Type: Bug
Reporter: John Yost


In analogy to MYRIAD-229, create a lower limit in the FGS



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (MYRIAD-237) SchedulerState getKillableTasks method mislabelled

2016-08-22 Thread John Yost (JIRA)

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

John Yost commented on MYRIAD-237:
--

In MYRIAD-229 PR

> SchedulerState getKillableTasks method mislabelled
> --
>
> Key: MYRIAD-237
> URL: https://issues.apache.org/jira/browse/MYRIAD-237
> Project: Myriad
>  Issue Type: Bug
>Reporter: John Yost
>Assignee: John Yost
>Priority: Minor
>  Labels: easyfix, newbie
>
> In the process of writing SchedulerUtils JUnit tests, the tests for 
> setTaskKillable was failing and I determined that the 
> SchedulerState.getKillableTasks returns TaskID as opposed to NodeTask 
> objects. The method name is misleading and should be changed to be consistent 
> with the other SchedulerState getter methods.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Closed] (MYRIAD-234) Increased JUnit Test Coverage

2016-08-22 Thread John Yost (JIRA)

 [ 
https://issues.apache.org/jira/browse/MYRIAD-234?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

John Yost closed MYRIAD-234.


Merged into master by Darin

> Increased JUnit Test Coverage
> -
>
> Key: MYRIAD-234
> URL: https://issues.apache.org/jira/browse/MYRIAD-234
> Project: Myriad
>  Issue Type: Improvement
>Reporter: John Yost
>Assignee: John Yost
>Priority: Minor
>
> Added more JUnit test coverage for the scheduler, webapp, and api packages, 
> fixed some other JUnit tests that were throwing checked exceptions that I 
> observed in debugger mode.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (MYRIAD-238) Convert groovy-based unit tests to JUnit tests

2016-08-22 Thread John Yost (JIRA)

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

John Yost commented on MYRIAD-238:
--

In MYRIAD-229 PR

> Convert groovy-based unit tests to JUnit tests
> --
>
> Key: MYRIAD-238
> URL: https://issues.apache.org/jira/browse/MYRIAD-238
> Project: Myriad
>  Issue Type: Test
>Reporter: John Yost
>Assignee: John Yost
>Priority: Minor
>




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Closed] (MYRIAD-225) Loading state in MyriadStateStore leads to inconsistent unit test results

2016-08-22 Thread John Yost (JIRA)

 [ 
https://issues.apache.org/jira/browse/MYRIAD-225?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

John Yost closed MYRIAD-225.


> Loading state in MyriadStateStore leads to inconsistent unit test results
> -
>
> Key: MYRIAD-225
> URL: https://issues.apache.org/jira/browse/MYRIAD-225
> Project: Myriad
>  Issue Type: Bug
>  Components: Scheduler
>Reporter: John Yost
>Assignee: John Yost
>Priority: Minor
>
> After fixing bug in loading state in the MyriadStateStore I noticed the 
> MyriadOperationsTest unit test results were inconsistent. Need to investigate 
> and, if applicable, add @Before and @After logic to reset state correctly to 
> fix inconsistencies.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (MYRIAD-225) Loading state in MyriadStateStore leads to inconsistent unit test results

2016-08-22 Thread John Yost (JIRA)

 [ 
https://issues.apache.org/jira/browse/MYRIAD-225?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

John Yost resolved MYRIAD-225.
--
Resolution: Fixed
  Assignee: John Yost

JUnit tests now pass repeatably

> Loading state in MyriadStateStore leads to inconsistent unit test results
> -
>
> Key: MYRIAD-225
> URL: https://issues.apache.org/jira/browse/MYRIAD-225
> Project: Myriad
>  Issue Type: Bug
>  Components: Scheduler
>Reporter: John Yost
>Assignee: John Yost
>Priority: Minor
>
> After fixing bug in loading state in the MyriadStateStore I noticed the 
> MyriadOperationsTest unit test results were inconsistent. Need to investigate 
> and, if applicable, add @Before and @After logic to reset state correctly to 
> fix inconsistencies.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (MYRIAD-239) Setting frameworkRole to * causes exception

2016-08-17 Thread John Yost (JIRA)
John Yost created MYRIAD-239:


 Summary: Setting frameworkRole to * causes exception
 Key: MYRIAD-239
 URL: https://issues.apache.org/jira/browse/MYRIAD-239
 Project: Myriad
  Issue Type: Bug
Reporter: John Yost


Setting the frameworkRole in myriad-config-default.yml causes the following 
exception to be thrown:

org.apache.myriad.scheduler.event.handlers.ResourceOffersEventHandler: 
Exception thrown while trying to create a task for nm
java.lang.IllegalArgumentException: n must be positive
at java.util.Random.nextInt(Random.java:300)
at 
org.apache.myriad.scheduler.resource.RangeResource.getRandomValues(RangeResource.java:128)
at 
org.apache.myriad.scheduler.resource.RangeResource.consumeResource(RangeResource.java:99)
at 
org.apache.myriad.scheduler.resource.ResourceOfferContainer.consumePorts(ResourceOfferContainer.java:171)
at 
org.apache.myriad.scheduler.NMTaskFactory.createTask(NMTaskFactory.java:45)
at 
org.apache.myriad.scheduler.event.handlers.ResourceOffersEventHandler.onEvent(ResourceOffersEventHandler.java:119)
at 
org.apache.myriad.scheduler.event.handlers.ResourceOffersEventHandler.onEvent(ResourceOffersEventHandler.java:49)
at com.lmax.disruptor.BatchEventProcessor.run(BatchEventProcessor.java:128)
at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (MYRIAD-238) Convert groovy-based unit tests to JUnit tests

2016-08-05 Thread John Yost (JIRA)
John Yost created MYRIAD-238:


 Summary: Convert groovy-based unit tests to JUnit tests
 Key: MYRIAD-238
 URL: https://issues.apache.org/jira/browse/MYRIAD-238
 Project: Myriad
  Issue Type: Test
Reporter: John Yost
Assignee: John Yost
Priority: Minor






--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (MYRIAD-237) SchedulerState getKillableTasks method mislabelled

2016-08-05 Thread John Yost (JIRA)
John Yost created MYRIAD-237:


 Summary: SchedulerState getKillableTasks method mislabelled
 Key: MYRIAD-237
 URL: https://issues.apache.org/jira/browse/MYRIAD-237
 Project: Myriad
  Issue Type: Bug
Reporter: John Yost
Assignee: John Yost
Priority: Minor


In the process of writing SchedulerUtils JUnit tests, the tests for 
setTaskKillable was failing and I determined that the 
SchedulerState.getKillableTasks returns TaskID as opposed to NodeTask objects. 
The method name is misleading and should be changed to be consistent with the 
other SchedulerState getter methods.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (MYRIAD-236) YarnNodeCapacityManager--enable reset in setNodeCapacity or make setNodeCapacity protected/private

2016-08-04 Thread John Yost (JIRA)

 [ 
https://issues.apache.org/jira/browse/MYRIAD-236?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

John Yost updated MYRIAD-236:
-
Priority: Minor  (was: Major)

> YarnNodeCapacityManager--enable reset in setNodeCapacity or make 
> setNodeCapacity protected/private
> --
>
> Key: MYRIAD-236
> URL: https://issues.apache.org/jira/browse/MYRIAD-236
> Project: Myriad
>  Issue Type: Bug
>Reporter: John Yost
>Priority: Minor
>
> Currently the setNodeCapacity method does not enable setting of the node 
> capacity to a specific value--only incrementing or decrementing. Moreover, 
> the incrementNodeCapacity and decrementNodeCapacity methods both delegate to 
> setNodeCapacity.  I recommend one of two options: (1) adding the capability 
> to set the node capacity to a specific value and enable this capability 
> within the GUI or (2) making setNodeCapacity protected or private.
> If there are use cases for option (1) where it would be good to set to a 
> specific capacity--irrespective of the current capacity--I recommend that one.
> This issue arose during my work on MYRIAD-229, so I can fix it within that 
> branch.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Issue Comment Deleted] (MYRIAD-236) YarnNodeCapacityManager--enable reset in setNodeCapacity or make setNodeCapacity protected/private

2016-08-04 Thread John Yost (JIRA)

 [ 
https://issues.apache.org/jira/browse/MYRIAD-236?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

John Yost updated MYRIAD-236:
-
Comment: was deleted

(was: Investigating this further, the incrementNodeCapacity and 
decrementNodeCapacity are not invoked anywhere in the codebase outside of my 
JUnit tests. The setNodeCapacity methos is only invoked in the 
NMHeartBeatHandler.handleStatusUpdate method which is only visible for testing. 
Consequently, I recommend closing this ticket.)

> YarnNodeCapacityManager--enable reset in setNodeCapacity or make 
> setNodeCapacity protected/private
> --
>
> Key: MYRIAD-236
> URL: https://issues.apache.org/jira/browse/MYRIAD-236
> Project: Myriad
>  Issue Type: Bug
>Reporter: John Yost
>
> Currently the setNodeCapacity method does not enable setting of the node 
> capacity to a specific value--only incrementing or decrementing. Moreover, 
> the incrementNodeCapacity and decrementNodeCapacity methods both delegate to 
> setNodeCapacity.  I recommend one of two options: (1) adding the capability 
> to set the node capacity to a specific value and enable this capability 
> within the GUI or (2) making setNodeCapacity protected or private.
> If there are use cases for option (1) where it would be good to set to a 
> specific capacity--irrespective of the current capacity--I recommend that one.
> This issue arose during my work on MYRIAD-229, so I can fix it within that 
> branch.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (MYRIAD-236) YarnNodeCapacityManager--enable reset in setNodeCapacity or make setNodeCapacity protected/private

2016-08-04 Thread John Yost (JIRA)

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

John Yost commented on MYRIAD-236:
--

Investigating this further, the incrementNodeCapacity and decrementNodeCapacity 
are not invoked anywhere in the codebase outside of my JUnit tests. The 
setNodeCapacity methos is only invoked in the 
NMHeartBeatHandler.handleStatusUpdate method which is only visible for testing. 
Consequently, I recommend closing this ticket.

> YarnNodeCapacityManager--enable reset in setNodeCapacity or make 
> setNodeCapacity protected/private
> --
>
> Key: MYRIAD-236
> URL: https://issues.apache.org/jira/browse/MYRIAD-236
> Project: Myriad
>  Issue Type: Bug
>Reporter: John Yost
>
> Currently the setNodeCapacity method does not enable setting of the node 
> capacity to a specific value--only incrementing or decrementing. Moreover, 
> the incrementNodeCapacity and decrementNodeCapacity methods both delegate to 
> setNodeCapacity.  I recommend one of two options: (1) adding the capability 
> to set the node capacity to a specific value and enable this capability 
> within the GUI or (2) making setNodeCapacity protected or private.
> If there are use cases for option (1) where it would be good to set to a 
> specific capacity--irrespective of the current capacity--I recommend that one.
> This issue arose during my work on MYRIAD-229, so I can fix it within that 
> branch.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (MYRIAD-236) YarnNodeCapacityManager--enable reset in setNodeCapacity or make setNodeCapacity protected/private

2016-08-04 Thread John Yost (JIRA)
John Yost created MYRIAD-236:


 Summary: YarnNodeCapacityManager--enable reset in setNodeCapacity 
or make setNodeCapacity protected/private
 Key: MYRIAD-236
 URL: https://issues.apache.org/jira/browse/MYRIAD-236
 Project: Myriad
  Issue Type: Bug
Reporter: John Yost


Currently the setNodeCapacity method does not enable setting of the node 
capacity to a specific value--only incrementing or decrementing. Moreover, the 
incrementNodeCapacity and decrementNodeCapacity methods both delegate to 
setNodeCapacity.  I recommend one of two options: (1) adding the capability to 
set the node capacity to a specific value and enable this capability within the 
GUI or (2) making setNodeCapacity protected or private.

If there are use cases for option (1) where it would be good to set to a 
specific capacity--irrespective of the current capacity--I recommend that one.

This issue arose during my work on MYRIAD-229, so I can fix it within that 
branch.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (MYRIAD-234) Increased JUnit Test Coverage

2016-07-21 Thread John Yost (JIRA)

 [ 
https://issues.apache.org/jira/browse/MYRIAD-234?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

John Yost resolved MYRIAD-234.
--
Resolution: Fixed

Code merged in from PR 86, work complete

> Increased JUnit Test Coverage
> -
>
> Key: MYRIAD-234
> URL: https://issues.apache.org/jira/browse/MYRIAD-234
> Project: Myriad
>  Issue Type: Improvement
>Reporter: John Yost
>Assignee: John Yost
>Priority: Minor
>
> Added more JUnit test coverage for the scheduler, webapp, and api packages, 
> fixed some other JUnit tests that were throwing checked exceptions that I 
> observed in debugger mode.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Assigned] (MYRIAD-229) Put upper limit on FGS

2016-07-15 Thread John Yost (JIRA)

 [ 
https://issues.apache.org/jira/browse/MYRIAD-229?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

John Yost reassigned MYRIAD-229:


Assignee: John Yost

> Put upper limit on FGS
> --
>
> Key: MYRIAD-229
> URL: https://issues.apache.org/jira/browse/MYRIAD-229
> Project: Myriad
>  Issue Type: Bug
>  Components: Scheduler
>Affects Versions: Myriad 0.2.0
>Reporter: DarinJ
>Assignee: John Yost
>Priority: Minor
>
> Currently FGS can utilize as many resources as on the machine this is 
> sometimes problematic when considering machines with disproportionate core to 
> mem to disk ratios.  One way to fix the issue is to cap the amount of CPU/MEM 
> that Myriad will utilize with FGS.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (MYRIAD-220) Improve reliability of kill task messaging

2016-07-15 Thread John Yost (JIRA)

 [ 
https://issues.apache.org/jira/browse/MYRIAD-220?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

John Yost resolved MYRIAD-220.
--
   Resolution: Fixed
Fix Version/s: Myriad 0.3.0

Development complete, tested on AWS cluster, corresponding PR #84 merged into 
master branch

> Improve reliability of kill task messaging
> --
>
> Key: MYRIAD-220
> URL: https://issues.apache.org/jira/browse/MYRIAD-220
> Project: Myriad
>  Issue Type: Improvement
>  Components: Scheduler
>Reporter: John Yost
>Assignee: John Yost
> Fix For: Myriad 0.3.0
>
>
> Currently within the YarnNodeCapacityManager there is a two-step process of 
> killing a YARN task via the following method invocations:
>   state.makeTaskKillable(taskId);
>   myriadDriver.kill(taskId);
> Need to add logic to ensure all killable tasks are killed.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (MYRIAD-200) Increase JUnit Test Coverage

2016-07-14 Thread John Yost (JIRA)

 [ 
https://issues.apache.org/jira/browse/MYRIAD-200?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

John Yost resolved MYRIAD-200.
--
Resolution: Fixed

Corresponding PR #78 integrated into master, issue resolved.

> Increase JUnit Test Coverage
> 
>
> Key: MYRIAD-200
> URL: https://issues.apache.org/jira/browse/MYRIAD-200
> Project: Myriad
>  Issue Type: Bug
>  Components: Executor, Scheduler
>Reporter: DarinJ
>Assignee: John Yost
>
> Currently Unit Test coverage is weak in places also, a good integration test 
> framework would be helpful.  (potentially [minimesos|http://minimesos.org]?) 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Closed] (MYRIAD-202) minimesos-based integration tests

2016-07-14 Thread John Yost (JIRA)

 [ 
https://issues.apache.org/jira/browse/MYRIAD-202?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

John Yost closed MYRIAD-202.

Resolution: Won't Fix

JUnit test coverage obviates the need for this story

> minimesos-based integration tests
> -
>
> Key: MYRIAD-202
> URL: https://issues.apache.org/jira/browse/MYRIAD-202
> Project: Myriad
>  Issue Type: Improvement
>Reporter: John Yost
>Assignee: John Yost
>
> Implement integration tests with mini-mesos to bridge the gap between a unit 
> test harness and deployment to a mesos cluster.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (MYRIAD-234) Increased JUnit Test Coverage

2016-07-14 Thread John Yost (JIRA)
John Yost created MYRIAD-234:


 Summary: Increased JUnit Test Coverage
 Key: MYRIAD-234
 URL: https://issues.apache.org/jira/browse/MYRIAD-234
 Project: Myriad
  Issue Type: Improvement
Reporter: John Yost
Priority: Minor


Added more JUnit test coverage for the scheduler, webapp, and api packages, 
fixed some other JUnit tests that were throwing checked exceptions that I 
observed in debugger mode.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (MYRIAD-233) Myriad UI should display the entire Myriad configuration

2016-06-30 Thread John Yost (JIRA)
John Yost created MYRIAD-233:


 Summary: Myriad UI should display the entire Myriad configuration
 Key: MYRIAD-233
 URL: https://issues.apache.org/jira/browse/MYRIAD-233
 Project: Myriad
  Issue Type: Improvement
Reporter: John Yost
Priority: Minor


Currently the Myriad UI only displays the service profile configuration. I 
recommend display of all Myriad config params in the UI



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (MYRIAD-232) Display Flex Down/Up errors to UI

2016-06-30 Thread John Yost (JIRA)
John Yost created MYRIAD-232:


 Summary: Display Flex Down/Up errors to UI
 Key: MYRIAD-232
 URL: https://issues.apache.org/jira/browse/MYRIAD-232
 Project: Myriad
  Issue Type: Improvement
  Components: Scheduler
Reporter: John Yost
Priority: Minor


Currently flex up/flex down errors such as requesting flex down instances 
number > number of corresponding tasks are recorded in logs but not displayed 
on UI. I recommend updating UI and REST API accordingly to enable display of 
these error messages.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (MYRIAD-227) Jersey-based exception prevents refresh of Myriad UI

2016-06-17 Thread John Yost (JIRA)
John Yost created MYRIAD-227:


 Summary: Jersey-based exception prevents refresh of Myriad UI
 Key: MYRIAD-227
 URL: https://issues.apache.org/jira/browse/MYRIAD-227
 Project: Myriad
  Issue Type: Bug
  Components: Scheduler
Reporter: John Yost
Priority: Minor


Periodically a Jersey-related exception is thrown, which prevents the Myriad 
web UI from refreshing, requiring a manual webpage refresh.

Stacktrace: 

SEVERE: null
java.lang.IllegalAccessException: Class 
com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator$8 can 
not access a member of class javax.ws.rs.core.Response with modifiers 
"protected"
at sun.reflect.Reflection.ensureMemberAccess(Reflection.java:102)
at java.lang.Class.newInstance(Class.java:436)
at 
com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator$8.resolve(WadlGeneratorJAXBGrammarGenerator.java:467)
at 
com.sun.jersey.server.wadl.WadlGenerator$ExternalGrammarDefinition.resolve(WadlGenerator.java:181)
at 
com.sun.jersey.server.wadl.ApplicationDescription.resolve(ApplicationDescription.java:81)
at 
com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator.attachTypes(WadlGeneratorJAXBGrammarGenerator.java:518)
at com.sun.jersey.server.wadl.WadlBuilder.generate(WadlBuilder.java:124)
at 
com.sun.jersey.server.impl.wadl.WadlApplicationContextImpl.getApplication(WadlApplicationContextImpl.java:104)
at 
com.sun.jersey.server.impl.wadl.WadlResource.getWadl(WadlResource.java:89)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at 
com.sun.jersey.spi.container.JavaMethodInvokerFactory$1.invoke(JavaMethodInvokerFactory.java:60)
at 
com.sun.jersey.server.impl.model.method.dispatch.AbstractResourceMethodDispatchProvider$ResponseOutInvoker._dispatch(AbstractResourceMethodDispatchProvider.java:205)
at 
com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher.java:75)
at 
com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.java:288)
at 
com.sun.jersey.server.impl.uri.rules.ResourceClassRule.accept(ResourceClassRule.java:108)
at 
com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147)
at 
com.sun.jersey.server.impl.uri.rules.RootResourceClassesRule.accept(RootResourceClassesRule.java:84)
at 
com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1469)
at 
com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1400)
at 
com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1349)
at 
com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1339)
at 
com.sun.jersey.spi.container.servlet.WebComponent.service(WebComponent.java:416)
at 
com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:537)
at 
com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:699)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at 
com.google.inject.servlet.ServletDefinition.doService(ServletDefinition.java:263)
at 
com.google.inject.servlet.ServletDefinition.service(ServletDefinition.java:178)
at 
com.google.inject.servlet.ManagedServletPipeline.service(ManagedServletPipeline.java:91)
at 
com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:62)
at 
com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:118)
at com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:113)
at 
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
at 
org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:399)
at 
org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:766)
at 
org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
at org.mortbay.jetty.Server.handle(Server.java:326)
at 
org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
at 
org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:928)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:549)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
at org.mortbay.jetty.Htt

[jira] [Created] (MYRIAD-226) Clean up missing generics parameters and unused object references

2016-06-17 Thread John Yost (JIRA)
John Yost created MYRIAD-226:


 Summary: Clean up missing generics parameters and unused object 
references
 Key: MYRIAD-226
 URL: https://issues.apache.org/jira/browse/MYRIAD-226
 Project: Myriad
  Issue Type: Improvement
  Components: Executor, Scheduler
Reporter: John Yost
Priority: Minor


There are a few places (i.e., references to AbstractYarnScheduler) where the 
generics parameters are not specified.  There are also unused object references 
(i.e., SchedulerState in ReRegisteredEventHandler). Would be a good newbie task 
to clean these up



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (MYRIAD-225) Loading state in MyriadStateStore leads to inconsistent unit test results

2016-06-17 Thread John Yost (JIRA)
John Yost created MYRIAD-225:


 Summary: Loading state in MyriadStateStore leads to inconsistent 
unit test results
 Key: MYRIAD-225
 URL: https://issues.apache.org/jira/browse/MYRIAD-225
 Project: Myriad
  Issue Type: Bug
  Components: Scheduler
Reporter: John Yost
Priority: Minor


After fixing bug in loading state in the MyriadStateStore I noticed the 
MyriadOperationsTest unit test results were inconsistent. Need to investigate 
and, if applicable, add @Before and @After logic to reset state correctly to 
fix inconsistencies.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (MYRIAD-220) Improve reliability of kill task messaging

2016-06-16 Thread John Yost (JIRA)

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

John Yost commented on MYRIAD-220:
--

Myriad interacts with the Mesos scheduler via the Mesos ScheduleDriver class 
and receives acknowledgement of requests via a callback mechanism defined in 
the Mesos Scheduler interface.

Myriad Tasks are killed via a process that is ideally one-step but can be 
two-step if there are any system or network issues at the time the task kill 
request is submitted to Mesos:

1. The YarnNodeCapacityManager invokes MyriadDriver.kill, which delegates to 
the Mesos SchedulerDriver.killTask method. At this stage the kill request is 
sent by the ScheduleDriver to Mesos. A Protos.Status object is returned, but 
that Status object only indicates whether the SchedulerDriver is in a running 
state. Until a callback is invoked by Mesos upon the Myriad Scheduler 
implementation, there is no guarantee that the task kill request succeeded.

2. The TaskTerminator is a daemon that periodically checks the SchedulerState 
killable tasks queue and invokes MyriadDriverManager.kill, which is a wrapper 
for the MyriadDriver (and, again, the Mesos SchedulerDriver). In the master 
branch the TaskTerminator also invokes SchedulerState.removeTask to remove the 
killable task from the SchedulerState.  This is potentially an issue because, 
again, the task kill request is not guaranteed to have worked unless the 
corresponding Mesos callback method is invoked.

The only way to ensure that all Killable Myriad tasks are eventually killed is 
to invoke SchedulerState.removeTask from within Myriad's Mesos lifecycle 
callback implementation, MyriadScheduler, either directly or within a local 
Java object.  Specifically, MyriadScheduler implements the 
org.apache.mesos.Scheduler interface, which is the Mesos callback interface for 
all Mesos Task lifecycle methods (i.e., register, statusUpdate, disconnected, 
etc...). When the statusUpdate callback is invoked, one of the status updates 
is that the Myriad task was killed. 

When a StatusUpdate is received from Mesos, a Myriad StatusUpdateEvent is 
created and fired via Disruptor. The message listener is the 
StatusUpdateEventHandler class. Within it's onEvent method, there is logic to 
decline new resource offers as well as remove the corresponding task from the 
Myriad SchedulerState. 

Consequently, the only code change required is to remove the 
SchedulerState.removeTask method invocation from TaskTerminator. I am also 
adding some JUnit tests and Javadoc comments.

--John


> Improve reliability of kill task messaging
> --
>
> Key: MYRIAD-220
> URL: https://issues.apache.org/jira/browse/MYRIAD-220
> Project: Myriad
>  Issue Type: Improvement
>  Components: Scheduler
>Reporter: John Yost
>Assignee: John Yost
>
> Currently within the YarnNodeCapacityManager there is a two-step process of 
> killing a YARN task via the following method invocations:
>   state.makeTaskKillable(taskId);
>   myriadDriver.kill(taskId);
> Need to add logic to ensure all killable tasks are killed.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (MYRIAD-224) Add AOP layer for SchedulerState (and maybe other classes)

2016-06-16 Thread John Yost (JIRA)
John Yost created MYRIAD-224:


 Summary: Add AOP layer for SchedulerState (and maybe other classes)
 Key: MYRIAD-224
 URL: https://issues.apache.org/jira/browse/MYRIAD-224
 Project: Myriad
  Issue Type: Improvement
  Components: Scheduler
Reporter: John Yost
Priority: Minor


The SchedulerState has a protected updateStore() method that is invoked on the 
last line of SchedulerState public methods. There is boolean logic to 
short-circuit the method if HA is disabled.

Configuring this to instead use AOP would prevent invocation where HA is 
disabled and also deliver cleaner code.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (MYRIAD-223) ExecutorInfo in both Node and NodeTask classes--remove from Node

2016-06-15 Thread John Yost (JIRA)
John Yost created MYRIAD-223:


 Summary: ExecutorInfo in both Node and NodeTask classes--remove 
from Node
 Key: MYRIAD-223
 URL: https://issues.apache.org/jira/browse/MYRIAD-223
 Project: Myriad
  Issue Type: Improvement
Reporter: John Yost
Priority: Minor


As Swapnil mentioned in a TODO comment within the YarnNodeCapacityManager 
class, ExecutorInfo is an attribute of both the Node and NodeTask classes.  It 
is recommended that the ExecutorInfo be removed from the Node class



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (MYRIAD-222) Triage killable tasks to prevent retries on inaccessible nodes

2016-06-15 Thread John Yost (JIRA)
John Yost created MYRIAD-222:


 Summary: Triage killable tasks to prevent retries on inaccessible 
nodes
 Key: MYRIAD-222
 URL: https://issues.apache.org/jira/browse/MYRIAD-222
 Project: Myriad
  Issue Type: Improvement
Reporter: John Yost
Priority: Minor


When a Myriad task is marked killable an attempt is made to kill the task via 
the MyriadDriver, which delegates the call to the underlying 
MesosSchedulerDriver. In addition, the TaskTerminator daemon periodically 
attempts to kill any killable tasks that remain in the SchedulerState.

Darin suggested adding configurable logic to partition task ids pertaining to 
tasks for which multiple unsuccessful kill attempts have been made; this 
feature will prevent repeated attempts to kill tasks on inaccessible nodes.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (MYRIAD-220) Improve reliability of kill task messaging

2016-06-13 Thread John Yost (JIRA)
John Yost created MYRIAD-220:


 Summary: Improve reliability of kill task messaging
 Key: MYRIAD-220
 URL: https://issues.apache.org/jira/browse/MYRIAD-220
 Project: Myriad
  Issue Type: Improvement
  Components: Scheduler
Reporter: John Yost


Currently within the YarnNodeCapacityManager there is a two-step process of 
killing a YARN task via the following method invocations:
  state.makeTaskKillable(taskId);
  myriadDriver.kill(taskId);

Need to add logic to ensure all killable tasks are killed.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (MYRIAD-217) Make fine-grained scaling for all NodeManager configurations

2016-06-09 Thread John Yost (JIRA)
John Yost created MYRIAD-217:


 Summary: Make fine-grained scaling for all NodeManager 
configurations
 Key: MYRIAD-217
 URL: https://issues.apache.org/jira/browse/MYRIAD-217
 Project: Myriad
  Issue Type: Improvement
  Components: Scheduler
Reporter: John Yost


Currently only Node Managers configured with zero CPU cores and memory are 
eligible for fine-grained scaling. I recommend removing this restriction.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (MYRIAD-200) Increase JUnit Test Coverage

2016-06-09 Thread John Yost (JIRA)

 [ 
https://issues.apache.org/jira/browse/MYRIAD-200?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

John Yost updated MYRIAD-200:
-
Summary: Increase JUnit Test Coverage  (was: Increased JUnit Test Coverage)

> Increase JUnit Test Coverage
> 
>
> Key: MYRIAD-200
> URL: https://issues.apache.org/jira/browse/MYRIAD-200
> Project: Myriad
>  Issue Type: Bug
>  Components: Executor, Scheduler
>Reporter: DarinJ
>Assignee: John Yost
>
> Currently Unit Test coverage is weak in places also, a good integration test 
> framework would be helpful.  (potentially [minimesos|http://minimesos.org]?) 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (MYRIAD-216) Make OfferLifecycleManager thread safe

2016-06-09 Thread John Yost (JIRA)
John Yost created MYRIAD-216:


 Summary: Make OfferLifecycleManager thread safe
 Key: MYRIAD-216
 URL: https://issues.apache.org/jira/browse/MYRIAD-216
 Project: Myriad
  Issue Type: Bug
  Components: Scheduler
Reporter: John Yost
 Fix For: Myriad 0.3.0


There is a TODO note indicating that parts of OfferLifecycleManager are not 
thread-safe. We should fix this.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (MYRIAD-200) Increased JUnit Test Coverage

2016-06-09 Thread John Yost (JIRA)

 [ 
https://issues.apache.org/jira/browse/MYRIAD-200?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

John Yost updated MYRIAD-200:
-
Summary: Increased JUnit Test Coverage  (was: Increased Unit Test and 
Integration Testing)

> Increased JUnit Test Coverage
> -
>
> Key: MYRIAD-200
> URL: https://issues.apache.org/jira/browse/MYRIAD-200
> Project: Myriad
>  Issue Type: Bug
>  Components: Executor, Scheduler
>Reporter: DarinJ
>Assignee: John Yost
>
> Currently Unit Test coverage is weak in places also, a good integration test 
> framework would be helpful.  (potentially [minimesos|http://minimesos.org]?) 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Assigned] (MYRIAD-202) minimesos-based integration tests

2016-06-02 Thread John Yost (JIRA)

 [ 
https://issues.apache.org/jira/browse/MYRIAD-202?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

John Yost reassigned MYRIAD-202:


Assignee: John Yost

> minimesos-based integration tests
> -
>
> Key: MYRIAD-202
> URL: https://issues.apache.org/jira/browse/MYRIAD-202
> Project: Myriad
>  Issue Type: Improvement
>Reporter: John Yost
>Assignee: John Yost
>
> Implement integration tests with mini-mesos to bridge the gap between a unit 
> test harness and deployment to a mesos cluster.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Assigned] (MYRIAD-198) Remove optionals when sane defaults are available

2016-06-02 Thread John Yost (JIRA)

 [ 
https://issues.apache.org/jira/browse/MYRIAD-198?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

John Yost reassigned MYRIAD-198:


Assignee: John Yost

> Remove optionals when sane defaults are available
> -
>
> Key: MYRIAD-198
> URL: https://issues.apache.org/jira/browse/MYRIAD-198
> Project: Myriad
>  Issue Type: Bug
>  Components: Executor, Scheduler
>Affects Versions: Myriad 0.2.0
>Reporter: DarinJ
>Assignee: John Yost
>Priority: Minor
>  Labels: easyfix, newbie
>
> Currently we overuse Optionals in the config and then use an or method in 
> various factories later.  In many cases having the configuration return a 
> default when the parameter was specified would create cleaner code.  For 
> instance:
> {quote}
> Optional getCgroups() {
>   Optional.fromNullable(cgroups);
> }
> {quote}
> vs
> {quote}
> Boolean getCgroups() {
>   return cgroups != null ? cgroups : false;
> }
> {quote}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Assigned] (MYRIAD-200) Increased Unit Test and Integration Testing

2016-06-02 Thread John Yost (JIRA)

 [ 
https://issues.apache.org/jira/browse/MYRIAD-200?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

John Yost reassigned MYRIAD-200:


Assignee: John Yost

> Increased Unit Test and Integration Testing
> ---
>
> Key: MYRIAD-200
> URL: https://issues.apache.org/jira/browse/MYRIAD-200
> Project: Myriad
>  Issue Type: Bug
>  Components: Executor, Scheduler
>Reporter: DarinJ
>Assignee: John Yost
>
> Currently Unit Test coverage is weak in places also, a good integration test 
> framework would be helpful.  (potentially [minimesos|http://minimesos.org]?) 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (MYRIAD-211) Refactor MyriadOperations.flexUpAService

2016-06-01 Thread John Yost (JIRA)
John Yost created MYRIAD-211:


 Summary: Refactor MyriadOperations.flexUpAService 
 Key: MYRIAD-211
 URL: https://issues.apache.org/jira/browse/MYRIAD-211
 Project: Myriad
  Issue Type: Improvement
Reporter: John Yost


The MyriadOperations flexUpAService method currently throws a 
MyriadBadConfigurationException if the requested flex up request makes the 
total number of active, staging, pending, and requested instances of a service 
> max number of service instances. I may be missing something, but this does 
not appear to me to be a configuration issue.  Perhaps we should just return a 
boolean indicating whether the request succeeded.

Also, perhaps we should build in retry logic to re-attempt for a dynamically 
configurable number of times with a dynamically-configured backoff params



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (MYRIAD-210) Fully implement ZookeeperHealthCheck

2016-06-01 Thread John Yost (JIRA)
John Yost created MYRIAD-210:


 Summary: Fully implement ZookeeperHealthCheck
 Key: MYRIAD-210
 URL: https://issues.apache.org/jira/browse/MYRIAD-210
 Project: Myriad
  Issue Type: Improvement
  Components: Executor, Scheduler
Reporter: John Yost
Priority: Minor


As Ken Sipe mentioned in his TODO, this class remains partially implemented



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (MYRIAD-86) Consider an API for desired # instances, rather than flex up/down

2016-06-01 Thread John Yost (JIRA)

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

John Yost commented on MYRIAD-86:
-

I think this is a good idea, would recommend an integrated API where a starting 
number of configs can then be flexed up/down, kinda analogous to Java -Xms 
(initial heap size) and -Xmx (max heap size).

> Consider an API for desired # instances, rather than flex up/down
> -
>
> Key: MYRIAD-86
> URL: https://issues.apache.org/jira/browse/MYRIAD-86
> Project: Myriad
>  Issue Type: Improvement
>Reporter: Adam B
>
> There is value in having both APIs, so I'm not suggesting we remove flex 
> up/down, just add a new call.
> This could also be valuable for AutoScaling (MYRIAD-12)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (MYRIAD-209) Abstract Health API

2016-06-01 Thread John Yost (JIRA)
John Yost created MYRIAD-209:


 Summary: Abstract Health API 
 Key: MYRIAD-209
 URL: https://issues.apache.org/jira/browse/MYRIAD-209
 Project: Myriad
  Issue Type: Improvement
  Components: Executor, Scheduler
Reporter: John Yost
Priority: Minor


Recommend abstracting the org.apache.myriad.health package to enable 
integration of Consul and/or Marathon health checks.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (MYRIAD-208) Make ReconcileService backoff parameters configurable

2016-06-01 Thread John Yost (JIRA)
John Yost created MYRIAD-208:


 Summary: Make ReconcileService backoff parameters configurable
 Key: MYRIAD-208
 URL: https://issues.apache.org/jira/browse/MYRIAD-208
 Project: Myriad
  Issue Type: Improvement
  Components: Scheduler
Reporter: John Yost
Priority: Minor
 Fix For: Myriad 0.3.0


As Mohit recommended in his TODO, render backoff params configurable in 
ReconcileService.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (MYRIAD-134) Support Zookeeper based implementation of RMStateStore for storing Myriad state

2016-06-01 Thread John Yost (JIRA)

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

John Yost commented on MYRIAD-134:
--

Good suggestion, and I recommend taking it a step further by enabling storage 
of Myriad state within Consul, which could centralize state and health checking 
within Consul

> Support Zookeeper based implementation of RMStateStore for storing Myriad 
> state
> ---
>
> Key: MYRIAD-134
> URL: https://issues.apache.org/jira/browse/MYRIAD-134
> Project: Myriad
>  Issue Type: Task
>  Components: Scheduler
>Reporter: Swapnil Daingade
>Assignee: Swapnil Daingade
>
> Currently we support a DFS based implementation of RMStateStore for storing 
> Myriad State (MyriadFileSystemRMStateStore). We need to similarly support a 
> Zookeeper base one.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (MYRIAD-207) Better exception handling for configuration file input values

2016-06-01 Thread John Yost (JIRA)
John Yost created MYRIAD-207:


 Summary: Better exception handling for configuration file input 
values
 Key: MYRIAD-207
 URL: https://issues.apache.org/jira/browse/MYRIAD-207
 Project: Myriad
  Issue Type: Improvement
  Components: Executor, Scheduler
Affects Versions: Myriad 0.2.0
Reporter: John Yost
 Fix For: Myriad 0.3.0


There is alot of great exception handling within the Myriad project. To make it 
even better, I recommend enhanced checking and exception handling logic for 
Myriad classes that receive input values from configuration files. For example, 
in the HealthCheckUtils class, I recommend adding a code block to ensure the 
URL is properly formatted and, if not, an IllegalArgumentException is thrown.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (MYRIAD-206) Recommend removal of myriad-commons MyriadExecutorDefaults class

2016-05-31 Thread John Yost (JIRA)
John Yost created MYRIAD-206:


 Summary: Recommend removal of myriad-commons 
MyriadExecutorDefaults class
 Key: MYRIAD-206
 URL: https://issues.apache.org/jira/browse/MYRIAD-206
 Project: Myriad
  Issue Type: Improvement
  Components: Executor
Affects Versions: Myriad 0.2.0
Reporter: John Yost
Priority: Minor
 Fix For: Myriad 0.3.0


I recommend replacing a centralized defaults class with putting the defaults 
with their corresponding classes.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (MYRIAD-205) Myriad UI should warn user when framework registration fails/framework removed

2016-05-22 Thread John Yost (JIRA)
John Yost created MYRIAD-205:


 Summary: Myriad UI should warn user when framework registration 
fails/framework removed
 Key: MYRIAD-205
 URL: https://issues.apache.org/jira/browse/MYRIAD-205
 Project: Myriad
  Issue Type: Bug
  Components: Scheduler
Affects Versions: Myriad 0.2.0
Reporter: John Yost
Priority: Minor


The Myriad UI should display a warning when Myriad Mesos framework registration 
fails and/or Myriad is removed from the Mesos Active Frameworks list.
Also, flex up/flex down requests should fail gracefully when Myriad is not an 
active framework.  Currently flex up requests remain in pending state.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (MYRIAD-203) Update NodeTask constructor to ensure uniqueness

2016-05-17 Thread John Yost (JIRA)

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

John Yost commented on MYRIAD-203:
--

This can be accomplished by retaining default equals method (returns false if 
the two object references are to duplicate instances with same state) as it is 
now, but it would be safer if the object state of each NodeTask is unique.

> Update NodeTask constructor to ensure uniqueness
> 
>
> Key: MYRIAD-203
> URL: https://issues.apache.org/jira/browse/MYRIAD-203
> Project: Myriad
>  Issue Type: Bug
>Reporter: John Yost
>
> The NodeTask constructor does not currently ensure uniqueness in that two 
> NodeTasks could have the same ServiceResourceProfile and Constraint, even 
> though they are separate NodeTask objects.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (MYRIAD-203) Update NodeTask constructor to ensure uniqueness

2016-05-17 Thread John Yost (JIRA)

 [ 
https://issues.apache.org/jira/browse/MYRIAD-203?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

John Yost updated MYRIAD-203:
-
Priority: Minor  (was: Major)

> Update NodeTask constructor to ensure uniqueness
> 
>
> Key: MYRIAD-203
> URL: https://issues.apache.org/jira/browse/MYRIAD-203
> Project: Myriad
>  Issue Type: Bug
>Reporter: John Yost
>Priority: Minor
>
> The NodeTask constructor does not currently ensure uniqueness in that two 
> NodeTasks could have the same ServiceResourceProfile and Constraint, even 
> though they are separate NodeTask objects.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (MYRIAD-203) Update NodeTask constructor to ensure uniqueness

2016-05-17 Thread John Yost (JIRA)
John Yost created MYRIAD-203:


 Summary: Update NodeTask constructor to ensure uniqueness
 Key: MYRIAD-203
 URL: https://issues.apache.org/jira/browse/MYRIAD-203
 Project: Myriad
  Issue Type: Bug
Reporter: John Yost


The NodeTask constructor does not currently ensure uniqueness in that two 
NodeTasks could have the same ServiceResourceProfile and Constraint, even 
though they are separate NodeTask objects.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (MYRIAD-202) minimesos-based integration tests

2016-05-17 Thread John Yost (JIRA)
John Yost created MYRIAD-202:


 Summary: minimesos-based integration tests
 Key: MYRIAD-202
 URL: https://issues.apache.org/jira/browse/MYRIAD-202
 Project: Myriad
  Issue Type: Improvement
Reporter: John Yost


Implement integration tests with mini-mesos to bridge the gap between a unit 
test harness and deployment to a mesos cluster.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (MYRIAD-201) Myriad state objects should be immutable

2016-05-17 Thread John Yost (JIRA)
John Yost created MYRIAD-201:


 Summary: Myriad state objects should be immutable
 Key: MYRIAD-201
 URL: https://issues.apache.org/jira/browse/MYRIAD-201
 Project: Myriad
  Issue Type: Improvement
  Components: Scheduler
Reporter: John Yost
Priority: Minor


I recommend that all Myriad state objects that should remain unchanged 
following startup be refactored to be immutable. For objects that have some 
state that could change (i.e., Cluster), make the unchanging instance 
attributes immutable.

Rendering as much state as possible to be immutable will hopefully prevent 
runtime errors and mysterious anomalies.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (MYRIAD-198) Remove optionals when sane defaults are available

2016-05-17 Thread John Yost (JIRA)

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

John Yost commented on MYRIAD-198:
--

Updated per feedback from Darin, returning empty Map objects and updated 
calling code accordingly.

> Remove optionals when sane defaults are available
> -
>
> Key: MYRIAD-198
> URL: https://issues.apache.org/jira/browse/MYRIAD-198
> Project: Myriad
>  Issue Type: Bug
>  Components: Executor, Scheduler
>Affects Versions: Myriad 0.2.0
>Reporter: DarinJ
>Priority: Minor
>  Labels: easyfix, newbie
>
> Currently we overuse Optionals in the config and then use an or method in 
> various factories later.  In many cases having the configuration return a 
> default when the parameter was specified would create cleaner code.  For 
> instance:
> {quote}
> Optional getCgroups() {
>   Optional.fromNullable(cgroups);
> }
> {quote}
> vs
> {quote}
> Boolean getCgroups() {
>   return cgroups != null ? cgroups : false;
> }
> {quote}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (MYRIAD-200) Increased Unit Test and Integration Testing

2016-05-11 Thread John Yost (JIRA)

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

John Yost commented on MYRIAD-200:
--

Hi Everyone,

I just created a branch off of my fork 
(https://github.com/hokiegeek2/incubator-myriad) and am currently working this 
ticket.

--John

> Increased Unit Test and Integration Testing
> ---
>
> Key: MYRIAD-200
> URL: https://issues.apache.org/jira/browse/MYRIAD-200
> Project: Myriad
>  Issue Type: Bug
>  Components: Executor, Scheduler
>Reporter: DarinJ
>
> Currently Unit Test coverage is weak in places also, a good integration test 
> framework would be helpful.  (potentially [minimesos|http://minimesos.org]?) 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (MYRIAD-198) Remove optionals when sane defaults are available

2016-05-11 Thread John Yost (JIRA)

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

John Yost commented on MYRIAD-198:
--

Wrapped up work, submitted pull request

> Remove optionals when sane defaults are available
> -
>
> Key: MYRIAD-198
> URL: https://issues.apache.org/jira/browse/MYRIAD-198
> Project: Myriad
>  Issue Type: Bug
>  Components: Executor, Scheduler
>Affects Versions: Myriad 0.2.0
>Reporter: DarinJ
>Priority: Minor
>  Labels: easyfix, newbie
>
> Currently we overuse Optionals in the config and then use an or method in 
> various factories later.  In many cases having the configuration return a 
> default when the parameter was specified would create cleaner code.  For 
> instance:
> {quote}
> Optional getCgroups() {
>   Optional.fromNullable(cgroups);
> }
> {quote}
> vs
> {quote}
> Boolean getCgroups() {
>   return cgroups != null ? cgroups : false;
> }
> {quote}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (MYRIAD-198) Remove optionals when sane defaults are available

2016-05-06 Thread John Yost (JIRA)

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

John Yost commented on MYRIAD-198:
--

Hi Everyone,

I forked the project (https://github.com/hokiegeek2/incubator-myriad) and am 
working on this ticket.

--John

> Remove optionals when sane defaults are available
> -
>
> Key: MYRIAD-198
> URL: https://issues.apache.org/jira/browse/MYRIAD-198
> Project: Myriad
>  Issue Type: Bug
>  Components: Executor, Scheduler
>Affects Versions: Myriad 0.2.0
>Reporter: DarinJ
>Priority: Minor
>  Labels: easyfix, newbie
>
> Currently we overuse Optionals in the config and then use an or method in 
> various factories later.  In many cases having the configuration return a 
> default when the parameter was specified would create cleaner code.  For 
> instance:
> {quote}
> Optional getCgroups() {
>   Optional.fromNullable(cgroups);
> }
> {quote}
> vs
> {quote}
> Boolean getCgroups() {
>   return cgroups != null ? cgroups : false;
> }
> {quote}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)