You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Mark Phippard <Ma...@softlanding.com> on 2005/04/29 20:44:48 UTC

Re: JavaHL 1.2 Problem -- Test Case attached

I have done a lot more testing.  I can only make the problem happen via 
ra_dav.  The previous test case I committed works fine, even via ra_dav. I 
was able to hack up a test case that anyone should be able to run that 
causes the problem. 

dlr tested it on FC3 and did not get the problem, so this might be a Win32 
only problem.  I am going to try to test it on OS X this weekend.

Could someone run this test on Win32 and see if they get the same problem?

I have attached an edited version of BasicTests.java from trunk. 

I added a new testMergeCrash() method.  It runs 2nd so that you do not 
have to wait.  The 1st test lets me know I have things setup correctly to 
run tests.

The test checks out the Subclipse core project (WC size ~ 1.6 MB) from a 
branch in the public repository.  It then attempts to merge revision 1131 
from the trunk copy of the same project.  On my system this crashes every 
time.

Here is the new test if you want to just cut & paste it.

    /**
     * thest the basic SVNClient.merge functionality
     * @throws Throwable
     * @since 1.2
     */
    public void testMergeCrash() throws Throwable
    {
        // build the test setup
        OneTest thisTest = new OneTest();
        String wc = thisTest.getWCPath() + "/javahl_test";
 
        String baseURL = "http://svn.collab.net/repos/subclipse";
        String branchURL = baseURL + "/branches/subclipse-3/core";
        String trunkURL = baseURL + "/trunk/subclipse/core";
        Revision fromRev = new Revision.Number(1330);
        Revision toRev = new Revision.Number(1331);
 
        // checkout Subclipse core module from branch
        client.checkout(branchURL, wc, Revision.HEAD, true);
 
        // test --dry-run of r1331 from trunk
        client.merge(trunkURL, fromRev, trunkURL, toRev, wc, false, true, 
false, true);

        // now do the real merge of r1331 from trunk
        client.merge(trunkURL, fromRev, trunkURL, toRev, wc, false, true, 
false, true);
 
    }


Thanks

Mark




_____________________________________________________________________________
Scanned for SoftLanding Systems, Inc. by IBM Email Security Management Services powered by MessageLabs. 
_____________________________________________________________________________

apr/javahl crash on Win32 (was Re: JavaHL 1.2 Problem -- Test Case attached)

Posted by Andrew Vaughan <aj...@netspace.net.au>.
svn devs please note: this bug causes the jvm to crash.  This means 
merge is not usable via javahl.

On Sat, 30 Apr 2005 06:44 am, Mark Phippard wrote:
[...]
> dlr tested it on FC3 and did not get the problem, so this might be a
> Win32 only problem.  I am going to try to test it on OS X this
> weekend.
>
> Could someone run this test on Win32 and see if they get the same
> problem?

I failed to reproduce this on Linux (Debian sarge).

I can reproduce this on Windows 2000 SP4.
(crash logs attached).

<<<< hs_err_pid1112.log >>>>
An unexpected exception has been detected in native code outside the VM.
Unexpected Signal : EXCEPTION_STACK_OVERFLOW (0xc00000fd) occurred at 
PC=0x6EED5397
Function=apr_get_username+0x47
Library=C:\svn1.2rc\Subversion\bin\libapr.dll

<snip>
(full log attached)

From the command line the equivalent commands runs fine, without asking 
for any authentication.  Mark as already commented that this only 
happens over http.  I'm wondering if this is actually an apr bug.

I would attempt to debug this, but I don't have a windows development 
environment. 

> I have attached an edited version of BasicTests.java from trunk.
>
> I added a new testMergeCrash() method.  It runs 2nd so that you do
> not have to wait.  The 1st test lets me know I have things setup
> correctly to run tests.
>
<snip> 

> Here is the new test if you want to just cut & paste it.
>
>     /**
>      * thest the basic SVNClient.merge functionality
>      * @throws Throwable
>      * @since 1.2
>      */
>     public void testMergeCrash() throws Throwable
>     {
>         // build the test setup
>         OneTest thisTest = new OneTest();
>         String wc = thisTest.getWCPath() + "/javahl_test";
>
>         String baseURL = "http://svn.collab.net/repos/subclipse";
>         String branchURL = baseURL + "/branches/subclipse-3/core";
>         String trunkURL = baseURL + "/trunk/subclipse/core";
>         Revision fromRev = new Revision.Number(1330);
>         Revision toRev = new Revision.Number(1331);
>
>         // checkout Subclipse core module from branch
>         client.checkout(branchURL, wc, Revision.HEAD, true);
>
>         // test --dry-run of r1331 from trunk
>         client.merge(trunkURL, fromRev, trunkURL, toRev, wc, false,
> true, false, true);
>
>         // now do the real merge of r1331 from trunk
>         client.merge(trunkURL, fromRev, trunkURL, toRev, wc, false,
> true, false, true);
>
>     }
>

Mark, you are passing true for the dryRun paramenter in both 
client.merge() lines.  

The crash happens in both cases.  (ie dryRun=false and dryRun=true)

My test setup
Machine 1 
- Debian Sarge
Subversion built from 1.2rc2 tarball + modified BasicTest.java from Mark 
Phippard + kaffe_patches, using apr apache neon etc as installed from 
debian packages. Sun jdk1.4.2

libapr0            2.0.53-5          
libapr0-dev        2.0.53-5          
libneon24          0.24.7.dfsg-1   
libneon24-dev      0.24.7.dfsg-1     
swig               1.3.24-1      

tests all pass with java versions sun 1.4.2, sun 1.5, IBM 1.4.2,
Sablevm 1.11.3-1

Machine 2 
- Debian Sarge 

as above but built from 1.2.x at rev 14530

- windows 2000 sp4 
1.2rc2 downloaded from tigris.org

BasicTest.java Fails with both sun 1.4.2 and 1.5 jvms

Attached error logs from sun 1.4.2 and 1.5 jvm

Hope this helps
Andrew V.

</Humour mode on>
Mark do you think this might get more attention if you just committed 
the failing test to trunk.
I believe someone is running automated tests of trunk.
</Humour mode off>