You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@yunikorn.apache.org by GitBox <gi...@apache.org> on 2021/03/17 15:20:49 UTC
[GitHub] [incubator-yunikorn-core] kingamarton opened a new pull request #260: [YUNIKORN-574] Wait for placeholder cleanup
kingamarton opened a new pull request #260:
URL: https://github.com/apache/incubator-yunikorn-core/pull/260
With this fix a new state is introduced: Failing state. Also, Waiting state is renamed to Completing.
When we cleanup the placeholders, before moving the application into the terminating state (Completed or Failed)
we wait for the shim to release the allocations first.
----------------------------------------------------------------
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:
users@infra.apache.org
[GitHub] [incubator-yunikorn-core] kingamarton commented on a change in pull request #260: [YUNIKORN-574] Wait for placeholder cleanup
Posted by GitBox <gi...@apache.org>.
kingamarton commented on a change in pull request #260:
URL: https://github.com/apache/incubator-yunikorn-core/pull/260#discussion_r596917982
##########
File path: pkg/scheduler/objects/application.go
##########
@@ -1303,3 +1281,52 @@ func (sa *Application) notifyRMAllocationAskReleased(rmID string, released []*Al
}
sa.rmEventHandler.HandleEvent(releaseEvent)
}
+
+func (sa *Application) failAppIfPossible() {
+ if sa.isApplicationEmpty(false) {
+ // we need to run this in a different go routine to avoid deadlock in sm
+ // nolint: errcheck
+ go sa.HandleApplicationEvent(FailApplication)
+ }
+}
+
+func (sa *Application) isApplicationEmpty(skipPlaceholders bool) bool {
+ if skipPlaceholders {
+ return resources.IsZero(sa.pending) && resources.IsZero(sa.allocatedResource)
+ }
+ return resources.IsZero(sa.pending) && resources.IsZero(sa.allocatedResource) && resources.IsZero(sa.allocatedPlaceholder)
+}
+
+// lock free call, this should be called when holding a lock on the application object
+func (sa *Application) handleStateChange() {
Review comment:
I made the changes we discussed about.
I also kept the `func (sa *Application) failAppIfPossible()` function, because I checked the code and when there is a partition removed, we want to fail the application as well, and in this case we might have no allocations, to trigger the transition to Failed state.
----------------------------------------------------------------
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:
users@infra.apache.org
[GitHub] [incubator-yunikorn-core] codecov[bot] edited a comment on pull request #260: [YUNIKORN-574] Wait for placeholder cleanup
Posted by GitBox <gi...@apache.org>.
codecov[bot] edited a comment on pull request #260:
URL: https://github.com/apache/incubator-yunikorn-core/pull/260#issuecomment-801173024
# [Codecov](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260?src=pr&el=h1) Report
> Merging [#260](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260?src=pr&el=desc) (16c08d7) into [master](https://codecov.io/gh/apache/incubator-yunikorn-core/commit/5a1c19e280f66d6cb4fc206a675116260d6f2ff1?el=desc) (5a1c19e) will **increase** coverage by `1.38%`.
> The diff coverage is `67.66%`.
> :exclamation: Current head 16c08d7 differs from pull request most recent head ba84ebf. Consider uploading reports for the commit ba84ebf to get more accurate results
[![Impacted file tree graph](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260/graphs/tree.svg?width=650&height=150&src=pr&token=SB9NrIi3Hy)](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260?src=pr&el=tree)
```diff
@@ Coverage Diff @@
## master #260 +/- ##
==========================================
+ Coverage 63.46% 64.84% +1.38%
==========================================
Files 60 60
Lines 5220 5485 +265
==========================================
+ Hits 3313 3557 +244
- Misses 1747 1760 +13
- Partials 160 168 +8
```
| [Impacted Files](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260?src=pr&el=tree) | Coverage Δ | |
|---|---|---|
| [pkg/scheduler/context.go](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260/diff?src=pr&el=tree#diff-cGtnL3NjaGVkdWxlci9jb250ZXh0Lmdv) | `5.78% <0.00%> (-0.49%)` | :arrow_down: |
| [pkg/scheduler/nodes\_usage\_monitor.go](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260/diff?src=pr&el=tree#diff-cGtnL3NjaGVkdWxlci9ub2Rlc191c2FnZV9tb25pdG9yLmdv) | `0.00% <0.00%> (ø)` | |
| [pkg/scheduler/objects/allocation.go](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260/diff?src=pr&el=tree#diff-cGtnL3NjaGVkdWxlci9vYmplY3RzL2FsbG9jYXRpb24uZ28=) | `100.00% <ø> (ø)` | |
| [pkg/scheduler/partition\_manager.go](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260/diff?src=pr&el=tree#diff-cGtnL3NjaGVkdWxlci9wYXJ0aXRpb25fbWFuYWdlci5nbw==) | `20.00% <50.00%> (ø)` | |
| [pkg/scheduler/objects/queue.go](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260/diff?src=pr&el=tree#diff-cGtnL3NjaGVkdWxlci9vYmplY3RzL3F1ZXVlLmdv) | `69.18% <63.63%> (-0.27%)` | :arrow_down: |
| [pkg/scheduler/objects/application.go](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260/diff?src=pr&el=tree#diff-cGtnL3NjaGVkdWxlci9vYmplY3RzL2FwcGxpY2F0aW9uLmdv) | `55.79% <65.07%> (+6.88%)` | :arrow_up: |
| [pkg/scheduler/objects/node.go](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260/diff?src=pr&el=tree#diff-cGtnL3NjaGVkdWxlci9vYmplY3RzL25vZGUuZ28=) | `81.98% <75.00%> (+0.16%)` | :arrow_up: |
| [pkg/scheduler/partition.go](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260/diff?src=pr&el=tree#diff-cGtnL3NjaGVkdWxlci9wYXJ0aXRpb24uZ28=) | `72.53% <82.95%> (+6.49%)` | :arrow_up: |
| [pkg/webservice/handlers.go](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260/diff?src=pr&el=tree#diff-cGtnL3dlYnNlcnZpY2UvaGFuZGxlcnMuZ28=) | `57.00% <92.00%> (+2.86%)` | :arrow_up: |
| [pkg/common/resources/resources.go](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260/diff?src=pr&el=tree#diff-cGtnL2NvbW1vbi9yZXNvdXJjZXMvcmVzb3VyY2VzLmdv) | `96.22% <94.28%> (+0.19%)` | :arrow_up: |
| ... and [5 more](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260/diff?src=pr&el=tree-more) | |
------
[Continue to review full report at Codecov](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260?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/incubator-yunikorn-core/pull/260?src=pr&el=footer). Last update [4dda217...ba84ebf](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260?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:
users@infra.apache.org
[GitHub] [incubator-yunikorn-core] codecov[bot] commented on pull request #260: [YUNIKORN-574] Wait for placeholder cleanup
Posted by GitBox <gi...@apache.org>.
codecov[bot] commented on pull request #260:
URL: https://github.com/apache/incubator-yunikorn-core/pull/260#issuecomment-801173024
# [Codecov](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260?src=pr&el=h1) Report
> Merging [#260](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260?src=pr&el=desc) (16c08d7) into [master](https://codecov.io/gh/apache/incubator-yunikorn-core/commit/5a1c19e280f66d6cb4fc206a675116260d6f2ff1?el=desc) (5a1c19e) will **increase** coverage by `1.38%`.
> The diff coverage is `67.66%`.
[![Impacted file tree graph](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260/graphs/tree.svg?width=650&height=150&src=pr&token=SB9NrIi3Hy)](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260?src=pr&el=tree)
```diff
@@ Coverage Diff @@
## master #260 +/- ##
==========================================
+ Coverage 63.46% 64.84% +1.38%
==========================================
Files 60 60
Lines 5220 5485 +265
==========================================
+ Hits 3313 3557 +244
- Misses 1747 1760 +13
- Partials 160 168 +8
```
| [Impacted Files](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260?src=pr&el=tree) | Coverage Δ | |
|---|---|---|
| [pkg/scheduler/context.go](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260/diff?src=pr&el=tree#diff-cGtnL3NjaGVkdWxlci9jb250ZXh0Lmdv) | `5.78% <0.00%> (-0.49%)` | :arrow_down: |
| [pkg/scheduler/nodes\_usage\_monitor.go](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260/diff?src=pr&el=tree#diff-cGtnL3NjaGVkdWxlci9ub2Rlc191c2FnZV9tb25pdG9yLmdv) | `0.00% <0.00%> (ø)` | |
| [pkg/scheduler/objects/allocation.go](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260/diff?src=pr&el=tree#diff-cGtnL3NjaGVkdWxlci9vYmplY3RzL2FsbG9jYXRpb24uZ28=) | `100.00% <ø> (ø)` | |
| [pkg/scheduler/partition\_manager.go](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260/diff?src=pr&el=tree#diff-cGtnL3NjaGVkdWxlci9wYXJ0aXRpb25fbWFuYWdlci5nbw==) | `20.00% <50.00%> (ø)` | |
| [pkg/scheduler/objects/queue.go](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260/diff?src=pr&el=tree#diff-cGtnL3NjaGVkdWxlci9vYmplY3RzL3F1ZXVlLmdv) | `69.18% <63.63%> (-0.27%)` | :arrow_down: |
| [pkg/scheduler/objects/application.go](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260/diff?src=pr&el=tree#diff-cGtnL3NjaGVkdWxlci9vYmplY3RzL2FwcGxpY2F0aW9uLmdv) | `55.79% <65.07%> (+6.88%)` | :arrow_up: |
| [pkg/scheduler/objects/node.go](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260/diff?src=pr&el=tree#diff-cGtnL3NjaGVkdWxlci9vYmplY3RzL25vZGUuZ28=) | `81.98% <75.00%> (+0.16%)` | :arrow_up: |
| [pkg/scheduler/partition.go](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260/diff?src=pr&el=tree#diff-cGtnL3NjaGVkdWxlci9wYXJ0aXRpb24uZ28=) | `72.53% <82.95%> (+6.49%)` | :arrow_up: |
| [pkg/webservice/handlers.go](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260/diff?src=pr&el=tree#diff-cGtnL3dlYnNlcnZpY2UvaGFuZGxlcnMuZ28=) | `57.00% <92.00%> (+2.86%)` | :arrow_up: |
| [pkg/common/resources/resources.go](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260/diff?src=pr&el=tree#diff-cGtnL2NvbW1vbi9yZXNvdXJjZXMvcmVzb3VyY2VzLmdv) | `96.22% <94.28%> (+0.19%)` | :arrow_up: |
| ... and [5 more](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260/diff?src=pr&el=tree-more) | |
------
[Continue to review full report at Codecov](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260?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/incubator-yunikorn-core/pull/260?src=pr&el=footer). Last update [4dda217...16c08d7](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260?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:
users@infra.apache.org
[GitHub] [incubator-yunikorn-core] yangwwei merged pull request #260: [YUNIKORN-574] Wait for placeholder cleanup
Posted by GitBox <gi...@apache.org>.
yangwwei merged pull request #260:
URL: https://github.com/apache/incubator-yunikorn-core/pull/260
--
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:
users@infra.apache.org
[GitHub] [incubator-yunikorn-core] wilfred-s commented on a change in pull request #260: [YUNIKORN-574] Wait for placeholder cleanup
Posted by GitBox <gi...@apache.org>.
wilfred-s commented on a change in pull request #260:
URL: https://github.com/apache/incubator-yunikorn-core/pull/260#discussion_r596645108
##########
File path: pkg/scheduler/objects/application_state_test.go
##########
@@ -39,10 +42,11 @@ func TestAcceptStateTransition(t *testing.T) {
assert.Assert(t, err != nil, "error expected accepted to rejected")
assert.Equal(t, app.CurrentState(), Accepted.String())
- // accepted to killed
+ // accepted to failed
err = app.HandleApplicationEvent(FailApplication)
assert.NilError(t, err, "no error expected accepted to killed")
Review comment:
message should be failed
##########
File path: pkg/webservice/handlers_test.go
##########
@@ -690,9 +692,9 @@ func TestPartitions(t *testing.T) {
assert.Assert(t, err, "no error expected new to accepted")
// app4: accepted to wait
- err = app4.HandleApplicationEvent(objects.WaitApplication)
+ err = app4.HandleApplicationEvent(objects.CompleteApplication)
Review comment:
We have `Application.SetState()` instead of moving from state to state we can just set whatever we want/need. Simplifies this codes and we're not dependent on the state ordering.
##########
File path: pkg/scheduler/objects/application_state_test.go
##########
@@ -87,7 +91,8 @@ func TestStartStateTransition(t *testing.T) {
// start to killed
err = appInfo.HandleApplicationEvent(FailApplication)
assert.NilError(t, err, "no error expected starting to killed")
Review comment:
comment and message should be updated to failed
multiple references to killed left, not tagged all of them
##########
File path: pkg/scheduler/objects/application.go
##########
@@ -1303,3 +1281,52 @@ func (sa *Application) notifyRMAllocationAskReleased(rmID string, released []*Al
}
sa.rmEventHandler.HandleEvent(releaseEvent)
}
+
+func (sa *Application) failAppIfPossible() {
+ if sa.isApplicationEmpty(false) {
+ // we need to run this in a different go routine to avoid deadlock in sm
+ // nolint: errcheck
+ go sa.HandleApplicationEvent(FailApplication)
+ }
+}
+
+func (sa *Application) isApplicationEmpty(skipPlaceholders bool) bool {
+ if skipPlaceholders {
+ return resources.IsZero(sa.pending) && resources.IsZero(sa.allocatedResource)
+ }
+ return resources.IsZero(sa.pending) && resources.IsZero(sa.allocatedResource) && resources.IsZero(sa.allocatedPlaceholder)
+}
+
+// lock free call, this should be called when holding a lock on the application object
+func (sa *Application) handleStateChange() {
Review comment:
This looks really complex. We have discussed this off-line and come to a nicer solution.
Please update with the discussed changes.
##########
File path: pkg/scheduler/objects/application_state.go
##########
@@ -148,6 +152,9 @@ func NewAppState() *fsm.FSM {
app.executeTerminatedCallback()
app.clearPlaceholderTimer()
},
+ fmt.Sprintf("enter_%s", Failing.String()): func(event *fsm.Event) {
+ event.Args[0].(*Application).failAppIfPossible()
+ },
fmt.Sprintf("enter_%s", Failed.String()): func(event *fsm.Event) {
app := setTimer(completedTimeout, event, ExpireApplication)
Review comment:
rename to `terminatedTimeout` or something like that as it is not just used for completed but also failed.
##########
File path: pkg/scheduler/objects/application_state.go
##########
@@ -127,7 +131,7 @@ func NewAppState() *fsm.FSM {
fmt.Sprintf("enter_%s", Starting.String()): func(event *fsm.Event) {
setTimer(startingTimeout, event, RunApplication)
},
- fmt.Sprintf("enter_%s", Waiting.String()): func(event *fsm.Event) {
+ fmt.Sprintf("enter_%s", Completing.String()): func(event *fsm.Event) {
setTimer(waitingTimeout, event, CompleteApplication)
Review comment:
rename to completingTimeout (also in the application)
----------------------------------------------------------------
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:
users@infra.apache.org
[GitHub] [incubator-yunikorn-core] yangwwei commented on pull request #260: [YUNIKORN-574] Wait for placeholder cleanup
Posted by GitBox <gi...@apache.org>.
yangwwei commented on pull request #260:
URL: https://github.com/apache/incubator-yunikorn-core/pull/260#issuecomment-802326981
Thanks for addressing the review comments. LGTM, I'll merge this.
--
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:
users@infra.apache.org
[GitHub] [incubator-yunikorn-core] codecov[bot] edited a comment on pull request #260: [YUNIKORN-574] Wait for placeholder cleanup
Posted by GitBox <gi...@apache.org>.
codecov[bot] edited a comment on pull request #260:
URL: https://github.com/apache/incubator-yunikorn-core/pull/260#issuecomment-801173024
# [Codecov](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260?src=pr&el=h1) Report
> Merging [#260](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260?src=pr&el=desc) (ba84ebf) into [master](https://codecov.io/gh/apache/incubator-yunikorn-core/commit/5a1c19e280f66d6cb4fc206a675116260d6f2ff1?el=desc) (5a1c19e) will **increase** coverage by `1.30%`.
> The diff coverage is `67.17%`.
[![Impacted file tree graph](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260/graphs/tree.svg?width=650&height=150&src=pr&token=SB9NrIi3Hy)](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260?src=pr&el=tree)
```diff
@@ Coverage Diff @@
## master #260 +/- ##
==========================================
+ Coverage 63.46% 64.77% +1.30%
==========================================
Files 60 60
Lines 5220 5479 +259
==========================================
+ Hits 3313 3549 +236
- Misses 1747 1761 +14
- Partials 160 169 +9
```
| [Impacted Files](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260?src=pr&el=tree) | Coverage Δ | |
|---|---|---|
| [pkg/scheduler/context.go](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260/diff?src=pr&el=tree#diff-cGtnL3NjaGVkdWxlci9jb250ZXh0Lmdv) | `5.78% <0.00%> (-0.49%)` | :arrow_down: |
| [pkg/scheduler/nodes\_usage\_monitor.go](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260/diff?src=pr&el=tree#diff-cGtnL3NjaGVkdWxlci9ub2Rlc191c2FnZV9tb25pdG9yLmdv) | `0.00% <0.00%> (ø)` | |
| [pkg/scheduler/objects/allocation.go](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260/diff?src=pr&el=tree#diff-cGtnL3NjaGVkdWxlci9vYmplY3RzL2FsbG9jYXRpb24uZ28=) | `100.00% <ø> (ø)` | |
| [pkg/scheduler/partition\_manager.go](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260/diff?src=pr&el=tree#diff-cGtnL3NjaGVkdWxlci9wYXJ0aXRpb25fbWFuYWdlci5nbw==) | `20.00% <50.00%> (ø)` | |
| [pkg/scheduler/objects/application.go](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260/diff?src=pr&el=tree#diff-cGtnL3NjaGVkdWxlci9vYmplY3RzL2FwcGxpY2F0aW9uLmdv) | `55.07% <62.71%> (+6.16%)` | :arrow_up: |
| [pkg/scheduler/objects/queue.go](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260/diff?src=pr&el=tree#diff-cGtnL3NjaGVkdWxlci9vYmplY3RzL3F1ZXVlLmdv) | `69.18% <63.63%> (-0.27%)` | :arrow_down: |
| [pkg/scheduler/objects/node.go](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260/diff?src=pr&el=tree#diff-cGtnL3NjaGVkdWxlci9vYmplY3RzL25vZGUuZ28=) | `81.98% <75.00%> (+0.16%)` | :arrow_up: |
| [pkg/scheduler/partition.go](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260/diff?src=pr&el=tree#diff-cGtnL3NjaGVkdWxlci9wYXJ0aXRpb24uZ28=) | `72.53% <82.95%> (+6.49%)` | :arrow_up: |
| [pkg/webservice/handlers.go](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260/diff?src=pr&el=tree#diff-cGtnL3dlYnNlcnZpY2UvaGFuZGxlcnMuZ28=) | `57.00% <92.00%> (+2.86%)` | :arrow_up: |
| [pkg/common/resources/resources.go](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260/diff?src=pr&el=tree#diff-cGtnL2NvbW1vbi9yZXNvdXJjZXMvcmVzb3VyY2VzLmdv) | `96.22% <94.28%> (+0.19%)` | :arrow_up: |
| ... and [5 more](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260/diff?src=pr&el=tree-more) | |
------
[Continue to review full report at Codecov](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260?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/incubator-yunikorn-core/pull/260?src=pr&el=footer). Last update [4dda217...ba84ebf](https://codecov.io/gh/apache/incubator-yunikorn-core/pull/260?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:
users@infra.apache.org