diff --git a/src/store/broken_seg/0bf1f1e1a9d748028c1a0996e5e48f94.store b/src/store/broken_seg/0bf1f1e1a9d748028c1a0996e5e48f94.store new file mode 100644 index 000000000..97b421786 Binary files /dev/null and b/src/store/broken_seg/0bf1f1e1a9d748028c1a0996e5e48f94.store differ diff --git a/src/store/tests_store.rs b/src/store/tests_store.rs index 1aefc07b9..335f34132 100644 --- a/src/store/tests_store.rs +++ b/src/store/tests_store.rs @@ -6,28 +6,45 @@ use crate::fastfield::DeleteBitSet; use super::{StoreReader, StoreWriter}; +#[test] +fn test_toto2() -> crate::Result<()> { + let directory = ManagedDirectory::wrap(MmapDirectory::open("src/store/broken_seg")?)?; + let path = Path::new("0bf1f1e1a9d748028c1a0996e5e48f94.store"); + assert!(directory.validate_checksum(path)?); + let store_file = directory.open_read(path)?; + let store = StoreReader::open(store_file)?; + let documents = store.documents(); + // for doc in documents { + // println!("{:?}", doc); + // } + // let doc= store.get(53)?; + Ok(()) +} #[test] fn test_toto() -> crate::Result<()> { let directory = ManagedDirectory::wrap(MmapDirectory::open("src/store/broken_seg")?)?; assert!(directory.validate_checksum(Path::new("e6ece22e5bca4e0dbe7ce3e4dcbd5bbf.store"))?); - let store_file = directory.open_read(Path::new("e6ece22e5bca4e0dbe7ce3e4dcbd5bbf.store"))?; + let store_file = directory.open_read(Path::new("e6ece22e5bca4e0dbe7ce3e4dcbd5bbf.store.patched"))?; let store = StoreReader::open(store_file)?; - let documents = store.documents(); - let ram_directory = RAMDirectory::create(); - let path = Path::new("store"); - let store_wrt = ram_directory.open_write(path)?; - let mut store_writer = StoreWriter::new(store_wrt); - for doc in &documents { - store_writer.store(doc)?; - } - store_writer.close()?; - let store_data = ram_directory.open_read(path)?; - let new_store = StoreReader::open(store_data)?; - for doc in 0.. { - println!("{}", doc); - let doc = store.get(53)?; - println!("{:?}", doc); - } + let doc= store.get(53)?; + println!("{:?}", doc); + // let documents = store.documents(); + // let ram_directory = RAMDirectory::create(); + // let path = Path::new("store"); + + // let store_wrt = ram_directory.open_write(path)?; + // let mut store_writer = StoreWriter::new(store_wrt); + // for doc in &documents { + // store_writer.store(doc)?; + // } + // store_writer.close()?; + // let store_data = ram_directory.open_read(path)?; + // let new_store = StoreReader::open(store_data)?; + // for doc in 0..59 { + // println!("{}", doc); + // let doc = new_store.get(doc)?; + // println!("{:?}", doc); + // } Ok(()) }