Skip to content

Release 1.0.3 rc2#8023

Closed
jaxbihani wants to merge 126 commits into
apache:masterfrom
jaxbihani:release-1.0.3-rc2
Closed

Release 1.0.3 rc2#8023
jaxbihani wants to merge 126 commits into
apache:masterfrom
jaxbihani:release-1.0.3-rc2

Conversation

@jaxbihani

Copy link
Copy Markdown

What is the purpose of the change

(For example: This pull request makes task deployment go through the blob server, rather than through RPC. That way we avoid re-transferring them on each deployment (during recovery).)

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, 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)

uce and others added 30 commits February 26, 2016 20:56
…h restart

Temporary work around to restore initial state on failure during recovery as
required by a user. Will be superseded by FLINK-3397 with better handling of
checkpoint and savepoint restoring.

A failure during recovery resulted in restarting a job without its savepoint
state. This temporary work around makes sure that if the savepoint coordinator
ever restored a savepoint and there was no checkpoint after the savepoint,
the savepoint state will be restored again.

This closes apache#1720.
This also includes some minor cleanups

This closes apache#1689
The new flink-gelly-examples module contains all Java and Scala Gelly examples. The module
contains compile scope dependencies on flink-java, flink-scala and flink-clients so that
the examples can be conveniently run from within the IDE.
This makes AllWindowedStream.fold() take constant space, just like the
keyed WindowOperator.

Also this adds a new test case in EventTimeAllWindowCheckpointingITCase
to verify that the FoldingWindowBuffer works.

This also renames the preexisting window buffers to ReducingWindowBuffer
and ListWindowBuffer to make the naming scheme consistent.
This implicitly adds KeyedStream.transform() and also explicitly
ConnectedStreams.transform().

This also removes the transform exclusions from the API completeness
tests.
The current flink-gelly-examples artifact id wrongly used an underscore to separate
examples from flink-gelly. This commit replaces the underscore with an hyphen.

This closes apache#1731.
This enforces that the user always has to specify keys for both inputs
before .window() can be called.
…ng time

This brings it more in line with *ProcessingTimeWindows and makes it
clear what type of window assigner it is.

The old name, i.e. SlidingTimeWindows and TumblingTimeWindows is still
available but deprecated.
rmetzger and others added 25 commits April 8, 2016 10:40
…NoBroker() will pass before JUnit timeout

This closes apache#1864
…o docs

Java 8 update 11 introduced a stricter bytecode verifier that leads
to failures in unit tests that use the PowerMock runner. The tests
run correctly in Java 8u51 or above.
The NFA and the SharedBuffer treated window borders differently. Therefore, it was
possible that events were pruned even though the NFA still contained references to
these events. Now CEP windows are left inclusive and right exclusive.
* Edit config.sh
* Document the newly defined log directory configuration key

This closes apache#1837
Backport of 8330539.

`CheckpointStatsTracker` was instantiated in `ExecutionGraph#enableSnapshotCheckpointing`,
where the Flink configuration is not available to parse the configuration.

Instead of instantiating the `CheckpointStatsTracker` in the `ExecutionGraph`
method, we directly pass it to it.
This PR terminates the ExecutionGraphs properly without restarts when the JobManager calls
cancelAndClearEverything. It is achieved by allowing the method to be only called with an
SuppressRestartsException. The SuppressRestartsException will disable the restart strategy of
the respective ExecutionGraph. This is important because the root cause could be a different
exception. In order to avoid race conditions, the restart strategy has to be checked twice
whether it allwos to restart the job: Once before and once after the job has transitioned to
the state RESTARTING. This avoids that ExecutionGraphs can become an orphan.

Furhtermore, this PR fixes the problem that the default restart strategy is shared by multiple
jobs. The problem is solved by introducing a RestartStrategyFactory which creates for every
job its own instance of a RestartStrategy.

Fix LeaderChangeJobRecoveryTest case

This closes apache#1923.
We create random files on initialization to check whether we can write
to the data directory. These files are also removed now.
@jaxbihani jaxbihani closed this Mar 20, 2019
@flinkbot

Copy link
Copy Markdown
Collaborator

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.

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 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 Bot commands
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

@jaxbihani

Copy link
Copy Markdown
Author

Accidentally created, my bad, sorry.

@jaxbihani jaxbihani deleted the release-1.0.3-rc2 branch March 20, 2019 13:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.