Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 350322 - Frequent java.io.IOException: svn: Received fatal alert: bad_record_mac
Summary: Frequent java.io.IOException: svn: Received fatal alert: bad_record_mac
Status: CLOSED WORKSFORME
Alias: None
Product: Community
Classification: Eclipse Foundation
Component: Subversion (show other bugs)
Version: unspecified   Edit
Hardware: PC Windows 7
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Eclipse Webmaster CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-06-24 15:21 EDT by Eike Stepper CLA
Modified: 2014-05-07 09:55 EDT (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Eike Stepper CLA 2011-06-24 15:21:17 EDT
Since some weeks ago I and my team keep getting error like this:

Synchronize operation failed.
svn: Received fatal alert: bad_record_mac
svn: PROPFIND request failed on '/svnroot/modeling/org.eclipse.emf.cdo/!svn/bln/8207'

The paths that cause this problems are constantly varying but they're all under /svnroot/modeling/org.eclipse.emf.cdo

I have no clue if this is a Subversive tool problem (all my committers seem to have this problem) or a server file system problem (caused by the recent crash/outage?).

But it starts to become very annoying and I'd like to start somewhere...
Comment 1 Eike Stepper CLA 2011-06-24 15:22:27 EDT
Bug 207175 reports a *similar* issue, but they say it's "SSL3 related" and I can make no sense out of it.
Comment 2 Eike Stepper CLA 2011-06-24 15:26:40 EDT
And there's http://www.eclipse.org/forums/index.php/m/633941
Comment 3 Denis Roy CLA 2011-06-24 15:42:52 EDT
A quick Google search reveals that this problem is manifested with other repositories, not just Eclipse's.

I thought this was interesting:
http://www.thatsjava.com/java-tech/73075/

"Have a look at bug 4513263, http://developer.java.sun.com/developer/bugParade/bugs/4513263.html

The key for me in fixing the bad_record_mac problem was a one-liner fix to disable TLS by calling:

socket.setEnabledProtocols(new String[] {"SSLv3"});

Hope this fixes it for you..."


Which SVN client are you using?
Comment 4 Eike Stepper CLA 2011-06-24 15:55:27 EDT
(In reply to comment #3)
> Hope this fixes it for you..."

Was that still part of the citation or do you mean me?

> Which SVN client are you using?

Subversive, both directly in the IDE and as Buckminster plugin. Both have shown this error. Frequently.
Comment 5 Denis Roy CLA 2011-06-24 15:59:08 EDT
It was part of the citation.

Bug 207175 alludes to a problem with HttpClient.  If Subversive uses HttpClient, then there could be a bug way upstream.

http://mail-archives.apache.org/mod_mbox/hc-httpclient-users/200902.mbox/%3CCE1A701EDAB9A447B24DD8045832F67E4C97D89302@FRSPX100.fr01.awl.atosorigin.net%3E

Some of these discussions look fairly old; I wonder why we're still seeing this.

Is there any way of just trying another SVN client?
Comment 6 Andre Dietisheim CLA 2011-06-24 16:16:09 EDT
> Is there any way of just trying another SVN client?

I experience this kind of error on other svn repositories, too when I use subversive. I did not track the cause down to a specific use case but I pretty much believe that it mostly happens when deleting and refactoring (rename) resources. 
IMHO this is a bug in subversive since it never happens to me when using Subclipse or the command line svn client.
Unfortunately (at least when I tried this the last time > 1y ago) you cannot switch from subversive to subclipse on the fly, you have to do a fresh checkout.
Comment 7 Eike Stepper CLA 2011-06-24 16:23:37 EDT
(In reply to comment #5)
> Is there any way of just trying another SVN client?

I agree with André that's not so easy and certainly no long term solution ;-(

Should we move this bug to Subversive and see if they have an idea?
Comment 8 Stefan Winkler CLA 2011-06-24 17:25:07 EDT
I told Eike per EMail that I can reproduce the problem when setting up a fresh CDO source workspace as described in the wiki. The Buckmister Import function gives several of the "bad mac" errors. 

This seems to be a bug in SVNKit (and thus, this bug most likely affects Polarion or an upstream component).

Here's what I did to try out a workaround:
- Go to install software
- Switch to the Polarion SVN connector update site
- Select the JavaHL 1.6 SVN connector
- Install it
- Go to preferences, Team, SVN
- Switch SVN connector from SVNKit to JavaHL
(I'm on a Mac and got svn binaries available on command line, Windows users might have to install some native SVN client).

Now my errors are gone. The only thing I changed is the SVN connector. I still use the Subversive Team Provider, I just don't use SVNKit anymore...
Comment 9 Eike Stepper CLA 2011-06-25 01:47:08 EDT
(In reply to comment #8)

I tried the JavaHL Connector but then it turned out that I need to providesome native library and that is not available for my 64 bit platform. Seems that's no solution for me ;-(
Comment 10 Eike Stepper CLA 2011-06-25 01:54:13 EDT
Correction: I was able to install a 64-bit version of the native binaries with the help of http://subclipse.tigris.org/wiki/JavaHL#head-0ae839721445e3f59d10a128ec9439d4f4988d5f

At least it seems to work now. Will report when I'm sure that the original trouble is past...
Comment 11 Stefan Winkler CLA 2011-06-25 10:27:07 EDT
By chance, I came over a tweet just now:

@jtpadilla (Juan Padilla Julian) 
Si tienes problemas con tu servidor SVN por SSH debido al numero de conexiones prueba con "-Dsvnkit.ssh2.persistent=false" en "eclipse.ini"

I don't speak spanish, but I interpret "If you have problems with SVN and SSH, try putting "-Dsvnkit.ssh2.persistent=false" in your "eclipse.ini" file.

I've tried the SVNKit again with this option and indeed: it works!
Comment 12 Eike Stepper CLA 2011-06-25 13:07:28 EDT
That would be great news. Actually I'm still happy with the JavaHL connector as you've suggested first!

That said, I'm quite unhappy with Subversive/SVN speed. I've spent a couple of hours for a single merge of the entire trunk to maintenance. Several freezes followed by cancel, restart Eclipse and retry. And that although I was already doing Caspar's trick of using a complete trunk checkout rather than Buckminster's many separate project checkouts.

I'm thinking about Git again...
Comment 13 Eike Stepper CLA 2011-06-25 13:08:38 EDT
I think with the two approaches Stefan's posted we can close this bugzilla.
Comment 14 Denis Roy CLA 2011-06-25 18:32:00 EDT
Good to see the cooperation here.
Comment 15 Eike Stepper CLA 2011-06-28 01:06:45 EDT
Just a note:

Subversive always forgets about my connector setting after each restart! Crap!
Comment 16 Denis Roy CLA 2014-05-07 09:55:26 EDT
Movng to Subversion component.