Andrey Zagrebin created FLINK-20290:
---------------------------------------

             Summary: Duplicated output in FileSource continuous ITCase with TM 
failover
                 Key: FLINK-20290
                 URL: https://issues.apache.org/jira/browse/FLINK-20290
             Project: Flink
          Issue Type: Bug
          Components: Connectors / FileSystem
    Affects Versions: 1.12.0
            Reporter: Andrey Zagrebin


If FileSourceTextLinesITCase::testContinuousTextFileSource includes TM restarts 
(after failing TM with TestingMiniCluster::terminateTaskExecutor, see 
testContinuousTextFileSourceWithTaskManagerFailover in 
[branch|https://github.com/azagrebin/flink/tree/FLINK-20118-it]) then sometimes 
I observe duplicated lines in the output after running the test suite 5-10 
times in IDE:
{code:java}
Test 
testContinuousTextFileSourceWithTaskManagerFailover(org.apache.flink.connector.file.src.FileSourceTextLinesITCase)
 failed with:
java.lang.AssertionError: 
Expected: ["And by opposing end them?--To die,--to sleep,--", "And enterprises 
of great pith and moment,", "And lose the name of action.--Soft you now!", "And 
makes us rather bear those ills we have", "And thus the native hue of 
resolution", "Be all my sins remember'd.", "But that the dread of something 
after death,--", "Devoutly to be wish'd. To die,--to sleep;--", "For in that 
sleep of death what dreams may come,", "For who would bear the whips and scorns 
of time,", "Is sicklied o'er with the pale cast of thought;", "Must give us 
pause: there's the respect", "No more; and by a sleep to say we end", "No 
traveller returns,--puzzles the will,", "Or to take arms against a sea of 
troubles,", "Than fly to others that we know not of?", "That flesh is heir 
to,--'tis a consummation", "That makes calamity of so long life;", "That 
patient merit of the unworthy takes,", "The fair Ophelia!--Nymph, in thy 
orisons", "The heartache, and the thousand natural shocks", "The insolence of 
office, and the spurns", "The oppressor's wrong, the proud man's contumely,", 
"The pangs of despis'd love, the law's delay,", "The slings and arrows of 
outrageous fortune", "The undiscover'd country, from whose bourn", "Thus 
conscience does make cowards of us all;", "To be, or not to be,--that is the 
question:--", "To grunt and sweat under a weary life,", "To sleep! perchance to 
dream:--ay, there's the rub;", "When he himself might his quietus make", "When 
we have shuffled off this mortal coil,", "Whether 'tis nobler in the mind to 
suffer", "With a bare bodkin? who would these fardels bear,", "With this 
regard, their currents turn awry,"]
     but: was ["And by opposing end them?--To die,--to sleep,--", "And 
enterprises of great pith and moment,", "And lose the name of action.--Soft you 
now!", "And makes us rather bear those ills we have", "And thus the native hue 
of resolution", "Be all my sins remember'd.", "But that the dread of something 
after death,--", "Devoutly to be wish'd. To die,--to sleep;--", "Devoutly to be 
wish'd. To die,--to sleep;--", "For in that sleep of death what dreams may 
come,", "For who would bear the whips and scorns of time,", "Is sicklied o'er 
with the pale cast of thought;", "Must give us pause: there's the respect", "No 
more; and by a sleep to say we end", "No more; and by a sleep to say we end", 
"No traveller returns,--puzzles the will,", "Or to take arms against a sea of 
troubles,", "Than fly to others that we know not of?", "That flesh is heir 
to,--'tis a consummation", "That flesh is heir to,--'tis a consummation", "That 
makes calamity of so long life;", "The fair Ophelia!--Nymph, in thy orisons", 
"The heartache, and the thousand natural shocks", "The heartache, and the 
thousand natural shocks", "The slings and arrows of outrageous fortune", "The 
undiscover'd country, from whose bourn", "Thus conscience does make cowards of 
us all;", "To be, or not to be,--that is the question:--", "To grunt and sweat 
under a weary life,", "To sleep! perchance to dream:--ay, there's the rub;", 
"To sleep! perchance to dream:--ay, there's the rub;", "When we have shuffled 
off this mortal coil,", "Whether 'tis nobler in the mind to suffer", "With a 
bare bodkin? who would these fardels bear,", "With this regard, their currents 
turn awry,"]
        at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:20)
        at org.junit.Assert.assertThat(Assert.java:956)
        at org.junit.Assert.assertThat(Assert.java:923)
        at 
org.apache.flink.connector.file.src.FileSourceTextLinesITCase.verifyResult(FileSourceTextLinesITCase.java:198)
        at 
org.apache.flink.connector.file.src.FileSourceTextLinesITCase.testContinuousTextFileSource(FileSourceTextLinesITCase.java:151)
        at 
org.apache.flink.connector.file.src.FileSourceTextLinesITCase.testContinuousTextFileSourceWithTaskManagerFailover(FileSourceTextLinesITCase.java:109)
        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 
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
        at 
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
        at 
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
        at 
org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
        at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:55)
        at org.junit.rules.RunRules.evaluate(RunRules.java:20)
        at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
        at 
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
        at 
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
        at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
        at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
        at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
        at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
        at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
        at org.junit.rules.ExternalResource$1.evaluate(ExternalResource.java:48)
        at org.junit.rules.RunRules.evaluate(RunRules.java:20)
        at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
        at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
        at 
com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:68)
        at 
com.intellij.rt.execution.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:47)
        at 
com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:242)
        at 
com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:70)
{code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to