# HG changeset patch # User Pierre-Yves David # Date 2023-06-07 23:07:00 # Node ID 7c5edf6fbf0160ccfb0e7503355833e44960b4e6 # Parent bf7404f2e22d8885a74f2496fa504a54b51728ac tests: check `pulled-delta-reuse-policy=forced` without general delta If general delta is not available, the amount of delta we can reuse at all will be more limited. We check that application still work and does not corrupt the repository. diff --git a/tests/test-revlog-delta-find.t b/tests/test-revlog-delta-find.t --- a/tests/test-revlog-delta-find.t +++ b/tests/test-revlog-delta-find.t @@ -331,3 +331,32 @@ more subtle to test this behavior. DBG-DELTAS: MANIFESTLOG: * (glob) DBG-DELTAS: FILELOG:my-file.txt: rev=3: delta-base=2 * (glob) DBG-DELTAS: FILELOG:my-file.txt: rev=4: delta-base=3 * (glob) + +Check that running "forced" on a non-general delta repository does not corrupt it +--------------------------------------------------------------------------------- + +Even if requested to be used, some of the delta in the revlog cannot be stored on a non-general delta repository. We check that the bundle application was correct. + + $ hg init \ + > --config format.usegeneraldelta=no \ + > --config format.sparse-revlog=no \ + > local-forced-full-p1-no-gd + $ hg debugformat -R local-forced-full-p1-no-gd | grep generaldelta + generaldelta: no + $ hg -R local-forced-full-p1-no-gd pull --quiet local-pre-pull-full \ + > --config debug.revlog.debug-delta=no + $ hg -R local-forced-full-p1-no-gd pull --quiet \ + > --config 'paths.*:pulled-delta-reuse-policy=forced' all-p1.hg + DBG-DELTAS: CHANGELOG: * (glob) + DBG-DELTAS: CHANGELOG: * (glob) + DBG-DELTAS: MANIFESTLOG: * (glob) + DBG-DELTAS: MANIFESTLOG: * (glob) + DBG-DELTAS: FILELOG:my-file.txt: rev=3: delta-base=0 * - search-rounds=1 try-count=1 * (glob) + DBG-DELTAS: FILELOG:my-file.txt: rev=4: delta-base=4 * - search-rounds=1 try-count=1 * (glob) + $ hg -R local-forced-full-p1-no-gd verify + checking changesets + checking manifests + crosschecking files in changesets and manifests + checking files + checking dirstate + checked 5 changesets with 5 changes to 1 files