equal
deleted
inserted
replaced
318 self.dirstate_parents.set(docket.parents()); |
318 self.dirstate_parents.set(docket.parents()); |
319 self.dirstate_data_file_uuid |
319 self.dirstate_data_file_uuid |
320 .set(Some(docket.uuid.to_owned())); |
320 .set(Some(docket.uuid.to_owned())); |
321 let data_size = docket.data_size(); |
321 let data_size = docket.data_size(); |
322 let metadata = docket.tree_metadata(); |
322 let metadata = docket.tree_metadata(); |
323 if let Some(data_mmap) = self |
323 if crate::vfs::is_on_nfs_mount(docket.data_filename()) { |
|
324 // Don't mmap on NFS to prevent `SIGBUS` error on deletion |
|
325 OwningDirstateMap::new_v2( |
|
326 self.hg_vfs().read(docket.data_filename())?, |
|
327 data_size, |
|
328 metadata, |
|
329 ) |
|
330 } else if let Some(data_mmap) = self |
324 .hg_vfs() |
331 .hg_vfs() |
325 .mmap_open(docket.data_filename()) |
332 .mmap_open(docket.data_filename()) |
326 .io_not_found_as_none()? |
333 .io_not_found_as_none()? |
327 { |
334 { |
328 OwningDirstateMap::new_v2(data_mmap, data_size, metadata) |
335 OwningDirstateMap::new_v2(data_mmap, data_size, metadata) |