monotone-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Monotone-devel] rename boundary failure in 0.25


From: Shawn Samuel
Subject: [Monotone-devel] rename boundary failure in 0.25
Date: Wed, 8 Mar 2006 10:43:59 -0500
User-agent: Mutt/1.5.9i

On 0.25, below is a simple test case that causes monotone 0.25 to blow
up.

setup branch1
add a.txt, b.txt
commit1
rename a.txt c.txt
commit2
rename b.txt a.txt
commit3

co -r commit1
edit a.txt
commit4 to branch2

propagate branch2 branch1

To summarize, I renamed a->c, b->a (in two separate commits). If I
edit "a" in a pre-rename version and commit to a separate branch, the
propagate blows up as below. Same thing if I commit to the same branch
and merge. If I modify "b", it works fine.

The implication is that monotone can't tell if that change to "a" is
meant to apply to "c" or "a" in the first branch. Since there is no
sequencing implied to changes in parallel histories, we can't tell if
the rename in one branch should happen before or after the
modification of the file in the other.

In the general case, this makes sense, but to me it makes no sense for
renames, since if I'm modifying content in "a", it should clearly
apply to whatever file "a" was renamed to - since applying that change
to the "b" that was renamed to "a" makes no sense whatsoever. 

So, two questions -
1) Do monotone developers agree that this is how it should work?
2) How do I fix this in the meantime? Will "mt disapprove" (oops, just
outed my naming preference) fix it, or will it just further confuse
monotone? Is there some other way? Fortunately, this rename was in a
side-branch, so it's not a really big deal for my team, but I would
like to know what to do.

I've pasted in the result of my failed propagate, monotone
--full-version, and the dump of my MT/debug file.


------------------------------------------------
monotone: [source] 5f7313e4e18756f26a40c9f42a1576baead66094
monotone: [target] 31671d71b05c3370680ccaa319f205e259880379
monotone: common ancestor 68483e681d0d05f4d994e46c2f11216327e214ee
address@hidden 2006-03-08T15:12:03 found
monotone: trying 3-way merge
monotone: fatal: std::logic_error: change_set.cc:2141: invariant
'I(b.deltas.find(path_in_merged) == b.deltas.end())' violated
monotone: 
monotone: 
monotone: this is almost certainly a bug in monotone.
monotone: please send this error message, the output of 'monotone 
--full-version',
monotone: and a description of what you were doing to
address@hidden
monotone: wrote debugging log to C:/work/src/test4/MT/debugif
reporting a bug, please include this file
------------------------------------------------
monotone 0.25 (base revision:
4f4cb0aa339ad70c5b2624db22073d9e9a36c115)
Running on: Windows NT/2000/XP (5.1, build 2600) on ia32 (level 6, rev
2309)
Changes since base revision: 
new_manifest [76b5ea65324372db9886d2c0a8cee8e759841c8c]

old_revision [4f4cb0aa339ad70c5b2624db22073d9e9a36c115]
old_manifest [76b5ea65324372db9886d2c0a8cee8e759841c8c]


  Generated from data cached in the distribution;
  further changes may have been made.

  Generated from data cached in the distribution;
  further changes may have been made.

  Generated from data cached in the distribution;
  further changes may have been made.
-------------------------------------------------
started up on Windows NT/2000/XP (5.1, build 2600) on ia32 (level 6,
  rev 2309)
command line: 'monotone', 'propagate', 'rename.test2', 'rename.test'
set locale: LC_ALL=English_United States.1252
initial abs path is: C:/work/src/test4
converting 8 bytes from ASCII to UTF-8
converting 9 bytes from ASCII to UTF-8
converting 12 bytes from ASCII to UTF-8
converting 11 bytes from ASCII to UTF-8
initializing from directory C:/work/src/test4
searching for 'MT' directory with root '/'
search for 'MT' ended at 'C:/work/src/test4' with '' removed
working root is 'C:/work/src/test4'
initial relative path is ''
options path is MT/options
branch name is 'rename.test2'
local dump path is MT/debug
setting dump path to MT/debug
opening rcfile 'C:/Documents and Settings/shawn/Application
  Data/monotone/monotonerc' ...
'C:/Documents and Settings/shawn/Application Data/monotone/monotonerc'
  is ok
