Show More
@@ -455,3 +455,103 b' pullop.cgresult' | |||||
455 | | |
|
455 | | | |
456 | o 0:4a2df7238c3b public test A |
|
456 | o 0:4a2df7238c3b public test A | |
457 |
|
457 | |||
|
458 | ||||
|
459 | Test that "split" from inline content works fine (cf issue6811) | |||
|
460 | =============================================================== | |||
|
461 | ||||
|
462 | setup | |||
|
463 | ----- | |||
|
464 | ||||
|
465 | (create a compression free version where the split is easier to trigger) | |||
|
466 | ||||
|
467 | $ cat >> $HGRCPATH << EOF | |||
|
468 | > [format] | |||
|
469 | > revlog-compression=none | |||
|
470 | > use-persistent-nodemap=no | |||
|
471 | > EOF | |||
|
472 | ||||
|
473 | $ cd .. | |||
|
474 | $ hg clone --pull repo repo-test-split --quiet | |||
|
475 | pullop.cgresult is 2 | |||
|
476 | $ cat > repo-test-split/.hg/hgrc << EOF | |||
|
477 | > [extensions] | |||
|
478 | > bundle2=$TESTTMP/bundle2.py | |||
|
479 | > EOF | |||
|
480 | $ hg clone --pull repo-test-split clone-test-split --quiet | |||
|
481 | pullop.cgresult is 2 | |||
|
482 | $ cd repo-test-split | |||
|
483 | $ cat > .hg/hgrc << EOF | |||
|
484 | > [extensions] | |||
|
485 | > bundle2=$TESTTMP/bundle2.py | |||
|
486 | > EOF | |||
|
487 | ||||
|
488 | ||||
|
489 | IMPORTANT: must be a non-split revlog with only a .i | |||
|
490 | $ ls -1 .hg/store/00manifest.* | |||
|
491 | .hg/store/00manifest.i | |||
|
492 | $ ls -1 .hg/store/data/_a.* | |||
|
493 | .hg/store/data/_a.i | |||
|
494 | ||||
|
495 | $ $TESTDIR/seq.py 100000 > A | |||
|
496 | $ mkdir foo | |||
|
497 | $ cd foo | |||
|
498 | $ touch `$TESTDIR/seq.py 10000` | |||
|
499 | $ cd .. | |||
|
500 | $ hg add -q foo | |||
|
501 | $ hg commit -m 'split the manifest and one filelog' | |||
|
502 | ||||
|
503 | ||||
|
504 | IMPORTANT: now the revlogs must be split | |||
|
505 | $ ls -1 .hg/store/00manifest.* | |||
|
506 | .hg/store/00manifest.d | |||
|
507 | .hg/store/00manifest.i | |||
|
508 | $ ls -1 .hg/store/data/_a.* | |||
|
509 | .hg/store/data/_a.d | |||
|
510 | .hg/store/data/_a.i | |||
|
511 | ||||
|
512 | Add an extra commit on top of that | |||
|
513 | ||||
|
514 | $ echo foo >> A | |||
|
515 | $ hg commit -m 'one extra commit' | |||
|
516 | ||||
|
517 | ||||
|
518 | Actual testing | |||
|
519 | -------------- | |||
|
520 | ||||
|
521 | $ cd ../clone-test-split | |||
|
522 | ||||
|
523 | We now pull this in the clone the split should be in one changegroup, the update in another one | |||
|
524 | ||||
|
525 | $ hg pull | |||
|
526 | pulling from $TESTTMP/repo-test-split | |||
|
527 | searching for changes | |||
|
528 | remote: changegroup1 | |||
|
529 | adding changesets | |||
|
530 | adding manifests | |||
|
531 | adding file changes | |||
|
532 | remote: changegroup2 | |||
|
533 | adding changesets | |||
|
534 | adding manifests | |||
|
535 | adding file changes | |||
|
536 | added 2 changesets with 10002 changes to 10002 files | |||
|
537 | new changesets 5e5bf9c91085:900b170f70d0 | |||
|
538 | pullop.cgresult is 1 | |||
|
539 | (run 'hg update' to get a working copy) | |||
|
540 | ||||
|
541 | IMPORTANT: now the revlogs must be split | |||
|
542 | $ ls -1 .hg/store/00manifest.* | |||
|
543 | .hg/store/00manifest.d | |||
|
544 | .hg/store/00manifest.i | |||
|
545 | $ ls -1 .hg/store/data/_a.* | |||
|
546 | .hg/store/data/_a.d | |||
|
547 | .hg/store/data/_a.i | |||
|
548 | ||||
|
549 | manifest should work | |||
|
550 | ||||
|
551 | $ hg files -r tip | wc -l | |||
|
552 | \s*10007 (re) | |||
|
553 | ||||
|
554 | file content should work | |||
|
555 | ||||
|
556 | $ hg cat -r tip A | wc -l | |||
|
557 | \s*100001 (re) |
General Comments 0
You need to be logged in to leave comments.
Login now