subversion-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Walter Klust <walter.kl...@elego.de>
Subject Re: JavaHL: JNIError: bad C++ this
Date Fri, 08 Jul 2016 14:48:02 GMT
On 08.07.2016 16:38, Mark Phippard wrote:
> On Fri, Jul 8, 2016 at 4:58 AM, Walter Klust <walter.klust@elego.de> wrote:
>
>> Hello,
>>
>> I have an interesting problem concerning JavaHL:
>>
>> - Windows 7, JRE 8u66, Eclipse 4.2.1, Subclipse 1.8.22, JavaHL 1.8.10
>> - a changeset of around 2000 files; roughly 50% modified and 50% deleted
>> (probably to a large refactoring)
>> - on trying to commit the changes eclipse pops up a message after a short
>> time: "Internal error occured during SVNCommit",  "bad C++ this"
>>
>
> I do not know if you are using changeset generically or referencing the
> Eclipse changeset feature.  But just to clarify for SVN devs, this is not
> the SVN changelist feature.  In terms of SVN commit, it would just be a
> specific list of files to commit like any other commit.  Eclipse changesets
> are just a UI feature to organize the modified files.
>

I meant a list of files to commit. Thanks for the clarification.

>
>
>> - in the eclipse logs a stacktrace was found:
>>
>> org.apache.subversion.javahl.JNIError: bad C++ this
>>          at org.apache.subversion.javahl.SVNClient.dispose(Native Method)
>>          at
>>
>>  org.tigris.subversion.svnclientadapter.javahl.AbstractJhlClientAdapter.dispose(AbstractJhlClientAdapter.java:3007)
>>          at
>>
>>  org.tigris.subversion.subclipse.core.SVNClientManager.returnSVNClient(SVNClientManager.java:162)
>>          at
>>
>>  org.tigris.subversion.subclipse.ui.operations.CommitOperation.execute(CommitOperation.java:113)
>>          at
>>
>>  org.tigris.subversion.subclipse.ui.operations.SVNOperation.run(SVNOperation.java:90)
>>          at
>>
>>  org.eclipse.team.internal.ui.actions.JobRunnableContext.run(JobRunnableContext.java:144)
>>          at
>>
>>  org.eclipse.team.internal.ui.actions.JobRunnableContext$ResourceJob.runInWorkspace(JobRunnableContext.java:72)
>>          at
>>
>>  org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:38)
>>          at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53)
>>
>>
>> - this error does not occur when trying to commit a subset of the changes,
>> e.g. any 2 of 4 subdirectories can be comitted successfully but not all 4
>> together.
>>
>> It looks to me like a quantity problem; something like an internal buffer
>> overflow due to the large changeset. I tried to reproduce this with a
>> similar number of modified/deleted files but had no success so far.
>>
>> Any ideas how to analyze this problem further ?
>>
>>
> It sort of seems like it could be a Subclipse bug, though it is interesting
> that it only manifests in specific scenarios.  Makes me not really sure
> where to look.
>
> Does the commit work or record any errors?  This exception is only
> happening in some cleanup that occurs after the API calls would all be
> completed or possibly after having processed an exception.  IOW, this is
> not failing during an API call, it is failing when Subclipse is just
> disposing of the JavaHL client it obtained to make the API calls.
> Something that is done for every API call.
>
> The stack trace does not make a lot of sense either.  This should be the
> relevant place in the code:
>
>  org.tigris.subversion.subclipse.ui.operations.CommitOperation.execute(CommitOperation.java:113)
>
> But that does not line up with anything that makes a lot of sense for the
> error.
>
>

The commit does not work. Eclipse throws the message popup; the whole commit process is then
terminated.

By the way: when changing to svnkit this problem does not occur. Not sure what this means
about the root cause.



-- 
Walter Klust

Mime
View raw message