skipping nonexistent rcfile 'MT/monotonerc'
executing command 'propagate'
executing SQL 'SELECT sql FROM sqlite_master WHERE (type = 'table' OR
  type = 'index') AND sql IS NOT NULL AND name not like 'sqlite_stat%'
  ORDER BY name'
result: 0 (not an error)
prepared statement SELECT id, name, value, keypair, signature FROM
  revision_certs WHERE name = ? AND value = ?
binding 2 parameters for SELECT id, name, value, keypair, signature
  FROM revision_certs WHERE name = ? AND value = ?
binding 1 with value 'branch'
binding 2 with value 'cmVuYW1lLnRlc3Qy
'
loading lua hook persist_phrase_ok
lua: extracted bool = 1
prepared statement SELECT id FROM public_keys WHERE id = ?
binding 1 parameters for SELECT id FROM public_keys WHERE id = ?
binding 1 with value 'address@hidden'
prepared statement SELECT keydata FROM public_keys WHERE id = ?
binding 1 parameters for SELECT keydata FROM public_keys WHERE id = ?
binding 1 with value 'address@hidden'
cert: signable text
  address@hidden:cmVuYW1lLnRlc3Qy]
loading lua hook persist_phrase_ok
lua: extracted bool = 1
building verifier for 160-byte pub key
checking 175-byte (128 decoded) signature
cert ok
loading lua hook get_revision_cert_trust
lua: extracted bool = 1
trust function liked 1 signers of branch cert on revision
  5f7313e4e18756f26a40c9f42a1576baead66094
prepared statement SELECT parent,child FROM revision_ancestry
binding 0 parameters for SELECT parent,child FROM revision_ancestry
binding 2 parameters for SELECT id, name, value, keypair, signature
  FROM revision_certs WHERE name = ? AND value = ?
binding 1 with value 'branch'
binding 2 with value 'cmVuYW1lLnRlc3Q=
'
cert: signable text
  address@hidden:cmVuYW1lLnRlc3Q=]
checking 175-byte (128 decoded) signature
cert ok
cert: signable text
  address@hidden:cmVuYW1lLnRlc3Q=]
checking 175-byte (128 decoded) signature
cert ok
cert: signable text
  address@hidden:cmVuYW1lLnRlc3Q=]
checking 175-byte (128 decoded) signature
cert ok
cert: signable text
  address@hidden:cmVuYW1lLnRlc3Q=]
checking 175-byte (128 decoded) signature
cert ok
cert: signable text
  address@hidden:cmVuYW1lLnRlc3Q=]
checking 175-byte (128 decoded) signature
cert ok
cert: signable text
  address@hidden:cmVuYW1lLnRlc3Q=]
checking 175-byte (128 decoded) signature
cert ok
loading lua hook get_revision_cert_trust
lua: extracted bool = 1
trust function liked 1 signers of branch cert on revision
  31671d71b05c3370680ccaa319f205e259880379
loading lua hook get_revision_cert_trust
lua: extracted bool = 1
trust function liked 1 signers of branch cert on revision
  68483e681d0d05f4d994e46c2f11216327e214ee
loading lua hook get_revision_cert_trust
lua: extracted bool = 1
trust function liked 1 signers of branch cert on revision
  7094ce605c0d2753bc3f881372d78e713bd4aba8
loading lua hook get_revision_cert_trust
lua: extracted bool = 1
trust function liked 1 signers of branch cert on revision
  a267773896293276bb6205893b5cc356a696c647
loading lua hook get_revision_cert_trust
lua: extracted bool = 1
trust function liked 1 signers of branch cert on revision
  cf8f58369eb2e6ac7339e79dceacc05f1a6f0e4e
loading lua hook get_revision_cert_trust
lua: extracted bool = 1
trust function liked 1 signers of branch cert on revision
  f92f2b3b0e99bd9edcd1e721d2f48580c77b10b2
binding 0 parameters for SELECT parent,child FROM revision_ancestry
propagating rename.test2 -> rename.test
[source] 5f7313e4e18756f26a40c9f42a1576baead66094
[target] 31671d71b05c3370680ccaa319f205e259880379
checking whether 5f7313e4e18756f26a40c9f42a1576baead66094 is an
  ancestor of 31671d71b05c3370680ccaa319f205e259880379
binding 0 parameters for SELECT parent,child FROM revision_ancestry
checking whether 31671d71b05c3370680ccaa319f205e259880379 is an
  ancestor of 5f7313e4e18756f26a40c9f42a1576baead66094
