Mercurial > hg
comparison tests/test-push-race.t @ 32670:41b8cfe85383
test: add a push race case where the updated head is obsoleted
This is the mirror of the previously added case. We check the case where the
racing-push obsoletes a head while the raced-push updates that same head.
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Mon, 29 May 2017 05:53:51 +0200 |
parents | 6ac367b6ae8a |
children | 16ada4cbb1a9 |
comparison
equal
deleted
inserted
replaced
32669:6ac367b6ae8a | 32670:41b8cfe85383 |
---|---|
1427 | | | 1427 | | |
1428 o | 98217d5a1659 C-A (default) | 1428 o | 98217d5a1659 C-A (default) |
1429 |/ | 1429 |/ |
1430 o 842e2fac6304 C-ROOT (default) | 1430 o 842e2fac6304 C-ROOT (default) |
1431 | 1431 |
1432 | |
1433 racing commit push a new head obsoleting the one touched by the raced push | |
1434 -------------------------------------------------------------------------- | |
1435 | |
1436 (mirror test case of the previous one | |
1437 | |
1438 # a (raced branch default) | |
1439 # | | |
1440 # ø⇠◔ b (racing) | |
1441 # |/ | |
1442 # * | |
1443 | |
1444 (resync-all) | |
1445 | |
1446 $ hg -R ./server pull ./client-racy | |
1447 pulling from ./client-racy | |
1448 searching for changes | |
1449 adding changesets | |
1450 adding manifests | |
1451 adding file changes | |
1452 added 1 changesets with 1 changes to 1 files (+1 heads) | |
1453 1 new obsolescence markers | |
1454 (run 'hg heads .' to see heads, 'hg merge' to merge) | |
1455 $ hg -R ./client-other pull | |
1456 pulling from ssh://user@dummy/server | |
1457 searching for changes | |
1458 adding changesets | |
1459 adding manifests | |
1460 adding file changes | |
1461 added 1 changesets with 1 changes to 1 files (+1 heads) | |
1462 1 new obsolescence markers | |
1463 (run 'hg heads .' to see heads, 'hg merge' to merge) | |
1464 $ hg -R ./client-racy pull | |
1465 pulling from ssh://user@dummy/server | |
1466 searching for changes | |
1467 adding changesets | |
1468 adding manifests | |
1469 adding file changes | |
1470 added 1 changesets with 0 changes to 0 files | |
1471 (run 'hg update' to get a working copy) | |
1472 | |
1473 $ hg -R server debugobsolete | |
1474 b0ee3d6f51bc4c0ca6d4f2907708027a6c376233 720c5163ecf64dcc6216bee2d62bf3edb1882499 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} | |
1475 $ hg -R server graph | |
1476 o 720c5163ecf6 C-V (default) | |
1477 | | |
1478 | o a98a47d8b85b C-U (default) | |
1479 | | | |
1480 | x b0ee3d6f51bc C-Q (default) | |
1481 |/ | |
1482 | o 3d57ed3c1091 C-T (other) | |
1483 | | | |
1484 | o 2efd43f7b5ba C-S (default) | |
1485 | | | |
1486 | | o de7b9e2ba3f6 C-R (other) | |
1487 | |/ | |
1488 | o 1b58ee3f79e5 C-P (default) | |
1489 | | | |
1490 | o d0a85b2252a9 C-O (other) | |
1491 |/ | |
1492 o 55a6f1c01b48 C-Z (other) | |
1493 | | |
1494 o 866a66e18630 C-N (default) | |
1495 |\ | |
1496 +---o 6fd3090135df C-M (default) | |
1497 | | | |
1498 | o cac2cead0ff0 C-L (default) | |
1499 | | | |
1500 o | be705100c623 C-K (default) | |
1501 |\| | |
1502 o | d603e2c0cdd7 C-E (default) | |
1503 | | | |
1504 | o 59e76faf78bd C-D (default) | |
1505 | | | |
1506 | | o 89420bf00fae C-J (default) | |
1507 | | | | |
1508 | | | o b35ed749f288 C-I (my-second-test-branch) | |
1509 | | |/ | |
1510 | | o 75d69cba5402 C-G (default) | |
1511 | | | | |
1512 | | | o 833be552cfe6 C-H (my-first-test-branch) | |
1513 | | |/ | |
1514 | | o d9e379a8c432 C-F (default) | |
1515 | | | | |
1516 +---o 51c544a58128 C-C (default) | |
1517 | | | |
1518 | o a9149a1428e2 C-B (default) | |
1519 | | | |
1520 o | 98217d5a1659 C-A (default) | |
1521 |/ | |
1522 o 842e2fac6304 C-ROOT (default) | |
1523 | |
1524 | |
1525 Creating changesets and markers | |
1526 | |
1527 (new topo branch obsoleting that same head) | |
1528 | |
1529 $ hg -R client-other/ up 'desc("C-Q")' | |
1530 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
1531 $ echo bbb >> client-other/a | |
1532 $ hg -R client-other/ branch --force default | |
1533 marked working directory as branch default | |
1534 $ hg -R client-other/ commit -m "C-W" | |
1535 created new head | |
1536 $ ID_V=`hg -R client-other log -T '{node}\n' -r 'desc("C-V")'` | |
1537 $ ID_W=`hg -R client-other log -T '{node}\n' -r 'desc("C-W")'` | |
1538 $ hg -R client-other debugobsolete $ID_V $ID_W | |
1539 | |
1540 (continue the same head) | |
1541 | |
1542 $ echo aaa >> client-racy/a | |
1543 $ hg -R client-racy/ commit -m "C-X" | |
1544 | |
1545 Pushing | |
1546 | |
1547 $ hg -R client-racy push -r 'tip' > ./push-log 2>&1 & | |
1548 | |
1549 $ waiton $TESTTMP/readyfile | |
1550 | |
1551 $ hg -R client-other push -fr 'tip' --new-branch | |
1552 pushing to ssh://user@dummy/server | |
1553 searching for changes | |
1554 remote: adding changesets | |
1555 remote: adding manifests | |
1556 remote: adding file changes | |
1557 remote: added 1 changesets with 0 changes to 1 files (+1 heads) | |
1558 remote: 1 new obsolescence markers | |
1559 | |
1560 $ release $TESTTMP/watchfile | |
1561 | |
1562 Check the result of the push | |
1563 | |
1564 $ cat ./push-log | |
1565 pushing to ssh://user@dummy/server | |
1566 searching for changes | |
1567 wrote ready: $TESTTMP/readyfile | |
1568 waiting on: $TESTTMP/watchfile | |
1569 abort: push failed: | |
1570 'repository changed while pushing - please try again' | |
1571 | |
1572 $ hg -R server debugobsolete | |
1573 b0ee3d6f51bc4c0ca6d4f2907708027a6c376233 720c5163ecf64dcc6216bee2d62bf3edb1882499 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} | |
1574 720c5163ecf64dcc6216bee2d62bf3edb1882499 39bc0598afe90ab18da460bafecc0fa953b77596 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} | |
1575 $ hg -R server graph --hidden | |
1576 o 39bc0598afe9 C-W (default) | |
1577 | | |
1578 | o a98a47d8b85b C-U (default) | |
1579 |/ | |
1580 x b0ee3d6f51bc C-Q (default) | |
1581 | | |
1582 | o 3d57ed3c1091 C-T (other) | |
1583 | | | |
1584 | o 2efd43f7b5ba C-S (default) | |
1585 | | | |
1586 | | o de7b9e2ba3f6 C-R (other) | |
1587 | |/ | |
1588 | o 1b58ee3f79e5 C-P (default) | |
1589 | | | |
1590 | o d0a85b2252a9 C-O (other) | |
1591 |/ | |
1592 | x 720c5163ecf6 C-V (default) | |
1593 |/ | |
1594 o 55a6f1c01b48 C-Z (other) | |
1595 | | |
1596 o 866a66e18630 C-N (default) | |
1597 |\ | |
1598 +---o 6fd3090135df C-M (default) | |
1599 | | | |
1600 | o cac2cead0ff0 C-L (default) | |
1601 | | | |
1602 o | be705100c623 C-K (default) | |
1603 |\| | |
1604 o | d603e2c0cdd7 C-E (default) | |
1605 | | | |
1606 | o 59e76faf78bd C-D (default) | |
1607 | | | |
1608 | | o 89420bf00fae C-J (default) | |
1609 | | | | |
1610 | | | o b35ed749f288 C-I (my-second-test-branch) | |
1611 | | |/ | |
1612 | | o 75d69cba5402 C-G (default) | |
1613 | | | | |
1614 | | | o 833be552cfe6 C-H (my-first-test-branch) | |
1615 | | |/ | |
1616 | | o d9e379a8c432 C-F (default) | |
1617 | | | | |
1618 +---o 51c544a58128 C-C (default) | |
1619 | | | |
1620 | o a9149a1428e2 C-B (default) | |
1621 | | | |
1622 o | 98217d5a1659 C-A (default) | |
1623 |/ | |
1624 o 842e2fac6304 C-ROOT (default) | |
1625 |