re: Problem: newly creating local CVS tree using CV (to the moderator) About the CVS tree creation problem which I have reported earlier, I think I have found the cause of the problem. I believe that the cause is a certain network connection time restriction mechanism in place somewhere on the network where the xfree86 hosts are located. The gist of my discovery: It seems that the connection to xfree86 cvs server is cut after a maximum limit connection time is reached. This connection resets affects the CVS copy operation and its restarting capability. Compression in cvs command changes cvs copying time and cvs program was in a different state when the network connection reset occurred. I could restart the cvs command, and it seemed to have succeeded in creating a complete local cvs tree when the compression was enabled. Details. Using "cvs -z 2 checkout xc", with "-z 2" to compress the data before sending out to local PC from cvs server, I got the following message during the execution before cvs command was aborted due to unexpected connection loss. --- quote --- ... many lines beginning 'U' meaning updating/copying ... the files U xc/programs/Xserver/dix/property.c Read from remote host anoncvs.xfree86.org: Connection reset by peer cvs [checkout aborted]: end of file from server (consult above messages if any) duron:/ide-s-master/tools/xfree86-cvs# ~ishikawa/bin/fetchx11.sh anoncvs@anoncvs.xfree86.org's password: ? xc/programs/Xserver/dix/.new.resource. --- end quote --- Now, it seems something on the network didn't like the connection and reset it. (Maybe the log on the xfree86 server may reveal the cause of this.) But important thing is this: cvs checkout modulename logs messages to stderr. Looling at how and when the messages are generated, we can say the following: (a) there is a period of silence once a new (sub)directory is entered. Presumably, cvs command is creating an internal list of files to be updated (under that directory) by exchanging information between the server and client. During this period, the log messages are not printed. (b) Once the update list for the subdirectory is made, the real copying(updating) begins and the name of each file in the list thus copied is printed with 'U' at the end of the beginning. The copying is done one by one and the lines starting with 'U' is printed accordingly. Depending on the size of the file there could be a lengthy pause before the next such line is printed. The cycle consisting of (a) and (b) are repeated recursively for the subdirectories until the whole copying is complete. Now, what I found is this. If we interrupt the operation of cvs command during stage (b) above, cvs command can be restarted in midway where it stopped, and we can continue checking out the xfree86 cvs tree as if nothing has happened. For example, please note that the copying started without complaining in the above log snippet. On the other hand, based on my observation of cvs tree creation failures this morning and yesterday, I think that if cvs is interrupted during (a) or during some timing-critical execution by the resetting of network connection, cvs command may not leave a state information and it stops right there. No amount of coercing by rerunning "cvs checkout modulename" won't work. My wild guess is that during my first run without compression flag, "-z 2", the long connection causes the presumably the connection limiting timer installed somewhere (I am sure this is not on my side of network) to kick in during the stage (a), and thus cvs stopped prematurely. It left no intermediate state information for restarting in the future. Thus I saw the incomplete CVS tree as I have reported. (I did try to rerun the command, but it didn't restart successfully.) However, with the compression flag "-z 2", the (light) compression changes the execution time. The change was enough so that when the connection time limit was reached and the connection was reset by some daemon or somthing, cvs on my local PC was performing the stage (b) and thus the resetting of the connection still permitted cvs command to leave a state information. So I could restart the copying invoking the same cvs command again. (I got lucky this time!) The above is admittedly a very wild guess, but the only reason I can think of my adding "-z 2" in my old script is probably I saw something affecting cvs operation in a critical manner without it, and thus the addition. My memory is so hazy and so I can't recall what troubles I had one or two years ago when I tried cvs tree cloning via 64kbps ISDN line... OK, the once restarted "cvs -z 2 checkout xc" ended with the following final lines. --- quote --- ... cvs server: Updating xc/workInProgress/record/programs cvs server: Updating xc/workInProgress/record/programs/Xserver cvs server: Updating xc/workInProgress/record/programs/Xserver/Xext cvs server: Updating xc/workInProgress/xsm duron:/ide-s-master/tools/xfree86-cvs# ls xc CVS Makefile config include registry INSTALL-X.org RELNOTES doc lib util Imakefile RELNOTES-X.org extras nls workInProgress LABEL bug-report fonts programs duron:/ide-s-master/tools/xfree86-cvs# --- end quote --- There is even now the missing fonts/encoding directory! I have started make World >& world.log & on my linux PC to see if it my attempt was successful. (Sometime later) Indeed, the execution was carried out to the end without problems of incomplete CVS tree. The network connection limit problem might be a rarely seen problem by many, but you might want to put a CAVEAT section or something like this in the CVS page at www. (My using ISDN 64kbps connection might be stretching the network usage a little.) You might also want to mention "-z 2" compression flag. Thank you in advance for your attention. PS: The only mysterious error I found in the world.log after the local CVS tree was re-created and the compilation was attempted was the following Fontconfig error, but I think it has nothing to do with the CVS tree creation problem. Not sure which file is referred to by the "line 17"error. --- begin quote --- making all in fonts/scaled/Type1... make[5]: Entering directory `/opt2/ide-dir/tools/xfree86-cvs/xc/fonts/scaled/Type1' LD_LIBRARY_PATH=../../../exports/lib ../../../exports/bin/mkfontdir . set -x; LD_LIBRARY_PATH=../../../exports/lib FONTCONFIG_PATH=../../../lib/fontconfig ../../../exports/bin/fc-cache . + LD_LIBRARY_PATH=../../../exports/lib + FONTCONFIG_PATH=../../../lib/fontconfig + ../../../exports/bin/fc-cache . Fontconfig error: line 17: not well-formed (invalid token) Fontconfig error: Cannot load default config file make[5]: Leaving directory `/opt2/ide-dir/tools/xfree86-cvs/xc/fonts/scaled/Type1' --- end quote --- After checking around, my guess is the file in question is xc/lib/fontconfig/fonts.conf On line 17, the date when the file was created, namely August 4th, is written in xml comment-like construct. One problem on that line is the use of Japanese month character for the date. Probably the program fc-cache is complaining about the usage of non-ASCII character as it parsed the contents of the file. [end of memo] _______________________________________________ Newbie@XFree86.Org *** To unsubscribe , or change message options, see: http://XFree86.Org/mailman/listinfo/newbie