binding 0 parameters for SELECT parent,child FROM revision_ancestry
prepared statement BEGIN EXCLUSIVE
binding 0 parameters for BEGIN EXCLUSIVE
prepared statement SELECT data FROM revisions WHERE id = ?
binding 1 parameters for SELECT data FROM revisions WHERE id = ?
binding 1 with value '5f7313e4e18756f26a40c9f42a1576baead66094'
binding 1 parameters for SELECT data FROM revisions WHERE id = ?
binding 1 with value '31671d71b05c3370680ccaa319f205e259880379'
prepared statement SELECT id FROM manifests WHERE id = ?
binding 1 parameters for SELECT id FROM manifests WHERE id = ?
binding 1 with value 'fbd32b03a0e08b93fb561121ea2588bddfcf3907'
prepared statement SELECT data FROM manifests WHERE id = ?
binding 1 parameters for SELECT data FROM manifests WHERE id = ?
binding 1 with value 'fbd32b03a0e08b93fb561121ea2588bddfcf3907'
binding 1 parameters for SELECT id FROM manifests WHERE id = ?
binding 1 with value '9456bcca0389c5ce04c459c54c05d17cd3228d9d'
binding 1 parameters for SELECT data FROM manifests WHERE id = ?
binding 1 with value '9456bcca0389c5ce04c459c54c05d17cd3228d9d'
binding 0 parameters for SELECT parent,child FROM revision_ancestry
searching for common ancestor,
  left=5f7313e4e18756f26a40c9f42a1576baead66094
  right=31671d71b05c3370680ccaa319f205e259880379
loading parents for node 1
prepared statement SELECT parent FROM revision_ancestry WHERE child =
  ?
binding 1 parameters for SELECT parent FROM revision_ancestry WHERE
  child = ?
binding 1 with value '31671d71b05c3370680ccaa319f205e259880379'
parent 7094ce605c0d2753bc3f881372d78e713bd4aba8 -> node 2
parent a267773896293276bb6205893b5cc356a696c647 -> node 3
loading parents for node 0
binding 1 parameters for SELECT parent FROM revision_ancestry WHERE
  child = ?
binding 1 with value '5f7313e4e18756f26a40c9f42a1576baead66094'
parent 68483e681d0d05f4d994e46c2f11216327e214ee -> node 4
common ancestor scan [par=2,anc=5,dom=5]
loading parents for node 4
binding 1 parameters for SELECT parent FROM revision_ancestry WHERE
  child = ?
binding 1 with value '68483e681d0d05f4d994e46c2f11216327e214ee'
loading parents for node 3
binding 1 parameters for SELECT parent FROM revision_ancestry WHERE
  child = ?
binding 1 with value 'a267773896293276bb6205893b5cc356a696c647'
parent cf8f58369eb2e6ac7339e79dceacc05f1a6f0e4e -> node 5
loading parents for node 2
binding 1 parameters for SELECT parent FROM revision_ancestry WHERE
  child = ?
binding 1 with value '7094ce605c0d2753bc3f881372d78e713bd4aba8'
parent 68483e681d0d05f4d994e46c2f11216327e214ee -> node 4
common ancestor scan [par=5,anc=6,dom=6]
found 1 intersecting nodes
found node 68483e681d0d05f4d994e46c2f11216327e214ee, ancestor of right
  31671d71b05c3370680ccaa319f205e259880379 and dominating left
  5f7313e4e18756f26a40c9f42a1576baead66094
prepared statement SELECT id, name, value, keypair, signature FROM
  revision_certs WHERE id = ? AND name = ?
binding 2 parameters for SELECT id, name, value, keypair, signature
  FROM revision_certs WHERE id = ? AND name = ?
binding 1 with value '68483e681d0d05f4d994e46c2f11216327e214ee'
binding 2 with value 'author'
cert: signable text
  address@hidden:c3NhbXVlbEBjb250YWN0bmV0d29ya3MuY29t]
checking 175-byte (128 decoded) signature
cert ok
loading lua hook get_revision_cert_trust
lua: extracted bool = 1
trust function liked 1 signers of author cert on revision
  68483e681d0d05f4d994e46c2f11216327e214ee
binding 2 parameters for SELECT id, name, value, keypair, signature
  FROM revision_certs WHERE id = ? AND name = ?
binding 1 with value '68483e681d0d05f4d994e46c2f11216327e214ee'
binding 2 with value 'date'
cert: signable text
  address@hidden:MjAwNi0wMy0wOFQxNToxMjowMw==]
