Am 18.03.10 19:08, schrieb Francis Russell: > Package: monotone > Version: 0.47-1 > Severity: important > > > mtn produces an alarming error message when syncing. It doesn't appear to be > related to different versions of mtn talking to each other as I can easily > replicate with a sync between two databases on the same system. > > $ mtn db init -d /tmp/mtn1.db > $ mtn db init -d /tmp/mtn2.db > $ mtn sync -d /tmp/mtn1.db file:///tmp/mtn2.db '*' > mtn: setting default server to file:///tmp/mtn2.db > mtn: setting default branch include pattern to '*' > mtn: setting default branch exclude pattern to '' > mtn: connecting to file:///tmp/mtn2.db > mtn: finding items to synchronize: > mtn: successful exchange with file:///tmp/mtn2.db > mtn: bytes in | bytes out | revs in > mtn: 151 | 160 | 0/0 > mtn: fatal: error: network/session_base.cc:82: I(!is_pipe_pair()) > mtn: this is almost certainly a bug in monotone. > mtn: please send this error message, the output of 'mtn version --full', > mtn: and a description of what you were doing to [email protected]. > mtn: wrote debugging log to /home/fpr/.monotone/dump > mtn: if reporting a bug, please include this file
This looks like a regression introduced in f65d9cb5 - please check if
this patch solves your problem:
#
# old_revision [dda54058811fd39356e8755ad0d68998a5159dd3]
#
# patch "network/reactor.cc"
# from [a90cee5442d3c77d8082d7bb91d4d23170bf25fb]
# to [4f424db0f326e61b015ff042880f2d77589c6429]
#
============================================================
--- network/reactor.cc a90cee5442d3c77d8082d7bb91d4d23170bf25fb
+++ network/reactor.cc 4f424db0f326e61b015ff042880f2d77589c6429
@@ -87,8 +87,9 @@ void reactor::remove(shared_ptr<reactabl
if (i != items.end())
{
items.erase(i);
+ bool had_pipe = have_pipe;
have_pipe = false;
- if (readying)
+ if (readying && !had_pipe)
item->remove_from_probe(probe);
}
}
@Timothy: I was a bit careful about setting have_pipe after `if
(readying) ...` here - if you think this would not introduce a problem,
then this patch could be simplyfied of course.
Thomas.
--
GPG-Key 0x160D1092 | [email protected] | http://thomaskeller.biz
Please note that according to the EU law on data retention, information
on every electronic information exchange might be retained for a period
of six months or longer: http://www.vorratsdatenspeicherung.de/?lang=en
signature.asc
Description: OpenPGP digital signature

