[
https://issues.apache.org/jira/browse/GOBBLIN-1416?focusedWorklogId=569184&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-569184
]
ASF GitHub Bot logged work on GOBBLIN-1416:
-------------------------------------------
Author: ASF GitHub Bot
Created on: 19/Mar/21 23:28
Start Date: 19/Mar/21 23:28
Worklog Time Spent: 10m
Work Description: autumnust commented on a change in pull request #3250:
URL: https://github.com/apache/gobblin/pull/3250#discussion_r598020976
##########
File path:
gobblin-runtime/src/main/java/org/apache/gobblin/runtime/GobblinMultiTaskAttempt.java
##########
@@ -384,10 +394,14 @@ private boolean taskSuccessfulInPriorAttempt(String
taskId) {
* @return a list of {@link Task}s from the {@link WorkUnit}s, as well as if
there's a failure in task creation
* which should be handled separately to avoid silently starving on certain
workunit.
*/
- private Pair<List<Task>, Boolean> runWorkUnits(CountUpAndDownLatch
countDownLatch) {
-
+ private synchronized Pair<List<Task>, Boolean>
runWorkUnits(CountUpAndDownLatch countDownLatch) {
List<Task> tasks = Lists.newArrayList();
-
+ //Has the task-attempt already been cancelled? This can happen for
instance when a cancellation has been invoked on
+ // the GobblinMultiTaskAttempt instance (e.g. in the case of Helix task
cancellation) before the Gobblin tasks
+ // have been submitted to the underlying task executor.
+ if (this.stopped.get()) {
Review comment:
It doesn't seem to be enough for synchronization purpose. cancel could
happen after this line and between line 407 and 408.
--
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:
[email protected]
Issue Time Tracking
-------------------
Worklog Id: (was: 569184)
Time Spent: 0.5h (was: 20m)
> Fix a race condition caused by Helix task cancellation being invoked before
> Gobblin task creation
> -------------------------------------------------------------------------------------------------
>
> Key: GOBBLIN-1416
> URL: https://issues.apache.org/jira/browse/GOBBLIN-1416
> Project: Apache Gobblin
> Issue Type: Improvement
> Components: gobblin-cluster
> Affects Versions: 0.16.0
> Reporter: Sudarshan Vasudevan
> Assignee: Hung Tran
> Priority: Major
> Fix For: 0.16.0
>
> Time Spent: 0.5h
> Remaining Estimate: 0h
>
> Invocation of Gobblin Helix task cancellation before underlying Gobblin tasks
> have been created or submitted to the task executor results in
> GobblinHelixTask#cancel() returning successfully, but without preventing
> future submission of Gobblin tasks to the executor.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)