You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by GitBox <gi...@apache.org> on 2020/09/27 08:20:17 UTC
[GitHub] [flink] curcur opened a new pull request #13490: Single task subpartition reconnection 2
curcur opened a new pull request #13490:
URL: https://github.com/apache/flink/pull/13490
## What is the purpose of the change
- This PR includes a simple individual scheduler that can restart the sink for sink failure, so that we can test end-2-end for reconnection + partial partition clean-up;
- I've tested multiple cases including the case `a very long record spanning over more than one buffer`; `short record`; reading from the head of a buffer consumer; reading from the middle of a buffer consumer; and e.t.c. They all work perfectly.
- I've also rebased upon Kevin's change on RecordWriter's API, and Zhuzhu's change on pipelinedRegionSchedulingStrategy.
- #13476 handle partial flag when sub-partition is partial
- #13456 Single task add a partial flag in buffer
## Brief change log
*(for example:)*
- *The TaskInfo is stored in the blob store on job creation time as a persistent artifact*
- *Deployments RPC transmits only the blob storage reference*
- *TaskManagers retrieve the TaskInfo from the blob cache*
## Verifying this change
*(Please pick either of the following options)*
This change is a trivial rework / code cleanup without any test coverage.
*(or)*
This change is already covered by existing tests, such as *(please describe tests)*.
*(or)*
This change added tests and can be verified as follows:
*(example:)*
- *Added integration tests for end-to-end deployment with large payloads (100MB)*
- *Extended integration test for recovery after master (JobManager) failure*
- *Added test that validates that TaskInfo is transferred only once across recoveries*
- *Manually verified the change by running a 4 node cluser with 2 JobManagers and 4 TaskManagers, a stateful streaming program, and killing one JobManager and two TaskManagers during the execution, verifying that recovery happens correctly.*
## Does this pull request potentially affect one of the following parts:
- Dependencies (does it add or upgrade a dependency): (yes / no)
- The public API, i.e., is any changed class annotated with `@Public(Evolving)`: (yes / no)
- The serializers: (yes / no / don't know)
- The runtime per-record code paths (performance sensitive): (yes / no / don't know)
- Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn/Mesos, ZooKeeper: (yes / no / don't know)
- The S3 file system connector: (yes / no / don't know)
## Documentation
- Does this pull request introduce a new feature? (yes / no)
- If yes, how is the feature documented? (not applicable / docs / JavaDocs / not documented)
----------------------------------------------------------------
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] [flink] curcur commented on a change in pull request #13490: Single task subpartition reconnection 2
Posted by GitBox <gi...@apache.org>.
curcur commented on a change in pull request #13490:
URL: https://github.com/apache/flink/pull/13490#discussion_r497283338
##########
File path: flink-runtime/src/main/java/org/apache/flink/runtime/executiongraph/failover/flip1/RestartIndividualFailoverStrategy.java
##########
@@ -0,0 +1,41 @@
+package org.apache.flink.runtime.executiongraph.failover.flip1;
+
+import org.apache.flink.runtime.scheduler.strategy.ExecutionVertexID;
+import org.apache.flink.runtime.scheduler.strategy.SchedulingTopology;
+
+import org.apache.flink.shaded.guava18.com.google.common.collect.ImmutableSet;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.util.Set;
+
+public class RestartIndividualFailoverStrategy implements FailoverStrategy {
Review comment:
That's right. This is for end-2-end testing purpose.
----------------------------------------------------------------
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] [flink] AHeise commented on a change in pull request #13490: Single task subpartition reconnection 2
Posted by GitBox <gi...@apache.org>.
AHeise commented on a change in pull request #13490:
URL: https://github.com/apache/flink/pull/13490#discussion_r496596088
##########
File path: flink-runtime/src/main/java/org/apache/flink/runtime/executiongraph/failover/flip1/RestartIndividualFailoverStrategy.java
##########
@@ -0,0 +1,41 @@
+package org.apache.flink.runtime.executiongraph.failover.flip1;
+
+import org.apache.flink.runtime.scheduler.strategy.ExecutionVertexID;
+import org.apache.flink.runtime.scheduler.strategy.SchedulingTopology;
+
+import org.apache.flink.shaded.guava18.com.google.common.collect.ImmutableSet;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.util.Set;
+
+public class RestartIndividualFailoverStrategy implements FailoverStrategy {
Review comment:
As far as I have understood it, this strategy is only usable for failures in sinks (or sink-like nodes) yet, right?
For the final PR, we need to make sure that users do not pick it incorrectly. Maybe it's even too early to introduce it at the current point in 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:
users@infra.apache.org
[GitHub] [flink] flinkbot commented on pull request #13490: Single task subpartition reconnection 2
Posted by GitBox <gi...@apache.org>.
flinkbot commented on pull request #13490:
URL: https://github.com/apache/flink/pull/13490#issuecomment-699603423
Thanks a lot for your contribution to the Apache Flink project. I'm the @flinkbot. I help the community
to review your pull request. We will use this comment to track the progress of the review.
## Automated Checks
Last check on commit 67d192ee1a176d342133b8d9a2887a3abba1c214 (Sun Sep 27 08:22:18 UTC 2020)
**Warnings:**
* No documentation files were touched! Remember to keep the Flink docs up to date!
* **Invalid pull request title: No valid Jira ID provided**
<sub>Mention the bot in a comment to re-run the automated checks.</sub>
## Review Progress
* ❓ 1. The [description] looks good.
* ❓ 2. There is [consensus] that the contribution should go into to Flink.
* ❓ 3. Needs [attention] from.
* ❓ 4. The change fits into the overall [architecture].
* ❓ 5. Overall code [quality] is good.
Please see the [Pull Request Review Guide](https://flink.apache.org/contributing/reviewing-prs.html) for a full explanation of the review process.<details>
The Bot is tracking the review progress through labels. Labels are applied according to the order of the review items. For consensus, approval by a Flink committer of PMC member is required <summary>Bot commands</summary>
The @flinkbot bot supports the following commands:
- `@flinkbot approve description` to approve one or more aspects (aspects: `description`, `consensus`, `architecture` and `quality`)
- `@flinkbot approve all` to approve all aspects
- `@flinkbot approve-until architecture` to approve everything until `architecture`
- `@flinkbot attention @username1 [@username2 ..]` to require somebody's attention
- `@flinkbot disapprove architecture` to remove an approval you gave earlier
</details>
----------------------------------------------------------------
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] [flink] curcur closed pull request #13490: Single task subpartition reconnection 2
Posted by GitBox <gi...@apache.org>.
curcur closed pull request #13490:
URL: https://github.com/apache/flink/pull/13490
----------------------------------------------------------------
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] [flink] flinkbot commented on pull request #13490: Single task subpartition reconnection 2
Posted by GitBox <gi...@apache.org>.
flinkbot commented on pull request #13490:
URL: https://github.com/apache/flink/pull/13490#issuecomment-699605215
<!--
Meta data
{
"version" : 1,
"metaDataEntries" : [ {
"hash" : "67d192ee1a176d342133b8d9a2887a3abba1c214",
"status" : "UNKNOWN",
"url" : "TBD",
"triggerID" : "67d192ee1a176d342133b8d9a2887a3abba1c214",
"triggerType" : "PUSH"
} ]
}-->
## CI report:
* 67d192ee1a176d342133b8d9a2887a3abba1c214 UNKNOWN
<details>
<summary>Bot commands</summary>
The @flinkbot bot supports the following commands:
- `@flinkbot run travis` re-run the last Travis build
- `@flinkbot run azure` re-run the last Azure build
</details>
----------------------------------------------------------------
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] [flink] flinkbot edited a comment on pull request #13490: Single task subpartition reconnection 2
Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #13490:
URL: https://github.com/apache/flink/pull/13490#issuecomment-699605215
<!--
Meta data
{
"version" : 1,
"metaDataEntries" : [ {
"hash" : "67d192ee1a176d342133b8d9a2887a3abba1c214",
"status" : "FAILURE",
"url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=6997",
"triggerID" : "67d192ee1a176d342133b8d9a2887a3abba1c214",
"triggerType" : "PUSH"
} ]
}-->
## CI report:
* 67d192ee1a176d342133b8d9a2887a3abba1c214 Azure: [FAILURE](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=6997)
<details>
<summary>Bot commands</summary>
The @flinkbot bot supports the following commands:
- `@flinkbot run travis` re-run the last Travis build
- `@flinkbot run azure` re-run the last Azure build
</details>
----------------------------------------------------------------
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