Skip to content

test: add a MVCC fuzzing test#11351

Merged
sergepetrenko merged 1 commit intotarantool:masterfrom
CuriousGeorgiy:mvcc-fuzzing
Jun 4, 2025
Merged

test: add a MVCC fuzzing test#11351
sergepetrenko merged 1 commit intotarantool:masterfrom
CuriousGeorgiy:mvcc-fuzzing

Conversation

@CuriousGeorgiy
Copy link
Member

@CuriousGeorgiy CuriousGeorgiy commented Apr 7, 2025

The test for Tarantool allows you to generate random interleaved (concurrent) transactions for the memtx and vinyl engines, and verify the consistency of their execution w.r.t. serializability.

Bugs found by the test:

Closes #5999

@coveralls
Copy link

coveralls commented Apr 7, 2025

Coverage Status

coverage: 87.534% (+0.02%) from 87.519%
when pulling 6a38d66 on CuriousGeorgiy:mvcc-fuzzing
into 2dbe1dc
on tarantool:master
.

@coveralls
Copy link

Coverage Status

coverage: 87.511% (+0.02%) from 87.495%
when pulling 99ba316 on CuriousGeorgiy:mvcc-fuzzing
into 96a7b91
on tarantool:master
.

@CuriousGeorgiy CuriousGeorgiy force-pushed the mvcc-fuzzing branch 2 times, most recently from 4a986e3 to 6d5589f Compare April 8, 2025 09:16
Copy link
Member

@ligurio ligurio left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

First of all, Georgy, thanks for a nice job! You have found 33 bugs in MVCC or MVCC-related parts.

Please take a look on my comments.

@CuriousGeorgiy CuriousGeorgiy force-pushed the mvcc-fuzzing branch 3 times, most recently from 77b06ba to 47b4e5a Compare April 13, 2025 19:34
Copy link
Contributor

@drewdzzz drewdzzz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Glad to see the legendary test doesn't gather dust on the shelf!

Copy link
Contributor

@drewdzzz drewdzzz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for your fixes! I have only a few questions left.

@drewdzzz drewdzzz removed their assignment May 12, 2025
Copy link
Contributor

@drewdzzz drewdzzz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me!

I've left a few comments, but generally the test already seems nice and clear.

@drewdzzz drewdzzz assigned CuriousGeorgiy and unassigned drewdzzz May 30, 2025
The test for Tarantool allows you to generate random interleaved
(concurrent) transactions for the memtx and vinyl engines, and verify the
consistency of their execution w.r.t. serializability.

Bugs found by the test:
- tarantool#6206
- tarantool#6325
- tarantool#6452
- tarantool#7073
- tarantool#7113
- tarantool#7214
- tarantool#7217
- tarantool#7234
- tarantool#7235
- tarantool#7238
- tarantool#7239
- tarantool#7240
- tarantool#7343
- tarantool#7375
- tarantool#7409
- tarantool#7432
- tarantool#7449
- tarantool#7477
- tarantool#7478
- tarantool#7490
- tarantool#7493
- tarantool#7670
- tarantool#7685
- tarantool#7712
- tarantool#7755
- tarantool#7756
- tarantool#7757
- tarantool#7761
- tarantool#7828
- tarantool#7837
- tarantool#8104
- tarantool#11294
- tarantool#11348
- tarantool#11354

Closes tarantool#5999

NO_CHANGELOG=<fuzzing>
NO_DOC=<fuzzing>
NO_TEST=<fuzzing>
Copy link
Member

@ligurio ligurio left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good job, thanks!

@ligurio ligurio removed their assignment Jun 3, 2025
@drewdzzz drewdzzz assigned CuriousGeorgiy and unassigned drewdzzz Jun 3, 2025
@sergepetrenko sergepetrenko merged commit 3ce3f3e into tarantool:master Jun 4, 2025
26 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Mass testing of memtx MVCC engine

5 participants