Show More
@@ -229,7 +229,6 b" configitem(b'repack', b'chainorphansbysi" | |||||
229 | configitem(b'packs', b'maxpacksize', default=0) |
|
229 | configitem(b'packs', b'maxpacksize', default=0) | |
230 | configitem(b'packs', b'maxchainlen', default=1000) |
|
230 | configitem(b'packs', b'maxchainlen', default=1000) | |
231 |
|
231 | |||
232 | configitem(b'devel', b'remotefilelog.ensurestart', default=False) |
|
|||
233 | configitem(b'devel', b'remotefilelog.bg-wait', default=False) |
|
232 | configitem(b'devel', b'remotefilelog.bg-wait', default=False) | |
234 |
|
233 | |||
235 | # default TTL limit is 30 days |
|
234 | # default TTL limit is 30 days | |
@@ -1085,26 +1084,19 b' def pull(orig, ui, repo, *pats, **opts):' | |||||
1085 | prefetchrevset = ui.config(b'remotefilelog', b'pullprefetch') |
|
1084 | prefetchrevset = ui.config(b'remotefilelog', b'pullprefetch') | |
1086 | bgrepack = repo.ui.configbool(b'remotefilelog', b'backgroundrepack') |
|
1085 | bgrepack = repo.ui.configbool(b'remotefilelog', b'backgroundrepack') | |
1087 | bgprefetch = repo.ui.configbool(b'remotefilelog', b'backgroundprefetch') |
|
1086 | bgprefetch = repo.ui.configbool(b'remotefilelog', b'backgroundprefetch') | |
1088 | ensurestart = repo.ui.configbool(b'devel', b'remotefilelog.ensurestart') |
|
|||
1089 |
|
1087 | |||
1090 | if prefetchrevset: |
|
1088 | if prefetchrevset: | |
1091 | ui.status(_(b"prefetching file contents\n")) |
|
1089 | ui.status(_(b"prefetching file contents\n")) | |
1092 | revs = scmutil.revrange(repo, [prefetchrevset]) |
|
1090 | revs = scmutil.revrange(repo, [prefetchrevset]) | |
1093 | base = repo[b'.'].rev() |
|
1091 | base = repo[b'.'].rev() | |
1094 | if bgprefetch: |
|
1092 | if bgprefetch: | |
1095 | repo.backgroundprefetch( |
|
1093 | repo.backgroundprefetch(prefetchrevset, repack=bgrepack) | |
1096 | prefetchrevset, repack=bgrepack, ensurestart=ensurestart |
|
|||
1097 | ) |
|
|||
1098 | else: |
|
1094 | else: | |
1099 | repo.prefetch(revs, base=base) |
|
1095 | repo.prefetch(revs, base=base) | |
1100 | if bgrepack: |
|
1096 | if bgrepack: | |
1101 | repackmod.backgroundrepack( |
|
1097 | repackmod.backgroundrepack(repo, incremental=True) | |
1102 | repo, incremental=True, ensurestart=ensurestart |
|
|||
1103 | ) |
|
|||
1104 | elif bgrepack: |
|
1098 | elif bgrepack: | |
1105 | repackmod.backgroundrepack( |
|
1099 | repackmod.backgroundrepack(repo, incremental=True) | |
1106 | repo, incremental=True, ensurestart=ensurestart |
|
|||
1107 | ) |
|
|||
1108 |
|
1100 | |||
1109 | return result |
|
1101 | return result | |
1110 |
|
1102 | |||
@@ -1255,13 +1247,9 b' def prefetch(ui, repo, *pats, **opts):' | |||||
1255 | revs = scmutil.revrange(repo, opts.get(b'rev')) |
|
1247 | revs = scmutil.revrange(repo, opts.get(b'rev')) | |
1256 | repo.prefetch(revs, opts.get(b'base'), pats, opts) |
|
1248 | repo.prefetch(revs, opts.get(b'base'), pats, opts) | |
1257 |
|
1249 | |||
1258 | ensurestart = repo.ui.configbool(b'devel', b'remotefilelog.ensurestart') |
|
|||
1259 |
|
||||
1260 | # Run repack in background |
|
1250 | # Run repack in background | |
1261 | if opts.get(b'repack'): |
|
1251 | if opts.get(b'repack'): | |
1262 | repackmod.backgroundrepack( |
|
1252 | repackmod.backgroundrepack(repo, incremental=True) | |
1263 | repo, incremental=True, ensurestart=ensurestart |
|
|||
1264 | ) |
|
|||
1265 |
|
1253 | |||
1266 |
|
1254 | |||
1267 | @command( |
|
1255 | @command( | |
@@ -1281,12 +1269,10 b' def prefetch(ui, repo, *pats, **opts):' | |||||
1281 | ) |
|
1269 | ) | |
1282 | def repack_(ui, repo, *pats, **opts): |
|
1270 | def repack_(ui, repo, *pats, **opts): | |
1283 | if opts.get(r'background'): |
|
1271 | if opts.get(r'background'): | |
1284 | ensurestart = repo.ui.configbool(b'devel', b'remotefilelog.ensurestart') |
|
|||
1285 | repackmod.backgroundrepack( |
|
1272 | repackmod.backgroundrepack( | |
1286 | repo, |
|
1273 | repo, | |
1287 | incremental=opts.get(r'incremental'), |
|
1274 | incremental=opts.get(r'incremental'), | |
1288 | packsonly=opts.get(r'packsonly', False), |
|
1275 | packsonly=opts.get(r'packsonly', False), | |
1289 | ensurestart=ensurestart, |
|
|||
1290 | ) |
|
1276 | ) | |
1291 | return |
|
1277 | return | |
1292 |
|
1278 |
@@ -36,9 +36,7 b' class RepackAlreadyRunning(error.Abort):' | |||||
36 | pass |
|
36 | pass | |
37 |
|
37 | |||
38 |
|
38 | |||
39 | def backgroundrepack( |
|
39 | def backgroundrepack(repo, incremental=True, packsonly=False): | |
40 | repo, incremental=True, packsonly=False, ensurestart=False |
|
|||
41 | ): |
|
|||
42 | cmd = [procutil.hgexecutable(), b'-R', repo.origroot, b'repack'] |
|
40 | cmd = [procutil.hgexecutable(), b'-R', repo.origroot, b'repack'] | |
43 | msg = _(b"(running background repack)\n") |
|
41 | msg = _(b"(running background repack)\n") | |
44 | if incremental: |
|
42 | if incremental: | |
@@ -52,9 +50,7 b' def backgroundrepack(' | |||||
52 | if repo.ui.configbool(b'devel', b'remotefilelog.bg-wait'): |
|
50 | if repo.ui.configbool(b'devel', b'remotefilelog.bg-wait'): | |
53 | kwargs['record_wait'] = repo.ui.atexit |
|
51 | kwargs['record_wait'] = repo.ui.atexit | |
54 |
|
52 | |||
55 | procutil.runbgcommand( |
|
53 | procutil.runbgcommand(cmd, encoding.environ, ensurestart=False, **kwargs) | |
56 | cmd, encoding.environ, ensurestart=ensurestart, **kwargs |
|
|||
57 | ) |
|
|||
58 |
|
54 | |||
59 |
|
55 | |||
60 | def fullrepack(repo, options=None): |
|
56 | def fullrepack(repo, options=None): |
@@ -215,13 +215,7 b' def wraprepo(repo):' | |||||
215 | ) |
|
215 | ) | |
216 |
|
216 | |||
217 | def backgroundprefetch( |
|
217 | def backgroundprefetch( | |
218 | self, |
|
218 | self, revs, base=None, repack=False, pats=None, opts=None | |
219 | revs, |
|
|||
220 | base=None, |
|
|||
221 | repack=False, |
|
|||
222 | pats=None, |
|
|||
223 | opts=None, |
|
|||
224 | ensurestart=False, |
|
|||
225 | ): |
|
219 | ): | |
226 | """Runs prefetch in background with optional repack |
|
220 | """Runs prefetch in background with optional repack | |
227 | """ |
|
221 | """ | |
@@ -237,7 +231,7 b' def wraprepo(repo):' | |||||
237 | kwargs['record_wait'] = repo.ui.atexit |
|
231 | kwargs['record_wait'] = repo.ui.atexit | |
238 |
|
232 | |||
239 | procutil.runbgcommand( |
|
233 | procutil.runbgcommand( | |
240 |
cmd, encoding.environ, ensurestart= |
|
234 | cmd, encoding.environ, ensurestart=False, **kwargs | |
241 | ) |
|
235 | ) | |
242 |
|
236 | |||
243 | def prefetch(self, revs, base=None, pats=None, opts=None): |
|
237 | def prefetch(self, revs, base=None, pats=None, opts=None): |
@@ -1,11 +1,8 b'' | |||||
1 | #require no-windows |
|
1 | #require no-windows | |
2 |
|
2 | |||
3 | $ . "$TESTDIR/remotefilelog-library.sh" |
|
3 | $ . "$TESTDIR/remotefilelog-library.sh" | |
4 | # devel.remotefilelog.ensurestart: reduce race condition with |
|
|||
5 | # waiton{repack/prefetch} |
|
|||
6 | $ cat >> $HGRCPATH <<EOF |
|
4 | $ cat >> $HGRCPATH <<EOF | |
7 | > [devel] |
|
5 | > [devel] | |
8 | > remotefilelog.ensurestart=True |
|
|||
9 | > remotefilelog.bg-wait=True |
|
6 | > remotefilelog.bg-wait=True | |
10 | > EOF |
|
7 | > EOF | |
11 |
|
8 |
@@ -1,13 +1,11 b'' | |||||
1 | #require no-windows |
|
1 | #require no-windows | |
2 |
|
2 | |||
3 | $ . "$TESTDIR/remotefilelog-library.sh" |
|
3 | $ . "$TESTDIR/remotefilelog-library.sh" | |
4 | # devel.remotefilelog.ensurestart: reduce race condition with |
|
4 | ||
5 | # waiton{repack/prefetch} |
|
|||
6 | $ cat >> $HGRCPATH <<EOF |
|
5 | $ cat >> $HGRCPATH <<EOF | |
7 | > [remotefilelog] |
|
6 | > [remotefilelog] | |
8 | > fastdatapack=True |
|
7 | > fastdatapack=True | |
9 | > [devel] |
|
8 | > [devel] | |
10 | > remotefilelog.ensurestart=True |
|
|||
11 | > remotefilelog.bg-wait=True |
|
9 | > remotefilelog.bg-wait=True | |
12 | > EOF |
|
10 | > EOF | |
13 |
|
11 |
@@ -1,11 +1,8 b'' | |||||
1 | #require no-windows |
|
1 | #require no-windows | |
2 |
|
2 | |||
3 | $ . "$TESTDIR/remotefilelog-library.sh" |
|
3 | $ . "$TESTDIR/remotefilelog-library.sh" | |
4 | # devel.remotefilelog.ensurestart: reduce race condition with |
|
|||
5 | # waiton{repack/prefetch} |
|
|||
6 | $ cat >> $HGRCPATH <<EOF |
|
4 | $ cat >> $HGRCPATH <<EOF | |
7 | > [devel] |
|
5 | > [devel] | |
8 | > remotefilelog.ensurestart=True |
|
|||
9 | > remotefilelog.bg-wait=True |
|
6 | > remotefilelog.bg-wait=True | |
10 | > EOF |
|
7 | > EOF | |
11 |
|
8 |
General Comments 0
You need to be logged in to leave comments.
Login now