[cvsnt] Cvsnt instances are interfering with each other -- simpler example

J F unsecure9 at rogers.com
Fri Jan 28 13:06:21 GMT 2005


Let's try this one more time. List server, please don't throw away my text this time... :-)

Hi all,

This appears to be a major bug in cvsnt. Please help!

Since my last posting, I have simplified the example. Hope it is crystal clear this time.

CVSNT version 2.0.58d client and server installed on a single Windows XP Pro SP1 machine.
CVSROOT=:sspi:localhost:/sweng

In one command prompt window:
    T:\>cvs add test1
    Directory /sweng/test1 added to the repository

    T:\>cvs add test2
    Directory /sweng/test2 added to the repository

    T:\>echo Hello One >test1/one.txt

    T:\>echo Hello Two >test2/two.txt

    T:\>cvs add test1/one.txt
    cvs server: scheduling file `test1/one.txt' for addition
    cvs server: use 'cvs commit' to add this file permanently

    T:\>cvs commit test1/one.txt
    RCS file: /sweng/test1/one.txt,v
    done
    Checking in test1/one.txt;
    /sweng/test1/one.txt,v  <--  one.txt
    initial revision: 1.1
    done

    T:\>cvs add test2/two.txt
    cvs server: scheduling file `test2/two.txt' for addition
    cvs server: use 'cvs commit' to add this file permanently

    T:\>cvs commit test2/two.txt
    RCS file: /sweng/test2/two.txt,v
    done
    Checking in test2/two.txt;
    /sweng/test2/two.txt,v  <--  two.txt
    initial revision: 1.1
    done

    T:\>cd test1

    T:\test1>sh
    $ while true ; do
    > cvs commit -fm log one.txt
    > if [ $? -ne 0 ] ; then ; break ; fi
    > done
    Checking in one.txt;
    /sweng/test1/one.txt,v  <--  one.txt
    new revision: 1.2; previous revision: 1.1
    done
    Checking in one.txt;
    /sweng/test1/one.txt,v  <--  one.txt
    new revision: 1.3; previous revision: 1.2
    done
    Checking in one.txt;
    /sweng/test1/one.txt,v  <--  one.txt
    new revision: 1.4; previous revision: 1.3
    done
    Checking in one.txt;
    /sweng/test1/one.txt,v  <--  one.txt
    new revision: 1.5; previous revision: 1.4
    done
    Checking in one.txt;
    /sweng/test1/one.txt,v  <--  one.txt
    new revision: 1.6; previous revision: 1.5
    done


Then go into a second command prompt window and do the following:
    T:\>cd test2

    T:\test2>cvs log two.txt
    (succeeds with log text)

    T:\test2>cvs log two.txt          <=== Execute this command several times!!



Repeatedly executing cvs log in the second window soon causes the cvs commit in the first window to fail:
    Checking in one.txt;
    /sweng/test1/one.txt,v  <--  one.txt
    new revision: 1.7; previous revision: 1.6
    done
    Checking in one.txt;
    /sweng/test1/one.txt,v  <--  one.txt
    new revision: 1.8; previous revision: 1.7
    done
    Checking in one.txt;
    /sweng/test1/one.txt,v  <--  one.txt
    new revision: 1.9; previous revision: 1.8
    done
    Checking in one.txt;
    /sweng/test1/one.txt,v  <--  one.txt
    new revision: 1.10; previous revision: 1.9
    done
    Checking in one.txt;
    /sweng/test1/one.txt,v  <--  one.txt
    new revision: 1.11; previous revision: 1.10
    done
    cvs server: Up-to-date check failed for `one.txt'
    cvs [server aborted]: correct above errors first!
    $ cvs status one.txt
    ===================================================================
    File: one.txt           Status: Up-to-date

       Working revision:    1.11
       Repository revision: 1.11    /sweng/test1/one.txt,v
       Expansion option:    kv
       Commit Identifier:   e4c41f912701a71
       Sticky Tag:          (none)
       Sticky Date:         (none)
       Sticky Options:      -kkv
       Merge From:          (none)


How can cvs log of test2/two.txt affect a separate instance of cvs doing cvs commit of test1/one.txt??

Any help or verification is appreciated. Thank you,
--jsf




More information about the cvsnt mailing list