Traditionally, the jenkins fork is maintaining a (hopefully) smaller set of
patches on top of the upstream version.

The aim is to get the set of patches to zero and then drop the fork.

With reference to the above aim, my preference would be to get it in
upstream rather than add to our current patch set.

It is a real pain trying to update the code from upstream, at least every
time I have tried I have had to give up and get KK to do it (he has some
set of magic workspaces or something) so I would just love if we can get
the need for this fork to disappear completely

-Stephen


On 26 April 2013 03:22, Kenny Ayers <theotherwhitem...@gmail.com> wrote:

> Hi folks,
>
> *Short Version:*
> *
> *
>   I may have a fix for Jenkins-14551 (
> https://issues.jenkins-ci.org/browse/JENKINS-14551).  I've submitted this
> potential resolution to SVNKit as well as their 1.7.6 SVN branch has the
> same issue (http://issues.tmatesoft.com/issue/SVNKIT-368).  I've compiled
> the change into the subversion-plugin on my test server, and the fix
> appears to work.
>
>   Can a contributor peer review this change?
>
>   How do I go about submitting this fix to the Jenkins SVNKit repo?  Do I
> need a unit test before I can do a pull request?  The bug is obvious when
> you look at the code, and the unit test setup and execution seems like it
> would be complicated.  I've forked the Jenkins SVNKit repo and committed
> the modification here:
> https://github.com/theotherwhitemeat/svnkit-1/commit/27decb28216ee4fd15b8fcbdb769bf41d81978eb
>
> *Longer Version:*
> *
> *
>   In org.tmatesoft.svn.core.internal.wc.SVNUpdateEditor15.java, in
> function addFileWithHistory (line 867), there's a code block that calls
> myFileFetcher.fetchFile() twice.  Each time this is called, baseTextOS is
> written to.  Upon the second write, the file contents are duplicated.
> Here's the code:
>
>
> baseTextOS = SVNFileUtil.openFileForWriting(info.copiedBaseText);
> myFileFetcher.fetchFile(copyFromPath, copyFromRevision, baseTextOS,
> baseProperties);
> SVNChecksumOutputStream checksumBaseTextOS = new
> SVNChecksumOutputStream(baseTextOS,
> SVNChecksumOutputStream.MD5_ALGORITHM, true);
> baseTextOS = checksumBaseTextOS;
> myFileFetcher.fetchFile(copyFromPath, copyFromRevision, baseTextOS,
> baseProperties);
> info.copiedBaseChecksum = checksumBaseTextOS.getDigest();
>
>
>
>   I was able to find this by stepping through the code using NetBeans IDE
> 7.3 attached to a remote debugging session on Jenkins.  I've compiled and
> tested this change inside the context of the subversion-plugin and the file
> contents are no longer duplicated.
>
>   I've forked the svnkit repo used in Jenkins here, and committed this
> change if anyone would like to download the fix and do some testing:
>
>
> https://github.com/theotherwhitemeat/svnkit-1/commit/27decb28216ee4fd15b8fcbdb769bf41d81978eb
>
>   Here's my patch:
>
> Index: SVNUpdateEditor15.java
> ===================================================================
> --- SVNUpdateEditor15.java (revision 9722)
> +++ SVNUpdateEditor15.java (working copy)
> @@ -864,7 +864,6 @@
>              OutputStream baseTextOS = null;
>              try {
>                  baseTextOS =
> SVNFileUtil.openFileForWriting(info.copiedBaseText);
> -                myFileFetcher.fetchFile(copyFromPath, copyFromRevision,
> baseTextOS, baseProperties);
>                  SVNChecksumOutputStream checksumBaseTextOS = new
> SVNChecksumOutputStream(baseTextOS,
>                          SVNChecksumOutputStream.MD5_ALGORITHM, true);
>                  baseTextOS = checksumBaseTextOS;
>
> Thank you,
>
> Kenny Ayers
>
> --
> You received this message because you are subscribed to the Google Groups
> "Jenkins Developers" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to jenkinsci-dev+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/groups/opt_out.
>
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-dev+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to