tests/test-merge8.t
author Idan Kamara <idankk86@gmail.com>
Sun, 16 Dec 2012 23:13:02 +0200
changeset 18309 cfeab932cff7
parent 16913 f2719b387380
child 34661 eb586ed5d8ce
permissions -rw-r--r--
localrepo: don't refresh filecache entries that aren't in __dict__ We call invalidate to remove properties from __dict__ because they're possibly outdated and we'd like to check for a new version. Next time the property is accessed the filecache mechanism checks the current stat info with the one recorded at the last time the property was read, if they're different it recreates the property. Previously we refreshed the stat info on all properties in the filecache when the lock is released, including properties that are missing from __dict__. This is a problem because: l = repo.lock() repo.P # stat info S for P is recorded in _filecache <changes are made to repo.P indirectly, e.g. underlying file is replaced> # P's new stat info = S' l.release() # filecache refreshes, records S' as P's stat info At this point our filecache contains P with stat info S', but P's version is from S, which is outdated. The above happens during _rollback and strip. Currently we're wiping the filecache and forcing everything to reload from scratch which works but isn't the right solution.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
11981
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
     1
Test for changeset ba7c74081861
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
     2
(update dirstate correctly for non-branchmerge updates)
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
     3
  $ hg init a
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
     4
  $ cd a
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
     5
  $ echo a > a
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
     6
  $ hg add a
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
     7
  $ hg commit -m a
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
     8
  $ cd ..
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
     9
  $ hg clone a b
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
    10
  updating to branch default
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
    11
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
    12
  $ cd a
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
    13
  $ hg mv a b
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
    14
  $ hg commit -m move
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
    15
  $ echo b >> b
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
    16
  $ hg commit -m b
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
    17
  $ cd ../b
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
    18
  $ hg pull ../a
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
    19
  pulling from ../a
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
    20
  searching for changes
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
    21
  adding changesets
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
    22
  adding manifests
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
    23
  adding file changes
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
    24
  added 2 changesets with 2 changes to 1 files
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
    25
  (run 'hg update' to get a working copy)
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
    26
  $ hg update
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
    27
  1 files updated, 0 files merged, 1 files removed, 0 files unresolved
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 11981
diff changeset
    28
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 11981
diff changeset
    29
  $ cd ..