-
Notifications
You must be signed in to change notification settings - Fork 569
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
feat: switch madsim integration and recovery tests to sql backend #18678
base: main
Are you sure you want to change the base?
Conversation
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.
Separate issues that need to be handled:
- Provide a config which can use in-memory sqlite. We need to spawn it separately, in a static lifetime, so it doesn't get killed when meta gets killed.
And also integration recovery tests: https://buildkite.com/risingwavelabs/main-cron/builds/3420#0192414d-bde7-490d-b9d0-3a681345a3e0 Encountered another issue in recovery test. Seems like it occurred when trying to shutdown the simulation cluster. Cc @kwannoel any ideas? |
Not sure either. Maybe to do with sqlx. I'm taking a look. |
And this one https://buildkite.com/risingwavelabs/pull-request/builds/59181#0192414d-c986-408c-bf72-81826cef3716:
Actually risingwave/src/tests/simulation/src/slt.rs Lines 409 to 412 in c219218
We can fix it by changing the match pattern of checking error messages. |
963f285
to
537c8d8
Compare
e4efa0c
to
c227f11
Compare
To summarize, here's what's needed after this PR is merged:
|
Passed 2 rounds of ci. @xxchan @BugenZhao can help to take a look? I'd like to get this merged, and work on subsequent parts incrementally. We can always revert if something goes terribly wrong. |
Meta backup test failed: https://buildkite.com/risingwavelabs/main-cron/builds/3448#01924664-243c-4e6c-a9f6-a9efcc92a0b8
Edit: Nevermind, it already failed in today's main-cron. |
I'd be happy to proceed in this way |
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.
Quickly browsed the changes. I don't think it can do anything too harmful. So rubber stamp 😁
[meta.developer] | ||
meta_actor_cnt_per_worker_parallelism_soft_limit = 65536 | ||
meta_actor_cnt_per_worker_parallelism_hard_limit = 65536 |
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.
How's this related with etcd vs sql? 👀
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.
Let me add this to the list of things to follow up on.
DbBackend::Sqlite => { | ||
Arc::new(SqlBackendElectionClient::new(id, SqliteDriver::new(conn))) | ||
} | ||
DbBackend::Sqlite => Arc::new(DummyElectionClient::new(id)), |
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.
Should we just disallow multiple meta when it's SQLite..? (I'm fine leaving it as UB..)
I hereby agree to the terms of the RisingWave Labs, Inc. Contributor License Agreement.
What's changed and what's your intention?
Checklist
./risedev check
(or alias,./risedev c
)Documentation
Release note
If this PR includes changes that directly affect users or other significant modifications relevant to the community, kindly draft a release note to provide a concise summary of these changes. Please prioritize highlighting the impact these changes will have on users.