bugmonotone - Bugs: bug #28991, montone sync failure

 
 

You are not allowed to post comments on this tracker with your current authentication level.

bug #28991: montone sync failure

Submitted by:  Neil <fnm>
Submitted on:  Tue 23 Feb 2010 03:04:43 PM UTC  
 
Category: networkingSeverity: 3 - Normal
Item Group: incorrect behaviorStatus: Fixed
Privacy: PublicAssigned to: None
Open/Closed: Closed
mtn version --full: 

monotone 0.46 (base revision: unknown)
Running on : Linux 2.6.31.12-0.1-desktop #1 SMP PREEMPT 2010-01-27 08:20:11 +0100 x86_64
C++ compiler : GNU C++ version 4.4.1 [gcc-4_4-branch revision 150839]
C++ standard library: GNU libstdc++ version 20090817
Boost version : 1_39
SQLite version : 3.6.16 (compiled against 3.6.16)
Lua version : Lua 5.1
PCRE version : 7.9 2009-04-11 (compiled against 7.9)
Botan version : 1.6.4 (compiled against 1.6.4)
Changes since base revision:
unknown

(Jump to the original submission Jump to the original submission)

Mon 15 Mar 2010 04:44:38 PM UTC, comment #6:

I've just installed version 0.47 and pulled my entire database without any trouble. Looks like the problem is indeed fixed.

Neil <fnm>
Sun 14 Mar 2010 11:46:49 PM UTC, comment #5:

0.47 has just been released, which includes a fix for this

Timothy Brownawell <tbrownaw>
Project Member
Thu 25 Feb 2010 03:57:38 PM UTC, comment #4:

I think I'll stick with 0.45 for now and try 0.47 when it is released.

Thanks for the help Timothy.

Neil <fnm>
Thu 25 Feb 2010 01:28:20 PM UTC, comment #3:

Prior to 0.46, the server would sometimes block waiting for I/O. We fixed this, but introduced another bug due to our networking library not liking non-blocking sockets. This would result in each side thinking the other had disconnected with no reason, when a sufficiently large file was transferred.

It looks like some of your files are large enough to trigger this bug. It should be fixed in 0.47 (or the current development head, if you feel adventurous).

Timothy Brownawell <tbrownaw>
Project Member
Thu 25 Feb 2010 10:17:03 AM UTC, comment #2:

O.K. --debug logs coming soon.

This time the retry sync pulled some more revisions before hitting an error. Subsequent syncs failed immediately. I did restart the server after the first sync in order to redirect the log though.

The database contains our ASIC design so I'd better not upload it ;-)

(file #19793)

Neil <fnm>
Thu 25 Feb 2010 01:42:05 AM UTC, comment #1:

It looks like the server is getting confused and dropping the connection. Does it (the server) produce any output? If you run it with --debug, what does it output (this will produce a lot of output, so probably do this on a "retry" pull)?

Would it be possible to post the server database somewhere I can look at it? This would help me to reproduce the problem, but I understand it might not be possible depending on what exactly is in it.

Timothy Brownawell <tbrownaw>
Project Member
Tue 23 Feb 2010 03:04:43 PM UTC, original submission:

Since upgrading my monotone server from 0.45 to 0.46 I've been unable to clone a database. I.e:

$ mtn db init --db test.db
$ mtn sync --db test.db folegrandos "com.cambridgebroadband.*"
mtn: setting default server to folegrandos
mtn: setting default branch include pattern to 'com.cambridgebroadband.*'
mtn: setting default branch exclude pattern to ''
mtn: connecting to folegrandos
mtn: first time connecting to server folegrandos
mtn: I'll assume it's really them, but you might want to double-check
mtn: their key's fingerprint: dc4251e7dd91703fa755cecc0f75b67bb2897fdc
mtn: finding items to synchronize:
mtn: bytes in | bytes out | revs in | revs out
mtn: 4.4 k | 655 | 0 | 0
mtn: bytes in | bytes out | revs in | revs out
mtn: 6.2 M | 655 | 273/2311 | 0/0
mtn: peer folegrandos IO terminated connection in working state (error)
mtn: error: I/O failure while talking to peer folegrandos, disconnecting

And retrying...

$ mtn sync --db test.db folegrandos "com.cambridgebroadband.*"
mtn: connecting to folegrandos
mtn: finding items to synchronize:
mtn: certificates | keys | revisions
mtn: 821 | 3 | 273
mtn: bytes in | bytes out | revs in | revs out
mtn: 237.2 k | 111.1 k | 0 | 0
mtn: bytes in | bytes out | revs in | revs out
mtn: 261.4 k | 111.1 k | 0/2038 | 0/0
mtn: peer folegrandos IO terminated connection in working state (error)
mtn: error: I/O failure while talking to peer folegrandos, disconnecting

So it looks to me like one particular revision is triggering the problem.

The problem occurs with both 0.45 and 0.46 clients. Revert the server to 0.45 and the sync succeeds.

Neil <fnm>

 

Attached Files
file #19793:  mtn_bug_28991_logs1.tar.bz2 added by fnm (89KiB - application/octet-stream)

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -unavailable- added by tbrownaw (Posted a comment)
  • -unavailable- added by fnm (Submitted the item)
  •  

    Do you think this task is very important?
    If so, you can click here to add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.

     

    Please enter the title of George Orwell's famous dystopian book (it's a date):

     

     

    Follow 3 latest changes.

    Date Changed By Updated Field Previous Value => Replaced By
    Sun 14 Mar 2010 11:46:49 PM UTCtbrownawStatusNone=>Fixed
      Open/ClosedOpen=>Closed
    Thu 25 Feb 2010 10:17:03 AM UTCfnmAttached File-=>Added mtn_bug_28991_logs1.tar.bz2, #19793

    Back to the top


    Powered by Savane 3.1-cleanup1