tests/test-revlog-packentry.t
author Gregory Szorc <gregory.szorc@gmail.com>
Sat, 27 Feb 2016 18:22:49 -0800
branchstable
changeset 28289 d493d64757eb
parent 23285 6cc1f388ac80
child 37282 009d0283de5f
permissions -rw-r--r--
hg: obtain lock when creating share from pooled repo (issue5104) There are race conditions between clients performing a shared clone to pooled storage: 1) Clients race to create the new shared repo in the pool directory 2) 1 client is seeding the repo in the pool directory and another goes to share it before it is fully cloned We prevent these race conditions by obtaining a lock in the pool directory that is derived from the name of the repo we will be accessing. To test this, a simple generic "lockdelay" extension has been added. The extension inserts an optional, configurable delay before or after lock acquisition. In the test, we delay 2 seconds after lock acquisition in the first process and 1 second before lock acquisition in the 2nd process. This means the first process has 1s to obtain the lock. There is a race condition here. If we encounter it in the wild, we could change the dummy extension to wait on the lock file to appear instead of relying on timing. But that's more complicated. Let's see what happens first.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
11919
67fb33eb3add tests: unify test-revlog-packentry
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 5338
diff changeset
     1
  $ hg init repo
67fb33eb3add tests: unify test-revlog-packentry
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 5338
diff changeset
     2
  $ cd repo
5338
f87685355c9c revlog: fix revlogio.packentry corner case
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
     3
11919
67fb33eb3add tests: unify test-revlog-packentry
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 5338
diff changeset
     4
  $ touch foo
67fb33eb3add tests: unify test-revlog-packentry
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 5338
diff changeset
     5
  $ hg ci -Am 'add foo'
67fb33eb3add tests: unify test-revlog-packentry
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 5338
diff changeset
     6
  adding foo
67fb33eb3add tests: unify test-revlog-packentry
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 5338
diff changeset
     7
67fb33eb3add tests: unify test-revlog-packentry
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 5338
diff changeset
     8
  $ hg up -C null
67fb33eb3add tests: unify test-revlog-packentry
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 5338
diff changeset
     9
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
5338
f87685355c9c revlog: fix revlogio.packentry corner case
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
    10
11919
67fb33eb3add tests: unify test-revlog-packentry
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 5338
diff changeset
    11
this should be stored as a delta against rev 0
5338
f87685355c9c revlog: fix revlogio.packentry corner case
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
    12
11919
67fb33eb3add tests: unify test-revlog-packentry
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 5338
diff changeset
    13
  $ echo foo bar baz > foo
67fb33eb3add tests: unify test-revlog-packentry
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 5338
diff changeset
    14
  $ hg ci -Am 'add foo again'
67fb33eb3add tests: unify test-revlog-packentry
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 5338
diff changeset
    15
  adding foo
67fb33eb3add tests: unify test-revlog-packentry
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 5338
diff changeset
    16
  created new head
5338
f87685355c9c revlog: fix revlogio.packentry corner case
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
    17
14182
ec5886db9dc6 tests: fix deprecated use of hg debugdata/debugindex
Sune Foldager <cryo@cyanite.org>
parents: 11919
diff changeset
    18
  $ hg debugindex foo
17132
b87acfda5268 tests: reduce spurious failures when run with generaldelta
Bryan O'Sullivan <bryano@fb.com>
parents: 16913
diff changeset
    19
     rev    offset  length  ..... linkrev nodeid       p1           p2 (re)
b87acfda5268 tests: reduce spurious failures when run with generaldelta
Bryan O'Sullivan <bryano@fb.com>
parents: 16913
diff changeset
    20
       0         0       0  .....       0 b80de5d13875 000000000000 000000000000 (re)
23285
6cc1f388ac80 revlog: store fulltext when compressed delta is bigger than it
Siddharth Agarwal <sid0@fb.com>
parents: 17132
diff changeset
    21
       1         0      13  .....       1 0376abec49b8 000000000000 000000000000 (re)
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 14182
diff changeset
    22
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 14182
diff changeset
    23
  $ cd ..