checking 175-byte (128 decoded) signature
cert ok
loading lua hook get_revision_cert_trust
lua: extracted bool = 1
trust function liked 1 signers of date cert on revision
  68483e681d0d05f4d994e46c2f11216327e214ee
common ancestor 68483e681d0d05f4d994e46c2f11216327e214ee
  address@hidden 2006-03-08T15:12:03 found
trying 3-way merge
binding 1 parameters for SELECT data FROM revisions WHERE id = ?
binding 1 with value '68483e681d0d05f4d994e46c2f11216327e214ee'
binding 1 parameters for SELECT id FROM manifests WHERE id = ?
binding 1 with value '11891f9522ac6f66aa5be96b0d782029ae668be6'
reconstructing 11891f9522ac6f66aa5be96b0d782029ae668be6 in
  manifest_deltas
prepared statement SELECT id FROM manifest_deltas WHERE id = ?
binding 1 parameters for SELECT id FROM manifest_deltas WHERE id = ?
binding 1 with value '11891f9522ac6f66aa5be96b0d782029ae668be6'
binding 1 parameters for SELECT id FROM manifests WHERE id = ?
binding 1 with value '11891f9522ac6f66aa5be96b0d782029ae668be6'
prepared statement SELECT base FROM manifest_deltas WHERE id = ?
binding 1 parameters for SELECT base FROM manifest_deltas WHERE id = ?
binding 1 with value '11891f9522ac6f66aa5be96b0d782029ae668be6'
version cache hit on 9456bcca0389c5ce04c459c54c05d17cd3228d9d
following delta 9456bcca0389c5ce04c459c54c05d17cd3228d9d ->
  11891f9522ac6f66aa5be96b0d782029ae668be6
prepared statement SELECT delta FROM manifest_deltas WHERE id = ? AND
  base = ?
binding 2 parameters for SELECT delta FROM manifest_deltas WHERE id =
  ? AND base = ?
binding 1 with value '11891f9522ac6f66aa5be96b0d782029ae668be6'
binding 2 with value '9456bcca0389c5ce04c459c54c05d17cd3228d9d'
calculating composite changeset between
  68483e681d0d05f4d994e46c2f11216327e214ee and
  5f7313e4e18756f26a40c9f42a1576baead66094
binding 1 parameters for SELECT data FROM revisions WHERE id = ?
binding 1 with value '5f7313e4e18756f26a40c9f42a1576baead66094'
adding parents of 5f7313e4e18756f26a40c9f42a1576baead66094 to subgraph
found parent 68483e681d0d05f4d994e46c2f11216327e214ee of
  5f7313e4e18756f26a40c9f42a1576baead66094
binding 1 parameters for SELECT data FROM revisions WHERE id = ?
binding 1 with value '5f7313e4e18756f26a40c9f42a1576baead66094'
exploring changesets from parents of
  5f7313e4e18756f26a40c9f42a1576baead66094, seeking towards
  68483e681d0d05f4d994e46c2f11216327e214ee
considering parent 68483e681d0d05f4d994e46c2f11216327e214ee of
  5f7313e4e18756f26a40c9f42a1576baead66094
revision 68483e681d0d05f4d994e46c2f11216327e214ee is relevant,
  composing with edge to 5f7313e4e18756f26a40c9f42a1576baead66094
concatenating change sets
concatenating 0 and 1 deltas
delta on a.txt in second changeset copied forward
finished concatenation
calculating composite changeset between
  68483e681d0d05f4d994e46c2f11216327e214ee and
  31671d71b05c3370680ccaa319f205e259880379
binding 1 parameters for SELECT data FROM revisions WHERE id = ?
binding 1 with value '31671d71b05c3370680ccaa319f205e259880379'
adding parents of 31671d71b05c3370680ccaa319f205e259880379 to subgraph
adding parent 7094ce605c0d2753bc3f881372d78e713bd4aba8 to next
  frontier
adding parent a267773896293276bb6205893b5cc356a696c647 to next
  frontier
binding 1 parameters for SELECT data FROM revisions WHERE id = ?
binding 1 with value '7094ce605c0d2753bc3f881372d78e713bd4aba8'
adding parents of 7094ce605c0d2753bc3f881372d78e713bd4aba8 to subgraph
found parent 68483e681d0d05f4d994e46c2f11216327e214ee of
  7094ce605c0d2753bc3f881372d78e713bd4aba8
