##// END OF EJS Templates
dirstate: add a synchronisation point in the middle of the read...
Raphaël Gomès -
r51129:2be6d578 stable
parent child Browse files
Show More
@@ -704,6 +704,16 b' coreconfigitem('
704 )
704 )
705 coreconfigitem(
705 coreconfigitem(
706 b'devel',
706 b'devel',
707 b'sync.dirstate.post-docket-read-file',
708 default=None,
709 )
710 coreconfigitem(
711 b'devel',
712 b'sync.dirstate.post-docket-read-file-timeout',
713 default=2,
714 )
715 coreconfigitem(
716 b'devel',
707 b'sync.dirstate.pre-read-file',
717 b'sync.dirstate.pre-read-file',
708 default=None,
718 default=None,
709 )
719 )
@@ -282,6 +282,7 b' class dirstatemap(_dirstatemapcommon):'
282
282
283 if not self.docket.uuid:
283 if not self.docket.uuid:
284 return
284 return
285 testing.wait_on_cfg(self._ui, b'dirstate.post-docket-read-file')
285 st = self._opener.read(self.docket.data_filename())
286 st = self._opener.read(self.docket.data_filename())
286 else:
287 else:
287 st = self._readdirstatefile()
288 st = self._readdirstatefile()
@@ -547,6 +548,9 b' if rustmod is not None:'
547 testing.wait_on_cfg(self._ui, b'dirstate.pre-read-file')
548 testing.wait_on_cfg(self._ui, b'dirstate.pre-read-file')
548 if self._use_dirstate_v2:
549 if self._use_dirstate_v2:
549 if self.docket.uuid:
550 if self.docket.uuid:
551 testing.wait_on_cfg(
552 self._ui, b'dirstate.post-docket-read-file'
553 )
550 # TODO: use mmap when possible
554 # TODO: use mmap when possible
551 data = self._opener.read(self.docket.data_filename())
555 data = self._opener.read(self.docket.data_filename())
552 else:
556 else:
@@ -339,6 +339,10 b' impl Repo {'
339 let docket = crate::dirstate_tree::on_disk::read_docket(
339 let docket = crate::dirstate_tree::on_disk::read_docket(
340 &dirstate_file_contents,
340 &dirstate_file_contents,
341 )?;
341 )?;
342 debug_wait_for_file_or_print(
343 self.config(),
344 "dirstate.post-docket-read-file",
345 );
342 self.dirstate_parents.set(docket.parents());
346 self.dirstate_parents.set(docket.parents());
343 self.dirstate_data_file_uuid
347 self.dirstate_data_file_uuid
344 .set(Some(docket.uuid.to_owned()));
348 .set(Some(docket.uuid.to_owned()));
General Comments 0
You need to be logged in to leave comments. Login now