-
Notifications
You must be signed in to change notification settings - Fork 15
Stabilize tests for Tarantool 3 features #426
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
Stabilize tests for Tarantool 3 features #426
Conversation
41b401a
to
5dd3ade
Compare
Before this patch, most tests used an assumption that main server is a router. Yet these are two different concepts. `main_server` entity was introduced in Cartridge test helpers Cluster as some server you may refer to for maintenance work, like clusterwide configuration update. Any cluster server is fine to do such operation: router or not. Since most cluster configurations start with router definition, it is often a first server in a list and is chosen to be main_server as well. But no one guarantees that main_server provides router API (both for vshard and crud). Part of #412 Part of #415
5dd3ade
to
ed48cf4
Compare
Tarantool 3.0 instances start in ro mode. It is possible that masters are not available for write requests right after test case has been started. Cartridge servers run only on Tarantool 1.x and 2.x, so they are expected to work fine without additional changes: Cartridge helpers checks are sophisticated enough. Part of #412 Part of #415
9e99bd1
to
234560e
Compare
b5710cf
to
fa6e411
Compare
Sorry for force-pushes after review requests, should be fine now. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi, code seems fine. just small comment.
}) | ||
end) | ||
end, | ||
} No newline at end of file |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
add newline at the EOF
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed
Tarantool 3.0 instances start in ro mode. It is possible that masters are not available for write requests right after test case has been started. This patch supports only vshard tests for Tarantool 2.2+. After this patch, schema init is async and we wait for schema to initialize in tests. Part of #412 Part of #415
This patch removes vinyl from test matrices. Since [1], vinyl is considered experimental and we do not guarantee its work with modules. Vinyl clusters like to misbehave in tests, often resulting in failing tests in CI. To improve developer experience, this patch disables them. This patch do not remove vinyl support since there is no vinyl-specific code in crud, but we do not guarantee it anymore. 1. tarantool/doc#3523 Part of #412 Part of #415
55bd35d
to
b58f9b4
Compare
This PR introduces various test improvements, mostly related to waiting for various async tasks to be completed if a test case expects them to be completed. This improvements are required to properly solve #412 and #415 since, after introducing more async things, flaky tests starts to fail more often. Also previous PRs had ignored the possibility of creating schema on yet ro instance. This PR also covers this issues. This PR does not yet solve #412, so tests still may fail.
I didn't forget about
Part of #412
Part of #415