binding 1 parameters for SELECT data FROM revisions WHERE id = ?
binding 1 with value '31671d71b05c3370680ccaa319f205e259880379'
exploring changesets from parents of
  31671d71b05c3370680ccaa319f205e259880379, seeking towards
  68483e681d0d05f4d994e46c2f11216327e214ee
considering parent 7094ce605c0d2753bc3f881372d78e713bd4aba8 of
  31671d71b05c3370680ccaa319f205e259880379
binding 1 parameters for SELECT data FROM revisions WHERE id = ?
binding 1 with value '7094ce605c0d2753bc3f881372d78e713bd4aba8'
exploring changesets from parents of
  7094ce605c0d2753bc3f881372d78e713bd4aba8, seeking towards
  68483e681d0d05f4d994e46c2f11216327e214ee
considering parent 68483e681d0d05f4d994e46c2f11216327e214ee of
  7094ce605c0d2753bc3f881372d78e713bd4aba8
revision 68483e681d0d05f4d994e46c2f11216327e214ee is relevant,
  composing with edge to 7094ce605c0d2753bc3f881372d78e713bd4aba8
concatenating change sets
concatenating 0 and 1 deltas
delta on b.txt in second changeset copied forward
finished concatenation
revision 7094ce605c0d2753bc3f881372d78e713bd4aba8 is relevant,
  composing with edge to 31671d71b05c3370680ccaa319f205e259880379
concatenating change sets
concatenating 1 and 0 deltas
processing delta on b.txt
delta on b.txt in first changeset renamed to a.txt
finished concatenation
merging change sets
merge is copying delta 'c.txt' :
  '8094deb9fe1d7d15598a8e7b876e151810630635' ->
  '5447c6b8023bbc5a887918cd45c14511e9485c75'
merge is copying delta 'a.txt' :
  '89e6c98d92887913cadf06b2adb97f26cde4849b' ->
  '9d4b38049776bd0a2074d67cad23f8eaed35a3b3'
change_set.cc:2141: invariant 'I(b.deltas.find(path_in_merged) ==
  b.deltas.end())' violated
saving current work set: 10 items
finished saving work set
prepared statement ROLLBACK
binding 0 parameters for ROLLBACK
statement cache statistics
prepared 14 statements
1 executions of BEGIN EXCLUSIVE
1 executions of ROLLBACK
1 executions of SELECT base FROM manifest_deltas WHERE id = ?
2 executions of SELECT data FROM manifests WHERE id = ?
9 executions of SELECT data FROM revisions WHERE id = ?
1 executions of SELECT delta FROM manifest_deltas WHERE id = ? AND
  base = ?
1 executions of SELECT id FROM manifest_deltas WHERE id = ?
4 executions of SELECT id FROM manifests WHERE id = ?
1 executions of SELECT id FROM public_keys WHERE id = ?
2 executions of SELECT id, name, value, keypair, signature FROM
  revision_certs WHERE id = ? AND name = ?
2 executions of SELECT id, name, value, keypair, signature FROM
  revision_certs WHERE name = ? AND value = ?
1 executions of SELECT keydata FROM public_keys WHERE id = ?
5 executions of SELECT parent FROM revision_ancestry WHERE child = ?
5 executions of SELECT parent,child FROM revision_ancestry
Current work set: 10 items
----- begin 'a' (in void merge_change_sets(const change_set&, const
  change_set&, change_set&, change_set&, merge_provider&, app_state&),
  at change_set.cc:2242)
patch "a.txt"
 from [8094deb9fe1d7d15598a8e7b876e151810630635]
   to [5447c6b8023bbc5a887918cd45c14511e9485c75]
-----   end 'a' (in void merge_change_sets(const change_set&, const
  change_set&, change_set&, change_set&, merge_provider&, app_state&),
  at change_set.cc:2242)
----- begin 'b' (in void merge_change_sets(const change_set&, const
  change_set&, change_set&, change_set&, merge_provider&, app_state&),
  at change_set.cc:2243)
rename_file "a.txt"
         to "c.txt"

rename_file "b.txt"
         to "a.txt"

patch "a.txt"
 from [89e6c98d92887913cadf06b2adb97f26cde4849b]
   to [9d4b38049776bd0a2074d67cad23f8eaed35a3b3]
