[ 
https://issues.apache.org/jira/browse/CASSANDRA-15313?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17031282#comment-17031282
 ] 

David Capwell commented on CASSANDRA-15313:
-------------------------------------------

"it" is the failing case; sorry for the confusion.  By lowering the examples we 
will need to run the test more before we see the failing case.

bq. I ran at 4G and it still failed at 200 examples (I didn't try any other 
sizes though)

This then sounds like the generators produce too much garbage. I took a stab at 
fixing it and attaching a hack patch to the JIRA to show; basically move away 
from String since that produces a ton of garbage.  With the patch and a failing 
test case, the test completes in 200ms (900ms if you run in isolation).

[~samt] don't know the test well but when I run it (not patched) in a debugger 
with 1000 examples, I see the call 
https://github.com/apache/cassandra/blob/trunk/test/unit/org/apache/cassandra/transport/frame/checksum/ChecksummingTransformerTest.java#L118
 2 times; so only 2 out of 1k runs hits that check.  My patch doesn't hit it 
(after a few runs), but could always tweak the bytes to match the expected 
input.

> Fix flaky - ChecksummingTransformerTest - 
> org.apache.cassandra.transport.frame.checksum.ChecksummingTransformerTest
> -------------------------------------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-15313
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-15313
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Test/dtest
>            Reporter: Vinay Chella
>            Assignee: Brandon Williams
>            Priority: Normal
>             Fix For: 4.0-alpha
>
>
> During the recent runs, this test appears to be flaky.
> Example failure: 
> [https://circleci.com/gh/vinaykumarchella/cassandra/459#tests/containers/94]
> corruptionCausesFailure-compression - 
> org.apache.cassandra.transport.frame.checksum.ChecksummingTransformerTest
> {code:java}
> java.lang.OutOfMemoryError: GC overhead limit exceeded
>       at java.nio.HeapByteBuffer.<init>(HeapByteBuffer.java:57)
>       at java.nio.ByteBuffer.allocate(ByteBuffer.java:335)
>       at org.quicktheories.impl.Precursor.<init>(Precursor.java:17)
>       at 
> org.quicktheories.impl.ConcreteDetachedSource.<init>(ConcreteDetachedSource.java:8)
>       at 
> org.quicktheories.impl.ConcreteDetachedSource.detach(ConcreteDetachedSource.java:23)
>       at org.quicktheories.generators.Retry.generate(CodePoints.java:51)
>       at 
> org.quicktheories.generators.Generate.lambda$intArrays$10(Generate.java:190)
>       at 
> org.quicktheories.generators.Generate$$Lambda$17/1847008471.generate(Unknown 
> Source)
>       at org.quicktheories.core.DescribingGenerator.generate(Gen.java:255)
>       at org.quicktheories.core.Gen.lambda$map$0(Gen.java:36)
>       at org.quicktheories.core.Gen$$Lambda$20/71399214.generate(Unknown 
> Source)
>       at org.quicktheories.core.Gen.lambda$map$0(Gen.java:36)
>       at org.quicktheories.core.Gen$$Lambda$20/71399214.generate(Unknown 
> Source)
>       at org.quicktheories.core.Gen.lambda$mix$10(Gen.java:184)
>       at org.quicktheories.core.Gen$$Lambda$45/802243390.generate(Unknown 
> Source)
>       at org.quicktheories.core.Gen.lambda$flatMap$5(Gen.java:93)
>       at org.quicktheories.core.Gen$$Lambda$48/363509958.generate(Unknown 
> Source)
>       at 
> org.quicktheories.dsl.TheoryBuilder4.lambda$prgnToTuple$12(TheoryBuilder4.java:188)
>       at 
> org.quicktheories.dsl.TheoryBuilder4$$Lambda$40/2003496028.generate(Unknown 
> Source)
>       at org.quicktheories.core.DescribingGenerator.generate(Gen.java:255)
>       at org.quicktheories.core.FilteredGenerator.generate(Gen.java:225)
>       at org.quicktheories.core.Gen.lambda$map$0(Gen.java:36)
>       at org.quicktheories.core.Gen$$Lambda$20/71399214.generate(Unknown 
> Source)
>       at org.quicktheories.impl.Core.generate(Core.java:150)
>       at org.quicktheories.impl.Core.shrink(Core.java:103)
>       at org.quicktheories.impl.Core.run(Core.java:39)
>       at org.quicktheories.impl.TheoryRunner.check(TheoryRunner.java:35)
>       at org.quicktheories.dsl.TheoryBuilder4.check(TheoryBuilder4.java:150)
>       at 
> org.quicktheories.dsl.TheoryBuilder4.checkAssert(TheoryBuilder4.java:162)
>       at 
> org.apache.cassandra.transport.frame.checksum.ChecksummingTransformerTest.corruptionCausesFailure(ChecksummingTransformerTest.java:87)
> {code}



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

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org

Reply via email to