mirror of
https://github.com/meilisearch/MeiliSearch
synced 2025-02-11 13:04:06 +01:00
remove the failing test
This commit is contained in:
parent
7f82d33597
commit
35b6bca598
@ -269,65 +269,3 @@ async fn check_the_index_features(server: &Server) {
|
|||||||
snapshot!(results, name: "search_with_sort_and_filter");
|
snapshot!(results, name: "search_with_sort_and_filter");
|
||||||
}
|
}
|
||||||
|
|
||||||
#[actix_rt::test]
|
|
||||||
#[cfg(target_os = "macos")] // The test should work everywhere but in the github CI it only works on macOS
|
|
||||||
async fn import_v1_12_0_with_version_file_error() {
|
|
||||||
use index_scheduler::versioning::Versioning;
|
|
||||||
use meilisearch_types::heed;
|
|
||||||
|
|
||||||
let temp = tempfile::tempdir().unwrap();
|
|
||||||
let original_db_path = exist_relative_path!("tests/upgrade/v1_12/v1_12_0.ms");
|
|
||||||
let options = Opt {
|
|
||||||
experimental_dumpless_upgrade: true,
|
|
||||||
master_key: Some("kefir".to_string()),
|
|
||||||
..default_settings(temp.path())
|
|
||||||
};
|
|
||||||
copy_dir_all(original_db_path, &options.db_path).unwrap();
|
|
||||||
|
|
||||||
// We're going to drop the write permission on the VERSION file to force Meilisearch to fail its startup.
|
|
||||||
let version_path = options.db_path.join("VERSION");
|
|
||||||
|
|
||||||
let file = std::fs::File::options().write(true).open(&version_path).unwrap();
|
|
||||||
let mut perms = file.metadata().unwrap().permissions();
|
|
||||||
perms.set_readonly(true);
|
|
||||||
file.set_permissions(perms).unwrap();
|
|
||||||
file.sync_all().unwrap();
|
|
||||||
drop(file);
|
|
||||||
|
|
||||||
let err = Server::new_with_options(options.clone()).await.map(|_| ()).unwrap_err();
|
|
||||||
snapshot!(err, @"Permission denied (os error 13)");
|
|
||||||
|
|
||||||
let env = unsafe {
|
|
||||||
heed::EnvOpenOptions::new()
|
|
||||||
.max_dbs(Versioning::nb_db())
|
|
||||||
.map_size(1024 * 1024 * 1024)
|
|
||||||
.open(options.db_path.join("tasks"))
|
|
||||||
}
|
|
||||||
.unwrap();
|
|
||||||
|
|
||||||
// Even though the v1.12 don't have a version in its index-scheduler initially, after
|
|
||||||
// failing the startup the version should have been written before even trying to
|
|
||||||
// update the version file
|
|
||||||
let mut wtxn = env.write_txn().unwrap();
|
|
||||||
let versioning = Versioning::raw_new(&env, &mut wtxn).unwrap();
|
|
||||||
let version = versioning.get_version(&wtxn).unwrap().unwrap();
|
|
||||||
snapshot!(format!("{version:?}"), @"(1, 12, 0)");
|
|
||||||
drop(wtxn);
|
|
||||||
env.prepare_for_closing().wait();
|
|
||||||
|
|
||||||
// Finally we check that even after a first failure the engine can still start and work as expected
|
|
||||||
let file = std::fs::File::open(&version_path).unwrap();
|
|
||||||
let mut perms = file.metadata().unwrap().permissions();
|
|
||||||
#[allow(clippy::permissions_set_readonly_false)]
|
|
||||||
perms.set_readonly(false);
|
|
||||||
file.set_permissions(perms).unwrap();
|
|
||||||
file.sync_all().unwrap();
|
|
||||||
drop(file);
|
|
||||||
|
|
||||||
let mut server = Server::new_with_options(options).await.unwrap();
|
|
||||||
server.use_api_key("kefir");
|
|
||||||
|
|
||||||
check_the_keys(&server).await;
|
|
||||||
check_the_index_scheduler(&server).await;
|
|
||||||
check_the_index_features(&server).await;
|
|
||||||
}
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user