home *** CD-ROM | disk | FTP | other *** search
/ Geek Gadgets 1 / ADE-1.bin / ade-dist / cvs-1.8.7-src.tgz / tar.out / fsf / cvs / BUGS < prev    next >
Text File  |  1996-09-28  |  11KB  |  263 lines

  1. To report bugs send mail to bug-cvs@prep.ai.mit.edu, or run the "cvsbug"
  2. program and fill out the template:
  3.  
  4.     $ cvsbug
  5.  
  6. The "cvsbug" program is installed in the same location as the "cvs"
  7. program.  If your installation failed, you may need to run "cvsbug"
  8. directly out of the "src" directory as "src/cvsbug.sh".  This is also
  9. the procedure for submitting suggested changes to CVS--note that all
  10. submitted changes may be distributed under the terms of the GNU Public
  11. License, so if you don't like this, don't submit them.
  12.  
  13.  
  14.  
  15. * `cvs checkout -d nested/dir/path <module>' just doesn't work.  The
  16.   simpler version -- `cvs checkout -d single-dir <module>' works,
  17.   however.
  18.  
  19.  
  20. * CVS leaves .#mumble files around when a conflict occurs.  (Note:
  21.   this is intentional and is documented in doc/cvs.texinfo.  Of course
  22.   whether it is a good idea is a separate question).
  23.  
  24.  
  25. * pcl-cvs doesn't like it when you try to check in a file which isn't
  26.   up-to-date.  The messages produced by the server perhaps don't match
  27.   what pcl-cvs is looking for.
  28.  
  29.  
  30. * From: Roland McGrath <roland@gnu.ai.mit.edu>
  31.   To: Cyclic CVS Hackers <info-cvs@prep.ai.mit.edu>
  32.   Subject: weird bug
  33.   Date: Sat, 25 Mar 1995 16:41:41 -0500
  34.   X-Windows: Even your dog won't like it.
  35.  
  36.   I just noticed some droppings on my disk from what must be a pretty weird
  37.   bug in remote CVS.
  38.  
  39.   In my home directory on a repository machine I use, I find:
  40.  
  41.   drwxr-xr-x   4 roland   staff         512 Mar  7 14:08 cvs-serv28962
  42.   drwxr-xr-x   4 roland   staff         512 Mar  7 14:11 cvs-serv28978
  43.   drwxr-xr-x   4 roland   staff         512 Mar  7 15:13 cvs-serv29141
  44.  
  45.   OK, so these are leftover cruft from some cvs run that got aborted.
  46.   Well, it should clean up after itself, but so what.
  47.  
  48.   The last one is pretty dull; the real weirdness is the contents of the
  49.   first two directories.
  50.  
  51.   duality 77 # ls -RF cvs-serv28978/
  52.   CVS/        cvs-serv28978/
  53.  
  54.   cvs-serv28978/CVS:
  55.   Entries        Repository
  56.  
  57.   cvs-serv28978/cvs-serv28978:
  58.   arpa/
  59.  
  60.   cvs-serv28978/cvs-serv28978/arpa:
  61.   CVS/        cvs-serv28978/
  62.  
  63.   cvs-serv28978/cvs-serv28978/arpa/CVS:
  64.   Entries        Repository
  65.  
  66.   cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978:
  67.   assert/
  68.  
  69.   cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978/assert:
  70.   CVS/        cvs-serv28978/
  71.  
  72.   cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978/assert/CVS:
  73.   Entries        Repository
  74.  
  75.   cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978/assert/cvs-serv28978:
  76.   bare/
  77.  
  78.   cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978/assert/cvs-serv28978/bare:
  79.   CVS/        cvs-serv28978/
  80.  
  81.   cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978/assert/cvs-serv28978/bare/CVS:
  82.   Entries        Repository
  83.  
  84.   cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978/assert/cvs-serv28978/bare/cvs-serv28978:
  85.   conf/
  86.  
  87.   cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978/assert/cvs-serv28978/bare/cvs-serv28978/conf:
  88.   CVS/        cvs-serv28978/
  89.  
  90.   cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978/assert/cvs-serv28978/bare/cvs-serv28978/conf/CVS:
  91.   Entries        Repository
  92.  
  93.   cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978/assert/cvs-serv28978/bare/cvs-serv28978/conf/cvs-serv28978:
  94.   crypt/
  95.  
  96.   cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978/assert/cvs-serv28978/bare/cvs-serv28978/conf/cvs-serv28978/crypt:
  97.   CVS/        cvs-serv28978/
  98.  
  99.   cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978/assert/cvs-serv28978/bare/cvs-serv28978/conf/cvs-serv28978/crypt/CVS:
  100.   Entries        Repository
  101.  
  102.   cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978/assert/cvs-serv28978/bare/cvs-serv28978/conf/cvs-serv28978/crypt/cvs-serv28978:
  103.   csu/
  104.  
  105.   cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978/assert/cvs-serv28978/bare/cvs-serv28978/conf/cvs-serv28978/crypt/cvs-serv28978/csu:
  106.   CVS/        cvs-serv28978/
  107.  
  108.   cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978/assert/cvs-serv28978/bare/cvs-serv28978/conf/cvs-serv28978/crypt/cvs-serv28978/csu/CVS:
  109.   Entries        Repository
  110.  
  111.   cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978/assert/cvs-serv28978/bare/cvs-serv28978/conf/cvs-serv28978/crypt/cvs-serv28978/csu/cvs-serv28978:
  112.   ctype/
  113.  
  114.   cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978/assert/cvs-serv28978/bare/cvs-serv28978/conf/cvs-serv28978/crypt/cvs-serv28978/csu/cvs-serv28978/ctype:
  115.   CVS/        cvs-serv28978/
  116.  
  117.   [...]
  118.  
  119.   ls: cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978/assert/cvs-serv28978/bare/cvs-serv28978/conf/cvs-serv28978/crypt/cvs-serv28978/csu/cvs-serv28978/ctype/cvs-serv28978/dirent/cvs-serv28978/elf/cvs-serv28978/gnu/cvs-serv28978/gnulib/cvs-serv28978/grp/cvs-serv28978/hurd/cvs-serv28978/hurd/hurd/cvs-serv28978/inet/cvs-serv28978/inet/arpa/cvs-serv28978/inet/netinet[...]/cvs-serv28978/posix/cvs-serv28978/posix/glob/cvs-serv28978/posix/gnu/cvs-serv28978/posix/sys/cvs-serv28978/protocols/cvs-serv28978/pwd/cvs-serv28978/resolv/cvs-serv28978/resolv/arpa/cvs-serv28978/resolv/sys/cvs-serv28978/resource/cvs-serv28978/resource/sys/cvs-serv28978/rpc/cvs-serv28978/setjmp/cvs-serv28978/signal/cvs-serv28978/signal/sys/cvs-serv28978/socket/cvs-serv28978/socket: File name too long
  120.   cvs-serv28978/cvs-serv28978/arpa/cvs-serv28978/assert/cvs-serv28978/bare/cvs-serv28978/conf/cvs-serv28978/crypt/cvs-serv28978/csu/cvs-serv28978/ctype/cvs-serv28978/dirent/cvs-serv28978/elf/cvs-serv28978/gnu/cvs-serv28978/gnulib/cvs-serv28978/grp/cvs-serv28978/hurd/cvs-serv28978/hurd/hurd/cvs-serv28978/inet/cvs-serv28978/inet/arpa/cvs-serv28978/inet/netinet[...]/cvs-serv28978/posix/glob/cvs-serv28978/posix/gnu/cvs-serv28978/posix/sys/cvs-serv28978/protocols/cvs-serv28978/pwd/cvs-serv28978/resolv/cvs-serv28978/resolv/arpa/cvs-serv28978/resolv/sys/cvs-serv28978/resource/cvs-serv28978/resource/sys/cvs-serv28978/rpc/cvs-serv28978/setjmp/cvs-serv28978/signal/cvs-serv28978/signal/sys/cvs-serv28978/socket/cvs-serv28978:
  121.  
  122.  
  123. * From: billr@mpd.tandem.com (Bill Robertson)
  124.   Subject: Problem with rtag and the -D option
  125.   Date: Fri, 17 Mar 1995 10:53:29 -0600 (CST)
  126.  
  127.   I have been trying to use the -D option to specify a date for tagging, but
  128.   rtag does not recognize the -D option. It is documented to do so and I've
  129.   tested the use of -D with cvs update and cvs diff and it works fine there.
  130.   
  131.  
  132. *         We need some version numbers really badly.  Are there some
  133.   (and Charles Hannum is just not including them in his reports), or do
  134.   we simply have no reliable way to distinguish between the various
  135.   versions of rCVS people on the list are running?
  136.   
  137.           Now that I think of it, version numbers present a problem when
  138.   people can update their sources anytime and rebuild.  I think the
  139.   solution is to increment a minor version number *every* time a bug is
  140.   fixed, so we can identify uniquely what someone is running when they
  141.   submit a report.  This implies recording the version increments in the
  142.   ChangeLog; that way we can just look to see where a particular version
  143.   lies in relation to the flow of changing code.
  144.   
  145.           Should we be doing same with Guppy?  I guess not -- it's only
  146.   important when you have people who are updating directly from your
  147.   development tree, which is the case with the remote-cvs folks.
  148.   
  149.           Thoughts?
  150.  
  151.  
  152. * (Charles Hannum <mycroft@ai.mit.edu>) has these bugs:
  153.  
  154.   I just tossed remote CVS at a fairly large source tree that I already
  155.   had, and noticed a few problems:
  156.  
  157.   1) server.c assumes that /usr/tmp is a valid default for the place to
  158.   store files uploaded from the client.  There are a number of systems
  159.   that now use /var/tmp.  These should probably be detected by autoconf.
  160.  
  161.   2) The server deals rather ungracefully with the tmp directory
  162.   becoming full.
  163.  
  164.   3) There's some oddness with relative paths in Repository files that
  165.   causes the directory prefix to be added twice; e.g. if I have CVSROOT
  166.   set to `machine:/this/dir', and I try to update in a directory whose
  167.   Repository file says `src/bin', the server looks in
  168.   `/this/dir/machine:/this/dir/src/bin'.
  169.  
  170. * From: "Charles M. Hannum" <mycroft@ai.mit.edu>
  171.   To: jimb@duality.gnu.ai.mit.edu, roland@duality.gnu.ai.mit.edu
  172.   Subject: Serious flaw in remote CVS
  173.   Date: Wed, 22 Feb 1995 20:54:36 -0500
  174.  
  175.   I just found a major flaw in the current implementation.  Because the
  176.   sockets are not changed to non-blocking mode, write(2)s can hang.  In
  177.   some cases, this happens on both sides at the same time, with the
  178.   socket buffers full in both directions.  This causes a deadlock,
  179.   because both processes are stuck in I/O wait and thus never drain
  180.   their input queues.
  181.   
  182.   Until this is fixed, I can't use it.  I'll look at the problem myself
  183.   at some point, but I don't know when.
  184.   
  185.  
  186.   From: "Charles M. Hannum" <mycroft@ai.mit.edu>
  187.   To: info-cvs@prep.ai.mit.edu
  188.   Cc: jimb@totoro.bio.indiana.edu
  189.   Subject: Re: forwarded message from Charles M. Hannum
  190.   Date: Wed, 22 Feb 1995 22:07:07 -0500
  191.   
  192.   FYI, this happened because the tmp directory on the server became
  193.   full.  Somehow the server started interpreting the files the client
  194.   was sending as commands, and started spewing tons of errors.
  195.   Apparently the errors are sent with blocking I/O, or something, and
  196.   thus allowed the deadlock to happen.
  197.  
  198.  
  199. * From: "Charles M. Hannum" <mycroft@ai.mit.edu>
  200.   To: info-cvs@prep.ai.mit.edu
  201.   Subject: Regarding that relative path problem
  202.   Date: Thu, 23 Feb 1995 02:41:51 -0500
  203.  
  204.   This is actually more serious.  If you have `bar.com:/foo' as your CVS
  205.   root directory, then:
  206.  
  207.   1) When you check things out, the Repository files will contain
  208.   `/foo/...' (i.e. without the machine name), which makes little sense.
  209.  
  210.   2) If you instead have a relative path, when the Repository file is
  211.   read, `bar.com:/foo' is prepended.  This is sent to the server, but
  212.   confuses it, because it's not expecting the machine name to be
  213.   prepended.
  214.  
  215.   A slightly klugy fix would be to have the client prepend the machine
  216.   name when writing a new Repository file, and strip it off before
  217.   sending one to the server.  This would be backward-compatible with the
  218.   current arrangement.
  219.  
  220.  
  221. * From: "Charles M. Hannum" <mycroft@ai.mit.edu>
  222.   To: info-cvs@prep.ai.mit.edu
  223.   Subject: Still one more bug
  224.   Date: Sat, 25 Feb 1995 17:01:15 -0500
  225.   
  226.   mycroft@duality [1]; cd /usr/src/lib/libc
  227.   mycroft@duality [1]; cvs diff -c2 '-D1 day ago' -Dnow
  228.   cvs server: Diffing .
  229.   cvs server: Diffing DB
  230.   cvs [server aborted]: could not chdir to DB: No such file or directory
  231.   mycroft@duality [1];
  232.   
  233.   `DB' is an old directory, which no longer has files in it, and is
  234.   removed automatically when I use the `-P' option to checkout.
  235.   
  236.   This error doesn't occur when run locally.
  237.   
  238.   P.S.  Is anyone working on fixing these bugs?
  239.  
  240.  
  241. * From: Roland McGrath <roland@gnu.ai.mit.edu>
  242.   To: Cyclic CVS Hackers <info-cvs@prep.ai.mit.edu>
  243.   Subject: bizarre failure mode
  244.   Date: Tue, 7 Mar 95 14:17:28 -0500
  245.   
  246.   This is pretty weird:
  247.   
  248.   CVS_SERVER='TMPDIR=. /usr/local/bin/cvs' ../cvs-build/src/cvs update -q
  249.   cvs [server aborted]: could not get working directory: Result too large
  250.   [Exit 1]
  251.   asylum 29 % grep 'Result too large' /usr/include/sys/errno.h 
  252.   #define ERANGE          34              /* Result too large */
  253.   
  254.   Now, getcwd fails with ERANGE when the buffer is too small.  But I don't
  255.   know why that would be the case; I don't think there are exceptionally long
  256.   directory names involved.  It would be robust to notice ERANGE and use a
  257.   bigger buffer.  But I suspect something weirder is going on.
  258.   
  259.   The repository in question in duality.gnu.ai.mit.edu:/gd4/gnu/cvsroot/libc.
  260.   
  261.   Send me a PGP-signed message if you want the password to use the machine
  262.   where the problem showed up.
  263.