##// END OF EJS Templates
test: add a push race case where the racing client create a new head...
marmoute -
r32632:090a6fe6 default
parent child Browse files
Show More
@@ -278,3 +278,109 b' Check the result of the push'
278 |/
278 |/
279 @ 842e2fac6304 C-ROOT (default)
279 @ 842e2fac6304 C-ROOT (default)
280
280
281 Pushing while someone creates a new head
282 -----------------------------------------
283
284 Pushing a new changeset while someone creates a new branch.
285
286 # a (raced)
287 # |
288 # * b
289 # |/
290 # *
291
292 (resync-all)
293
294 $ hg -R ./server pull ./client-racy
295 pulling from ./client-racy
296 searching for changes
297 adding changesets
298 adding manifests
299 adding file changes
300 added 1 changesets with 1 changes to 1 files
301 (run 'hg update' to get a working copy)
302 $ hg -R ./client-other pull
303 pulling from ssh://user@dummy/server
304 searching for changes
305 adding changesets
306 adding manifests
307 adding file changes
308 added 1 changesets with 1 changes to 1 files
309 (run 'hg update' to get a working copy)
310 $ hg -R ./client-racy pull
311 pulling from ssh://user@dummy/server
312 searching for changes
313 adding changesets
314 adding manifests
315 adding file changes
316 added 1 changesets with 1 changes to 1 files
317 (run 'hg update' to get a working copy)
318
319 $ hg -R server graph
320 o 59e76faf78bd C-D (default)
321 |
322 o a9149a1428e2 C-B (default)
323 |
324 | o 51c544a58128 C-C (default)
325 | |
326 | o 98217d5a1659 C-A (default)
327 |/
328 @ 842e2fac6304 C-ROOT (default)
329
330
331 Creating changesets
332
333 (new head)
334
335 $ hg -R client-other/ up 'desc("C-A")'
336 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
337 $ echo aaa >> client-other/a
338 $ hg -R client-other/ commit -m "C-E"
339 created new head
340
341 (children of existing head)
342
343 $ hg -R client-racy/ up 'desc("C-C")'
344 1 files updated, 0 files merged, 1 files removed, 0 files unresolved
345 $ echo bbb >> client-racy/a
346 $ hg -R client-racy/ commit -m "C-F"
347
348 Pushing
349
350 $ hg -R client-racy push -r 'tip' > ./push-log 2>&1 &
351
352 $ waiton $TESTTMP/readyfile
353
354 $ hg -R client-other push -fr 'tip'
355 pushing to ssh://user@dummy/server
356 searching for changes
357 remote: adding changesets
358 remote: adding manifests
359 remote: adding file changes
360 remote: added 1 changesets with 1 changes to 1 files (+1 heads)
361
362 $ release $TESTTMP/watchfile
363
364 Check the result of the push
365
366 $ cat ./push-log
367 pushing to ssh://user@dummy/server
368 searching for changes
369 wrote ready: $TESTTMP/readyfile
370 waiting on: $TESTTMP/watchfile
371 abort: push failed:
372 'repository changed while pushing - please try again'
373
374 $ hg -R server graph
375 o d603e2c0cdd7 C-E (default)
376 |
377 | o 51c544a58128 C-C (default)
378 |/
379 o 98217d5a1659 C-A (default)
380 |
381 | o 59e76faf78bd C-D (default)
382 | |
383 | o a9149a1428e2 C-B (default)
384 |/
385 @ 842e2fac6304 C-ROOT (default)
386
General Comments 0
You need to be logged in to leave comments. Login now