comparison tests/test-obsolete.t @ 5440:d55e83faeaf8 stable

test-obsolete: remove divergence casually introduced by rebase This content-divergence is getting in the way of the behavior improvement in introduced in c26335fa4225. So we remove it.
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Wed, 22 Jul 2020 12:25:41 +0200
parents 272094174185
children 8d28fa24f7cd e5d91fd1f319 d0f73113fcc0
comparison
equal deleted inserted replaced
5439:272094174185 5440:d55e83faeaf8
528 o 0 - 1f0dee641bb7 add a 528 o 0 - 1f0dee641bb7 add a
529 529
530 530
531 should not rebase extinct changesets 531 should not rebase extinct changesets
532 532
533 $ hg rebase -b '3' -d 4 --traceback --config experimental.rebaseskipobsolete=0 533 $ hg rebase -b '3' -d 4 --traceback
534 rebasing 3:0d3f46688ccc "add obsol_c" 534 note: not rebasing 3:0d3f46688ccc "add obsol_c", already in destination as 4:725c380fe99b "add obsol_c'"
535 rebasing 8:159dfc9fa5d3 "add obsol_d''" 535 rebasing 8:159dfc9fa5d3 "add obsol_d''"
536 2 new content-divergent changesets
537 $ hg --hidden log -q -r 'successors(min(desc("re:^add obsol_c$")))' 536 $ hg --hidden log -q -r 'successors(min(desc("re:^add obsol_c$")))'
538 4:725c380fe99b 537 4:725c380fe99b
539 10:2033b4e49474
540 $ hg up tip 538 $ hg up tip
541 ? files updated, 0 files merged, 0 files removed, 0 files unresolved (glob) 539 ? files updated, 0 files merged, 0 files removed, 0 files unresolved (glob)
542 $ hg log -G --template='{rev} - {node|short} {desc}\n' 540 $ hg log -G --template='{rev} - {node|short} {desc}\n'
543 @ 11 - 9468a5f5d8b2 add obsol_d'' 541 @ 10 - 8396b69aa9f7 add obsol_d''
544 | 542 |
545 * 10 - 2033b4e49474 add obsol_c 543 o 4 - 725c380fe99b add obsol_c'
546 |
547 * 4 - 725c380fe99b add obsol_c'
548 | 544 |
549 o 1 - 7c3bad9141dc add b 545 o 1 - 7c3bad9141dc add b
550 | 546 |
551 o 0 - 1f0dee641bb7 add a 547 o 0 - 1f0dee641bb7 add a
552 548
558 pushing to ../other-new 554 pushing to ../other-new
559 searching for changes 555 searching for changes
560 adding changesets 556 adding changesets
561 adding manifests 557 adding manifests
562 adding file changes 558 adding file changes
563 added 2 changesets with 1 changes to [12] files (re) 559 added 1 changesets with 1 changes to 1 files
564 3 new obsolescence markers 560 2 new obsolescence markers
565 obsoleted 1 changesets 561 obsoleted 1 changesets
566 2 new content-divergent changesets 562 $ hg up -q 'desc("re:^add obsol_c'\''$")'
567 $ hg up -q 'desc("re:^add obsol_c$")'
568 $ mkcommit "obsol_d'''" 563 $ mkcommit "obsol_d'''"
569 created new head 564 created new head
570 $ hg debugobsolete `getid 'max(desc("re:^add obsol_d'\'\''$"))'` `getid 'desc("re:^add obsol_d'\'\'\''$")'` 565 $ hg debugobsolete `getid 'max(desc("re:^add obsol_d'\'\''$"))'` `getid 'desc("re:^add obsol_d'\'\'\''$")'`
571 1 new obsolescence markers 566 1 new obsolescence markers
572 obsoleted 1 changesets 567 obsoleted 1 changesets
586 581
587 $ cd local 582 $ cd local
588 $ hg phase --hidden --public 'max(desc("re:^add obsol_d'\'\''$"))' 583 $ hg phase --hidden --public 'max(desc("re:^add obsol_d'\'\''$"))'
589 1 new phase-divergent changesets 584 1 new phase-divergent changesets
590 $ hg log -G --template='{rev} - ({phase}) {node|short} {desc}\n' 585 $ hg log -G --template='{rev} - ({phase}) {node|short} {desc}\n'
591 @ 12 - (draft) 6db5e282cb91 add obsol_d''' 586 @ 11 - (draft) 5a9eef7b778b add obsol_d'''
592 | 587 |
593 | o 11 - (public) 9468a5f5d8b2 add obsol_d'' 588 | o 10 - (public) 8396b69aa9f7 add obsol_d''
594 |/ 589 |/
595 o 10 - (public) 2033b4e49474 add obsol_c
596 |
597 o 4 - (public) 725c380fe99b add obsol_c' 590 o 4 - (public) 725c380fe99b add obsol_c'
598 | 591 |
599 o 1 - (public) 7c3bad9141dc add b 592 o 1 - (public) 7c3bad9141dc add b
600 | 593 |
601 o 0 - (public) 1f0dee641bb7 add a 594 o 0 - (public) 1f0dee641bb7 add a
602 595
603 $ hg log -r 'phasedivergent()' 596 $ hg log -r 'phasedivergent()'
604 changeset: 12:6db5e282cb91 597 changeset: 11:5a9eef7b778b
605 tag: tip 598 tag: tip
606 parent: 10:2033b4e49474 599 parent: 4:725c380fe99b
607 user: test 600 user: test
608 date: Thu Jan 01 00:00:00 1970 +0000 601 date: Thu Jan 01 00:00:00 1970 +0000
609 instability: phase-divergent 602 instability: phase-divergent
610 summary: add obsol_d''' 603 summary: add obsol_d'''
611 604
612 $ hg push ../other-new/ 605 $ hg push ../other-new/
613 pushing to ../other-new/ 606 pushing to ../other-new/
614 searching for changes 607 searching for changes
615 abort: push includes phase-divergent changeset: 6db5e282cb91! 608 abort: push includes phase-divergent changeset: 5a9eef7b778b!
616 (use 'hg evolve' to get a stable history or --force to ignore warnings) 609 (use 'hg evolve' to get a stable history or --force to ignore warnings)
617 [255] 610 [255]
618 611
619 Check hg commit --amend compat 612 Check hg commit --amend compat
620 613
623 $ mkcommit f 616 $ mkcommit f
624 created new head 617 created new head
625 $ echo 42 >> f 618 $ echo 42 >> f
626 $ hg commit --amend --traceback --quiet 619 $ hg commit --amend --traceback --quiet
627 $ hg log -G 620 $ hg log -G
628 @ changeset: 14:705ab2a6b72e 621 @ changeset: 13:6491691ca36f
629 | tag: tip 622 | tag: tip
630 | parent: 10:2033b4e49474 623 | parent: 4:725c380fe99b
631 | user: test 624 | user: test
632 | date: Thu Jan 01 00:00:00 1970 +0000 625 | date: Thu Jan 01 00:00:00 1970 +0000
633 | summary: add f 626 | summary: add f
634 | 627 |
635 | * changeset: 12:6db5e282cb91 628 | * changeset: 11:5a9eef7b778b
636 |/ parent: 10:2033b4e49474 629 |/ parent: 4:725c380fe99b
637 | user: test 630 | user: test
638 | date: Thu Jan 01 00:00:00 1970 +0000 631 | date: Thu Jan 01 00:00:00 1970 +0000
639 | instability: phase-divergent 632 | instability: phase-divergent
640 | summary: add obsol_d''' 633 | summary: add obsol_d'''
641 | 634 |
642 | o changeset: 11:9468a5f5d8b2 635 | o changeset: 10:8396b69aa9f7
643 |/ user: test 636 |/ parent: 4:725c380fe99b
637 | user: test
644 | date: Thu Jan 01 00:00:00 1970 +0000 638 | date: Thu Jan 01 00:00:00 1970 +0000
645 | summary: add obsol_d'' 639 | summary: add obsol_d''
646 |
647 o changeset: 10:2033b4e49474
648 | parent: 4:725c380fe99b
649 | user: test
650 | date: Thu Jan 01 00:00:00 1970 +0000
651 | summary: add obsol_c
652 | 640 |
653 o changeset: 4:725c380fe99b 641 o changeset: 4:725c380fe99b
654 | parent: 1:7c3bad9141dc 642 | parent: 1:7c3bad9141dc
655 | user: test 643 | user: test
656 | date: Thu Jan 01 00:00:00 1970 +0000 644 | date: Thu Jan 01 00:00:00 1970 +0000
672 a7a6f2b5d8a54b81bc7aa2fba2934ad6d700a79e 95de7fc6918dea4c9c8d5382f50649794b474c4a 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} 660 a7a6f2b5d8a54b81bc7aa2fba2934ad6d700a79e 95de7fc6918dea4c9c8d5382f50649794b474c4a 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
673 95de7fc6918dea4c9c8d5382f50649794b474c4a 909a0fb57e5d909f353d89e394ffd7e0890fec88 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} 661 95de7fc6918dea4c9c8d5382f50649794b474c4a 909a0fb57e5d909f353d89e394ffd7e0890fec88 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
674 909a0fb57e5d909f353d89e394ffd7e0890fec88 159dfc9fa5d334d7e03a0aecfc7f7ab4c3431fea 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} 662 909a0fb57e5d909f353d89e394ffd7e0890fec88 159dfc9fa5d334d7e03a0aecfc7f7ab4c3431fea 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
675 1f0dee641bb7258c56bd60e93edfa2405381c41e 83b5778897adafb967ef2f75be3aaa4fce49a4cc 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} 663 1f0dee641bb7258c56bd60e93edfa2405381c41e 83b5778897adafb967ef2f75be3aaa4fce49a4cc 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
676 83b5778897adafb967ef2f75be3aaa4fce49a4cc 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} 664 83b5778897adafb967ef2f75be3aaa4fce49a4cc 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
677 0d3f46688ccc6e756c7e96cf64c391c411309597 2033b4e494742365851fac84d276640cbf52833e 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'rebase', 'user': 'test'} 665 159dfc9fa5d334d7e03a0aecfc7f7ab4c3431fea 8396b69aa9f7b4ea03ed94c63641e3c021d71f0c 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'rebase', 'user': 'test'}
678 159dfc9fa5d334d7e03a0aecfc7f7ab4c3431fea 9468a5f5d8b2c5d91e17474e95ae4791e9718fdf 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'rebase', 'user': 'test'} 666 8396b69aa9f7b4ea03ed94c63641e3c021d71f0c 5a9eef7b778bf2ba5e6cc1b741ec5a2110ba1480 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
679 9468a5f5d8b2c5d91e17474e95ae4791e9718fdf 6db5e282cb91df5c43ff1f1287c119ff83230d42 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} 667 bc294e7f0681bbed7b83047814e9eadabead2f8d 6491691ca36ffa1b1c48d9bf8605ac5a25d200f6 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'}
680 0b1b6dd009c037985363e2290a0b579819f659db 705ab2a6b72e2cd86edb799ebe15f2695f86143e 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'}
681 668
682 Check divergence detection (note: multiple successors is sorted by changeset hash) 669 Check divergence detection (note: multiple successors is sorted by changeset hash)
683 670
684 $ hg up 'max(desc("re:^add obsol_d'\'\''$"))' # add obsol_d'' 671 $ hg up 'max(desc("re:^add obsol_d'\'\''$"))' # add obsol_d''
685 1 files updated, 0 files merged, 1 files removed, 0 files unresolved 672 1 files updated, 0 files merged, 1 files removed, 0 files unresolved
686 $ mkcommit "obsolet_conflicting_d" 673 $ mkcommit "obsolet_conflicting_d"
687 $ hg summary 674 $ hg summary
688 parent: 15:50f11e5e3a63 tip 675 parent: 14:553bdab4dee8 tip
689 add obsolet_conflicting_d 676 add obsolet_conflicting_d
690 branch: default 677 branch: default
691 commit: (clean) 678 commit: (clean)
692 update: (2|9|11) new changesets, (3|9|10) branch heads \(merge\) (re) 679 update: (2|9|11) new changesets, (3|9|10) branch heads \(merge\) (re)
693 phases: 3 draft 680 phases: 3 draft
694 phase-divergent: 1 changesets 681 phase-divergent: 1 changesets
695 $ hg debugobsolete `getid 'desc("re:^add d$")'` `getid 'desc("re:^add obsolet_conflicting_d$")'` 682 $ hg debugobsolete `getid 'desc("re:^add d$")'` `getid 'desc("re:^add obsolet_conflicting_d$")'`
696 1 new obsolescence markers 683 1 new obsolescence markers
697 2 new content-divergent changesets 684 2 new content-divergent changesets
698 $ hg log -r 'contentdivergent()' 685 $ hg log -r 'contentdivergent()'
699 changeset: 12:6db5e282cb91 686 changeset: 11:5a9eef7b778b
700 parent: 10:2033b4e49474 687 parent: 4:725c380fe99b
701 user: test 688 user: test
702 date: Thu Jan 01 00:00:00 1970 +0000 689 date: Thu Jan 01 00:00:00 1970 +0000
703 instability: phase-divergent, content-divergent 690 instability: phase-divergent, content-divergent
704 summary: add obsol_d''' 691 summary: add obsol_d'''
705 692
706 changeset: 15:50f11e5e3a63 693 changeset: 14:553bdab4dee8
707 tag: tip 694 tag: tip
708 parent: 11:9468a5f5d8b2 695 parent: 10:8396b69aa9f7
709 user: test 696 user: test
710 date: Thu Jan 01 00:00:00 1970 +0000 697 date: Thu Jan 01 00:00:00 1970 +0000
711 instability: content-divergent 698 instability: content-divergent
712 summary: add obsolet_conflicting_d 699 summary: add obsolet_conflicting_d
713 700
714 701
715 Check import reports new unstable changeset: 702 Check import reports new unstable changeset:
716 703
717 $ hg up --hidden 'desc("re:^add c$")' 704 $ hg up --hidden 'desc("re:^add c$")'
718 1 files updated, 0 files merged, 4 files removed, 0 files unresolved 705 1 files updated, 0 files merged, 3 files removed, 0 files unresolved
719 updated to hidden changeset 4538525df7e2 706 updated to hidden changeset 4538525df7e2
720 (hidden revision '4538525df7e2' has diverged) 707 (hidden revision '4538525df7e2' was rewritten as: 725c380fe99b)
721 working directory parent is obsolete! (4538525df7e2) 708 working directory parent is obsolete! (4538525df7e2)
722 (4538525df7e2 has diverged, use 'hg evolve --list --content-divergent' to resolve the issue) 709 (use 'hg evolve' to update to its successor: 725c380fe99b)
723 $ hg export 'desc("re:^add obsol_d'\'\''$")' | hg import - 710 $ hg export 'desc("re:^add obsol_d'\'\''$")' | hg import -
724 applying patch from stdin 711 applying patch from stdin
725 1 new orphan changesets 712 1 new orphan changesets
726 713
727 714
728 Relevant marker computation 715 Relevant marker computation
729 ============================== 716 ==============================
730 717
731 $ hg log -G --hidden 718 $ hg log -G --hidden
732 @ changeset: 16:a5f7a21fe7bc 719 @ changeset: 15:a5f7a21fe7bc
733 | tag: tip 720 | tag: tip
734 | parent: 2:4538525df7e2 721 | parent: 2:4538525df7e2
735 | user: test 722 | user: test
736 | date: Thu Jan 01 00:00:00 1970 +0000 723 | date: Thu Jan 01 00:00:00 1970 +0000
737 | instability: orphan 724 | instability: orphan
738 | summary: add obsol_d'' 725 | summary: add obsol_d''
739 | 726 |
740 | * changeset: 15:50f11e5e3a63 727 | * changeset: 14:553bdab4dee8
741 | | parent: 11:9468a5f5d8b2 728 | | parent: 10:8396b69aa9f7
742 | | user: test 729 | | user: test
743 | | date: Thu Jan 01 00:00:00 1970 +0000 730 | | date: Thu Jan 01 00:00:00 1970 +0000
744 | | instability: content-divergent 731 | | instability: content-divergent
745 | | summary: add obsolet_conflicting_d 732 | | summary: add obsolet_conflicting_d
746 | | 733 | |
747 | | o changeset: 14:705ab2a6b72e 734 | | o changeset: 13:6491691ca36f
748 | | | parent: 10:2033b4e49474 735 | | | parent: 4:725c380fe99b
749 | | | user: test 736 | | | user: test
750 | | | date: Thu Jan 01 00:00:00 1970 +0000 737 | | | date: Thu Jan 01 00:00:00 1970 +0000
751 | | | summary: add f 738 | | | summary: add f
752 | | | 739 | | |
753 | | | x changeset: 13:0b1b6dd009c0 740 | | | x changeset: 12:bc294e7f0681
754 | | |/ parent: 10:2033b4e49474 741 | | |/ parent: 4:725c380fe99b
755 | | | user: test 742 | | | user: test
756 | | | date: Thu Jan 01 00:00:00 1970 +0000 743 | | | date: Thu Jan 01 00:00:00 1970 +0000
757 | | | obsolete: amended using amend as 14:705ab2a6b72e 744 | | | obsolete: amended using amend as 13:6491691ca36f
758 | | | summary: add f 745 | | | summary: add f
759 | | | 746 | | |
760 | | | * changeset: 12:6db5e282cb91 747 | | | * changeset: 11:5a9eef7b778b
761 | | |/ parent: 10:2033b4e49474 748 | | |/ parent: 4:725c380fe99b
762 | | | user: test 749 | | | user: test
763 | | | date: Thu Jan 01 00:00:00 1970 +0000 750 | | | date: Thu Jan 01 00:00:00 1970 +0000
764 | | | instability: phase-divergent, content-divergent 751 | | | instability: phase-divergent, content-divergent
765 | | | summary: add obsol_d''' 752 | | | summary: add obsol_d'''
766 | | | 753 | | |
767 | o | changeset: 11:9468a5f5d8b2 754 | o | changeset: 10:8396b69aa9f7
768 | |/ user: test 755 | |/ parent: 4:725c380fe99b
756 | | user: test
769 | | date: Thu Jan 01 00:00:00 1970 +0000 757 | | date: Thu Jan 01 00:00:00 1970 +0000
770 | | summary: add obsol_d'' 758 | | summary: add obsol_d''
771 | |
772 | o changeset: 10:2033b4e49474
773 | | parent: 4:725c380fe99b
774 | | user: test
775 | | date: Thu Jan 01 00:00:00 1970 +0000
776 | | summary: add obsol_c
777 | | 759 | |
778 | | x changeset: 9:83b5778897ad 760 | | x changeset: 9:83b5778897ad
779 | | parent: -1:000000000000 761 | | parent: -1:000000000000
780 | | user: test 762 | | user: test
781 | | date: Thu Jan 01 00:00:00 1970 +0000 763 | | date: Thu Jan 01 00:00:00 1970 +0000
784 | | 766 | |
785 | | x changeset: 8:159dfc9fa5d3 767 | | x changeset: 8:159dfc9fa5d3
786 | | | parent: 3:0d3f46688ccc 768 | | | parent: 3:0d3f46688ccc
787 | | | user: test 769 | | | user: test
788 | | | date: Thu Jan 01 00:00:00 1970 +0000 770 | | | date: Thu Jan 01 00:00:00 1970 +0000
789 | | | obsolete: rebased using rebase as 11:9468a5f5d8b2 771 | | | obsolete: rebased using rebase as 10:8396b69aa9f7
790 | | | summary: add obsol_d'' 772 | | | summary: add obsol_d''
791 | | | 773 | | |
792 | | | x changeset: 7:909a0fb57e5d 774 | | | x changeset: 7:909a0fb57e5d
793 | | |/ parent: 3:0d3f46688ccc 775 | | |/ parent: 3:0d3f46688ccc
794 | | | user: test 776 | | | user: test
806 | | | x changeset: 5:a7a6f2b5d8a5 788 | | | x changeset: 5:a7a6f2b5d8a5
807 | | |/ parent: 3:0d3f46688ccc 789 | | |/ parent: 3:0d3f46688ccc
808 | | | user: test 790 | | | user: test
809 | | | date: Thu Jan 01 00:00:00 1970 +0000 791 | | | date: Thu Jan 01 00:00:00 1970 +0000
810 | | | obsolete: rewritten as 6:95de7fc6918d 792 | | | obsolete: rewritten as 6:95de7fc6918d
811 | | | obsolete: rewritten as 15:50f11e5e3a63 793 | | | obsolete: rewritten as 14:553bdab4dee8
812 | | | summary: add d 794 | | | summary: add d
813 | | | 795 | | |
814 | o | changeset: 4:725c380fe99b 796 | o | changeset: 4:725c380fe99b
815 | | | parent: 1:7c3bad9141dc 797 | | | parent: 1:7c3bad9141dc
816 | | | user: test 798 | | | user: test
820 | | x changeset: 3:0d3f46688ccc 802 | | x changeset: 3:0d3f46688ccc
821 | |/ parent: 1:7c3bad9141dc 803 | |/ parent: 1:7c3bad9141dc
822 | | user: test 804 | | user: test
823 | | date: Thu Jan 01 00:00:00 1970 +0000 805 | | date: Thu Jan 01 00:00:00 1970 +0000
824 | | obsolete: rewritten as 4:725c380fe99b 806 | | obsolete: rewritten as 4:725c380fe99b
825 | | obsolete: rebased using rebase as 10:2033b4e49474
826 | | summary: add obsol_c 807 | | summary: add obsol_c
827 | | 808 | |
828 x | changeset: 2:4538525df7e2 809 x | changeset: 2:4538525df7e2
829 |/ user: test 810 |/ user: test
830 | date: Thu Jan 01 00:00:00 1970 +0000 811 | date: Thu Jan 01 00:00:00 1970 +0000
848 4538525df7e2b9f09423636c61ef63a4cb872a2d 0d3f46688ccc6e756c7e96cf64c391c411309597 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} 829 4538525df7e2b9f09423636c61ef63a4cb872a2d 0d3f46688ccc6e756c7e96cf64c391c411309597 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
849 830
850 simple rewrite with a prune attached to it 831 simple rewrite with a prune attached to it
851 832
852 $ hg debugobsolete --rev 'desc("re:^add obsolet_conflicting_d$")' 833 $ hg debugobsolete --rev 'desc("re:^add obsolet_conflicting_d$")'
853 a7a6f2b5d8a54b81bc7aa2fba2934ad6d700a79e 50f11e5e3a63806e678c734e525502f522d37e38 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} 834 a7a6f2b5d8a54b81bc7aa2fba2934ad6d700a79e 553bdab4dee8f0032cd60de38be72d1d2e8225d5 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
854 835
855 Transitive rewrite 836 Transitive rewrite
856 837
857 $ hg --hidden debugobsolete --rev 'min(desc("re:^add obsol_d'\'\''$"))' 838 $ hg --hidden debugobsolete --rev 'min(desc("re:^add obsol_d'\'\''$"))'
858 909a0fb57e5d909f353d89e394ffd7e0890fec88 159dfc9fa5d334d7e03a0aecfc7f7ab4c3431fea 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} 839 909a0fb57e5d909f353d89e394ffd7e0890fec88 159dfc9fa5d334d7e03a0aecfc7f7ab4c3431fea 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}