-----   end 'b' (in void merge_change_sets(const change_set&, const
 change_set&, change_set&, change_set&, merge_provider&, app_state&),
 at change_set.cc:2243)
----- begin 'a_merged' (in void merge_change_sets(const change_set&,
 const change_set&, change_set&, change_set&, merge_provider&,
 app_state&), at change_set.cc:2244)
rename_file "a.txt"
         to "c.txt"

rename_file "b.txt"
         to "a.txt"
-----   end 'a_merged' (in void merge_change_sets(const change_set&,
         const change_set&, change_set&, change_set&, merge_provider&,
         app_state&), at change_set.cc:2244)
----- begin 'b_merged' (in void merge_change_sets(const change_set&,
         const change_set&, change_set&, change_set&, merge_provider&,
         app_state&), at change_set.cc:2245)
patch "c.txt"
 from [8094deb9fe1d7d15598a8e7b876e151810630635]
   to [5447c6b8023bbc5a887918cd45c14511e9485c75]
-----   end 'b_merged' (in void merge_change_sets(const change_set&,
         const change_set&, change_set&, change_set&, merge_provider&,
         app_state&), at change_set.cc:2245)
----- begin 'a_analysis' (in void merge_change_sets(const change_set&,
         const change_set&, change_set&, change_set&, merge_provider&,
         app_state&), at change_set.cc:2256)
pre-state:
post-state:
-----   end 'a_analysis' (in void merge_change_sets(const change_set&,
         const change_set&, change_set&, change_set&, merge_provider&,
         app_state&), at change_set.cc:2256)
----- begin 'b_analysis' (in void merge_change_sets(const change_set&,
         const change_set&, change_set&, change_set&, merge_provider&,
         app_state&), at change_set.cc:2257)
pre-state:
tid 1: parent 0, type file, name a.txt
tid 3: parent 0, type file, name b.txt
post-state:
tid 1: parent 0, type file, name c.txt
tid 3: parent 0, type file, name a.txt
-----   end 'b_analysis' (in void merge_change_sets(const change_set&,
         const change_set&, change_set&, change_set&, merge_provider&,
         app_state&), at change_set.cc:2257)
----- begin 'a_renumbered' (in void merge_change_sets(const
         change_set&, const change_set&, change_set&, change_set&,
         merge_provider&, app_state&), at change_set.cc:2258)
pre-state:
post-state:
-----   end 'a_renumbered' (in void merge_change_sets(const
         change_set&, const change_set&, change_set&, change_set&,
         merge_provider&, app_state&), at change_set.cc:2258)
----- begin 'b_renumbered' (in void merge_change_sets(const
         change_set&, const change_set&, change_set&, change_set&,
         merge_provider&, app_state&), at change_set.cc:2259)
pre-state:
tid 5: parent 0, type file, name a.txt
tid 6: parent 0, type file, name b.txt
post-state:
tid 5: parent 0, type file, name c.txt
tid 6: parent 0, type file, name a.txt
-----   end 'b_renumbered' (in void merge_change_sets(const
         change_set&, const change_set&, change_set&, change_set&,
         merge_provider&, app_state&), at change_set.cc:2259)
----- begin 'a_merged_analysis' (in void merge_change_sets(const
         change_set&, const change_set&, change_set&, change_set&,
         merge_provider&, app_state&), at change_set.cc:2260)
pre-state:
tid 5: parent 0, type file, name a.txt
tid 6: parent 0, type file, name b.txt
post-state:
tid 5: parent 0, type file, name c.txt
tid 6: parent 0, type file, name a.txt
-----   end 'a_merged_analysis' (in void merge_change_sets(const
         change_set&, const change_set&, change_set&, change_set&,
         merge_provider&, app_state&), at change_set.cc:2260)
----- begin 'b_merged_analysis' (in void merge_change_sets(const
         change_set&, const change_set&, change_set&, change_set&,
         merge_provider&, app_state&), at change_set.cc:2261)
pre-state:
tid 5: parent 0, type file, name c.txt
tid 6: parent 0, type file, name a.txt
post-state:
tid 5: parent 0, type file, name c.txt
tid 6: parent 0, type file, name a.txt
-----   end 'b_merged_analysis' (in void merge_change_sets(const
         change_set&, const change_set&, change_set&, change_set&,
         merge_provider&, app_state&), at change_set.cc:2261)








reply via email to

[Prev in Thread] Current Thread [Next in Thread]