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

Submitter:  Neil <fnm>
Submitted:  Tue 23 Feb 2010 03:04:43 PM UTC
   
 
Category:  networking Severity:  3 - Normal
Item Group:  incorrect behavior Status:  Fixed
Privacy:  Public Assigned 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

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>
Group 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>
Group 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>
Group 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>

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

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
  • -email is unavailable- added by tbrownaw (Posted a comment)
  • -email is unavailable- added by fnm (Submitted the item)
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

     

    Follow 3 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2010-03-14 tbrownaw StatusNone Fixed
        Open/ClosedOpen Closed
    2010-02-25 fnm Attached File- Added mtn_bug_28991_logs1.tar.bz2, #19793

    Back to the top

    Powered by Savane 3.13-4b48.
    Corresponding source code