Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

internal/metamorphic/crossversion/crossversion_test: TestMetaCrossVersion failed #3833

Closed
cockroach-teamcity opened this issue Aug 10, 2024 · 1 comment · Fixed by #3858
Closed

Comments

@cockroach-teamcity
Copy link
Member

cockroach-teamcity commented Aug 10, 2024

internal/metamorphic/crossversion/crossversion_test.TestMetaCrossVersion failed with artifacts on refs/heads/master @ 791b3749feb5:

        iter23.Next("")
        iter27.SetBounds("bwpsxjykc@15", "bwpsxjykc@15")
        iter25.First()
        snap18.Get("uikp@15")
        snap18.Get("bklzg@46")
        iter25.Prev("")
        iter23.First()
        iter23.Prev("")
        iter24.SeekLT("wzro@8", "")
        iter25.Prev("")
        db1.IngestExternalFiles(external0, "pfhlmp" /* start */, "xfdzvesqzfqu" /* end */, "" /* syntheticSuffix */, "" /* syntheticPrefix */)
        snap18.Get("ipyfbzjjkccz@13")
        iter24.SeekGE("uikp@4", "ukqngnbb")
        db1.SingleDelete("wintgpfpc", false /* maybeReplaceDelete */)
        iter21.NextPrefix()
        snap18.Get("njigqiwnfw")
        db1.IngestExternalFiles(external0, "xfdzvesqzfqu" /* start */, "ybglsmtq" /* end */, "" /* syntheticSuffix */, "" /* syntheticPrefix */)
        iter27.Next("")
        iter26.Next("")
        iter27.Next("")
        db1.Set("ybglsmtq@34", "k")
        iter27.SeekPrefixGE("zqpknumxae@3")
        db1.IngestExternalFiles(external0, "tfja" /* start */, "ybglsmtq" /* end */, "@55" /* syntheticSuffix */, "" /* syntheticPrefix */, external0, "jaztfja" /* start */, "jazybglsmtq" /* end */, "" /* syntheticSuffix */, "jaz" /* syntheticPrefix */)
        db1.Get("prnyxfvr@8")
        iter27.Last()
        db1.Set("uxwoabffske@14", "h")
        iter26.First()
        iter26.SeekLT("mdwszgxqb@9", "")
        iter26.Prev("")
        iter23.SeekPrefixGE("aweambbwu")
        iter24.InternalNext()
        iter23.SeekGE("ybglsmtq@34", "")
        db1.IngestExternalFiles(external0, "sxowi" /* start */, "uhbbl" /* end */, "@57" /* syntheticSuffix */, "" /* syntheticPrefix */, external0, "stqapnmo" /* start */, "suxwoabffske" /* end */, "" /* syntheticSuffix */, "s" /* syntheticPrefix */, external0, "jshvit" /* start */, "kblx" /* end */, "@56" /* syntheticSuffix */, "" /* syntheticPrefix */, external0, "kblx" /* start */, "stqapnmo" /* end */, "" /* syntheticSuffix */, "" /* syntheticPrefix */)
        iter23.SeekPrefixGE("aweambbwu@9")
        iter25.Next("")
        iter23.SetBounds("mdwszgxqb@23", "ywgse@5")
        db1.Set("aweambbwu@12", "pplmnxxgfldgox")
        iter26.Close()
        iter27.Close()
        iter21.Close()
        iter23.Close()
        iter25.Close()
        iter24.Close()
        snap18.Close()
        snap19.Close()
        db1.Close()
        
        To reduce:  go test ./internal/metamorphic -tags invariants -run 'TestMeta$' --compare "/artifacts/tmp/_tmp/366cdd6e86440d4e9e9c98d28c5c6592/TestMetaCrossVersion1541470195/001/1723281556929389535/master_791b3749_419129674420735526_008/_meta/240810-092056.1993592836014/{standard-000,random-014}" --try-to-reduce -v
        
        --- FAIL: TestMetaCrossVersion/execution-master/sha=7e594e28-seed=13102867164713446728-opts=random-012(sha=848f3c6e-seed=8168522583084423651-opts=standard-001(sha=1becf831-seed=2386158681653477521-opts=random-005(sha=ffd5ce9c-seed=16392966780622546391-opts=standard-003(<empty>)))) (281.58s)
Help

See also: How To Investigate a Go Test Failure (internal)

/cc @cockroachdb/test-eng

This test on roachdash | Improve this report!

Jira issue: PEBBLE-235

@RaduBerinde
Copy link
Member

-iter24.SeekGE("pjqgdttb", "") // [true,"tqapnmo",<no point>,["tqapnmo","uhbbl")=>{"@39"="gdmajuuva","@36"="gdmajuuva","@35"="gdmajuuva","@27"="qpgvjztmbgurilowzx","@24"="gdmajuuva","@22"="esdmgqm","@19"="bbraskxtttvxokyof","@3"="gdmajuuva"}*] <nil> #2387
[09:25:42 ](https://teamcity.cockroachdb.com/buildConfiguration/Cockroach_Nightlies_NightlyPebbleMetamorphicCrossversion/16404922?buildTab=log&focusLine=8631&logView=flowAware&linesState=8631)          +iter24.SeekGE("pjqgdttb", "") // [true,"tqapnmo",<no point>,["tqapnmo","tyrsuxwoabffske")=>{"@39"="bbraskxtttvxokyof","@36"="gdmajuuva","@35"="gdmajuuva","@27"="qpgvjztmbgurilowzx","@24"="gdmajuuva","@22"="esdmgqm","@19"="bbraskxtttvxokyof","@3"="gdmajuuva"}*] <nil> #2387

Same as #3824.

@RaduBerinde RaduBerinde moved this from Incoming to In Progress (this milestone) in [Deprecated] Storage Aug 13, 2024
@RaduBerinde RaduBerinde moved this from In Progress (this milestone) to Tests (failures, skipped, flakes) in [Deprecated] Storage Aug 13, 2024
RaduBerinde added a commit to RaduBerinde/pebble that referenced this issue Aug 15, 2024
Applying a synthetic suffix to overlapping `RangeKeySet`s leads to a
logical ambiguity - they both have the same suffix but they can have
different values.

Add code in the metamorphic tests to keep track of `RangeKeySet`s and
prevent the use of synthetic suffix when the external object has
overlapping `RangeKeySet`s.

Fixes cockroachdb#3833
Fixes cockroachdb#3824
RaduBerinde added a commit to RaduBerinde/pebble that referenced this issue Aug 15, 2024
Applying a synthetic suffix to overlapping `RangeKeySet`s leads to a
logical ambiguity - they both have the same suffix but they can have
different values. In practical terms it causes metamorphic test
failures because their relative sorting order is indeterminate.

Add code in the metamorphic tests to keep track of `RangeKeySet`s and
prevent the use of synthetic suffix when the external object has
overlapping `RangeKeySet`s.

Fixes cockroachdb#3833
Fixes cockroachdb#3824
@github-project-automation github-project-automation bot moved this from Tests (failures, skipped, flakes) to Done in [Deprecated] Storage Aug 16, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Archived in project
Status: Done
Development

Successfully merging a pull request may close this issue.

2 participants