[cvsnt] Re: cvsnt build 68 hangs on merge

Torsten van Beeck torsten.van.beeck at ip-team.de
Wed Jan 29 15:33:52 GMT 2003


Hi Tony,

> Put the pdb files for the release in the same directory as the cvs.exe
> and attach to the process (in the Debug/Processes... dialog).  That
> might give you some idea of where it is.  I'd expect the problem to be
> in the server rather than the client (but it's worth looking at both).

ok, it's seems to be a server problem:

build 68 with debugging:

client cvs
----------
 	NTDLL.DLL!77883786() 	
 	msafd.dll!74f47800() 	
 	ws2_32.dll!74fa1265() 	
 	wsock32.dll!74fc10ac() 	
 	sspi_protocol.dll!tcp_read(void * data=0x00d903c9, int 
length=3127)  Line 230	C
 	sspi_protocol.dll!sspi_read_data(const protocol_interface * 
protocol=0x00d75130, void * data=0x00d903c9, int length=3127)  Line 258 
+ 0xf	C
 	cvs.exe!client_buffer_input(void * closure=0x00844d28, char * 
data=0x00d903c9, int need=1, int size=3127, int * got=0x0012fa20)  Line 
585 + 0xc	C
 	cvs.exe!buf_read_line(buffer * buf=0x00000000, char * * 
line=0x0012fa2c, int * lenp=0x0012fa30)  Line 818 + 0x15	C
 	cvs.exe!read_line(char * * resultp=0x0012fa4c)  Line 660 + 0x15
	C
 	cvs.exe!get_server_responses()  Line 3225 + 0xa	C
 	cvs.exe!get_responses_and_close()  Line 3294 + 0x5	C
 	cvs.exe!update()  Line 344 + 0x5	C
 	cvs.exe!cvsguiglue_main(int argc=1, char * * argv=0x00d91838)  
Line 1151 + 0x13	C
	cvs.exe!main(int argc=2, char * * argv=0x00842758)  Line 222 + 
0xf	C
 	cvs.exe!mainCRTStartup()  Line 400 + 0xe	C
 	KERNEL32.DLL!77e8ca90() 	


--> waiting on network


server cvs
----------

 	USER32.DLL!77e02268() 	
 	USER32.DLL!77e16d62() 	
 	USER32.DLL!77e2ca3b() 	
 	USER32.DLL!77e2c475() 	
 	USER32.DLL!77e2d47e() 	
 	USER32.DLL!77e25c19() 	
 	USER32.DLL!77e25ba6() 	
	cvs.exe!MiniDumper(_EXCEPTION_POINTERS * 
pExceptionInfo=0xffffffff)  Line 1580	C
 	KERNEL32.DLL!77e91442() 	


--> looks like an already dead process


my own build based on 68 source
-------------------------------

(after I managed to disable gserver_protocol_mit as a dependent project 
of cvsnt)

Unhandled exception at 0x0041f585 in cvs.exe: 0xC0000005: Access 
violation reading location 0x00000004.

	cvs.exe!output_diff3_merge(_iobuf * infile=0x1027a8d8, 
diff3_block * diff=0x00b67388, const int * mapping=0x0012ee50, const 
int * rev_mapping=0x0012ee44, const char * file0=0x005ebb68, const char 
* file1=0x005ebbd0, const char * file2=0x005ebc30)  Line 1817 + 0x10
	C
 	cvs.exe!diff3_run()  Line 494 + 0x24	C
 	cvs.exe!call_diff3(char * out=0x005eb870)  Line 228 + 0x1c
	C
 	cvs.exe!RCS_merge()  Line 317 + 0x9	C
 	cvs.exe!merge_file(file_info * finfo=0x0012f1c0, vers_ts * 
vers=0x00b62488)  Line 1909 + 0x30	C
 	cvs.exe!update_fileproc(void * callerdat=0x00000000, file_info 
* finfo=0x0012f1c0)  Line 644 + 0xd	C
 	cvs.exe!do_file_proc(node * p=0x00b62f30, void * 
closure=0x0012f1b8)  Line 914 + 0x14	C
 	cvs.exe!walklist()  Line 370 + 0xb	C
 	cvs.exe!do_recursion(recursion_frame * frame=0x0012f2a4)  Line 
802 + 0x15	C
 	cvs.exe!do_dir_proc(node * p=0x00b62c40, void * 
closure=0x0012f3a4)  Line 1194 + 0x9	C
 	cvs.exe!walklist()  Line 370 + 0xb	C
 	cvs.exe!do_recursion(recursion_frame * frame=0x0012f498)  Line 
829 + 0x15	C
 	cvs.exe!do_dir_proc(node * p=0x005e6b70, void * 
closure=0x0012f598)  Line 1194 + 0x9	C
 	cvs.exe!walklist()  Line 370 + 0xb	C
 	cvs.exe!do_recursion(recursion_frame * frame=0x0012f690)  Line 
829 + 0x15	C
 	cvs.exe!start_recursion(int (void *, file_info *)* 
fileproc=0x0047c700, int (void *, int, char *, char *, list_t *)* 
filesdoneproc=0x0047cc00, direnter_type (void *, char *, char *, char 
*, list_t *)* direntproc=0x0047cdd0, int (void *, char *, int, char *, 
list_t *)* dirleaveproc=0x0047d100, void * callerdat=0x00000000, int 
argc=0, char * * argv=0x005e6f58, int local=0, int which=3, int 
aflag=0, int readlock=1, char * update_preload=0x00000000, int 
dosrcs=1, int (const char *, const char *)* permproc=0x0044c2b0)  Line 
420 + 0x9	C
 	cvs.exe!do_update(int argc=0, char * * argv=0x005e68c4, char * 
xoptions=0x00000000, char * xtag=0x00000000, char * xdate=0x00000000, 
int xforce=1, int local=0, int xbuild=0, int xaflag=0, int xprune=0, 
int xpipeout=0, int which=3, char * xjoin_rev1=0x00000000, char * 
xjoin_rev2=0x00000000, char * preload_update_dir=0x00000000, int 
xdotemplate=1)  Line 540 + 0x3f	C
 	cvs.exe!update()  Line 446 + 0x5b	C
 	cvs.exe!server_main()  Line 5360 + 0x13	C
 	cvs.exe!do_cvs_command()  Line 2477 + 0x5	C
 	cvs.exe!serve_update()  Line 2832 + 0xf	C
 	cvs.exe!server()  Line 4282 + 0xa	C
 	cvs.exe!cvsguiglue_main(int argc=1, char * * argv=0x005e6298)  
Line 1151 + 0xe	C
 	cvs.exe!main(int argc=2, char * * argv=0x005e4350)  Line 222 + 
0x21	C
 	cvs.exe!mainCRTStartup()  Line 400 + 0x11	C
 	KERNEL32.DLL!77e8ca90() 	


It's in diff3.c line 1817


Sorry, I have not enough debugging know-how to decide how to track down 
the problem further.

Bye, Torsten van Beeck

--
o __    innovativ partner
I l_)   office at ip-team.de
  l     www.ip-team.de
        02 31 / 14 20 57



More information about the cvsnt mailing list