Branch: refs/heads/master Home: https://github.com/jenkinsci/remoting Commit: a8114ab1cca661fa30d198babbe236e9bcb900fb https://github.com/jenkinsci/remoting/commit/a8114ab1cca661fa30d198babbe236e9bcb900fb Author: Jesse Glick <jgl...@cloudbees.com> Date: 2013-01-04 (Fri, 04 Jan 2013)
Changed paths: M pom.xml M src/main/java/hudson/remoting/Capability.java M src/main/java/hudson/remoting/RemoteClassLoader.java Log Message: ----------- Basic implementation of prefetch. Commit: b646d495e2dd852b4704c8213fd516e26d07cfda https://github.com/jenkinsci/remoting/commit/b646d495e2dd852b4704c8213fd516e26d07cfda Author: Jesse Glick <jgl...@cloudbees.com> Date: 2013-01-04 (Fri, 04 Jan 2013) Changed paths: M pom.xml Log Message: ----------- constant-pool-scanner 1.0 released Commit: 1b1f25548a81241496d5c77f990c0fc7da4571bd https://github.com/jenkinsci/remoting/commit/1b1f25548a81241496d5c77f990c0fc7da4571bd Author: Jesse Glick <jgl...@cloudbees.com> Date: 2013-01-04 (Fri, 04 Jan 2013) Changed paths: M src/main/java/hudson/remoting/Capability.java M src/main/java/hudson/remoting/RemoteClassLoader.java Log Message: ----------- @since Commit: 0659535242d98cb7b6afeae0d72b8a955d59efa5 https://github.com/jenkinsci/remoting/commit/0659535242d98cb7b6afeae0d72b8a955d59efa5 Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-01-06 (Sun, 06 Jan 2013) Changed paths: M src/main/java/hudson/remoting/Capability.java Log Message: ----------- Nitpicking. int << int then casting to long makes me uncomfortable. Commit: e0d38ec6f971ca1829eeed8ed3568b5fd912d017 https://github.com/jenkinsci/remoting/commit/e0d38ec6f971ca1829eeed8ed3568b5fd912d017 Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-01-06 (Sun, 06 Jan 2013) Changed paths: M src/main/java/hudson/remoting/RemoteClassLoader.java Log Message: ----------- doc improvement Commit: bcb886fefac65749d74b317f7528c3606dfc5748 https://github.com/jenkinsci/remoting/commit/bcb886fefac65749d74b317f7528c3606dfc5748 Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-01-06 (Sun, 06 Jan 2013) Changed paths: M src/main/java/hudson/remoting/RemoteClassLoader.java Log Message: ----------- this check is harmful. remoteCapability.supportsPrefetch() is there to tell us if this side can call the fetch3 on the other side. Regardless of what the other side advertised, this side has already advertised the pre-fetch capability. So if the other side holds us to it, then we must deliver. Commit: e4274f6499f7740a71d56340cfd2c5d61a26927a https://github.com/jenkinsci/remoting/commit/e4274f6499f7740a71d56340cfd2c5d61a26927a Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-01-06 (Sun, 06 Jan 2013) Changed paths: M src/main/java/hudson/remoting/RemoteClassLoader.java Log Message: ----------- Prefetched class needs to be delivered to the classloader that's supposed to load it. Imagine two classloaders P and C on the other side, where C delegates some of its classloading to P. On this side we got two remote classloaders Rp and Rc representing P and C respectively. Now, imagine our loading Cc1 from Rc. Now, Cc1 actually depends on Cp1 that's loaded by P. As a result of fetch3, we get [(Cc1,oid_Rc),(Cp1,oid_Rp)] as a return value. If we don't tell (Cp1,oid_Rp) to Rp, then someone trying to load Cp1 independently will not benefit from this prefetching. Therefore, we need to pass them to Rp eagerly. (We still have to keep (Cp1,oid_Rp) in Rc as well so that Rp.loadClass(Cp1) will find what class file to load by which classloader.) Note that the code behind "channel.importedClassLoaders.get(id)" seems awefully inefficient, as it creates a proxy only to look up a key. This probably needs to be improved. Commit: cca87d4480759bed6e868030b5c1fef4ace5308d https://github.com/jenkinsci/remoting/commit/cca87d4480759bed6e868030b5c1fef4ace5308d Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-01-08 (Tue, 08 Jan 2013) Changed paths: M src/main/java/hudson/remoting/RemoteClassLoader.java Log Message: ----------- tweaking with Jesse Commit: f5060531f4caa3d69c02a9bbfe56b1eed8bfe16e https://github.com/jenkinsci/remoting/commit/f5060531f4caa3d69c02a9bbfe56b1eed8bfe16e Author: Jesse Glick <jgl...@cloudbees.com> Date: 2013-03-20 (Wed, 20 Mar 2013) Changed paths: M pom.xml A src/main/java/hudson/remoting/Base64.java M src/main/java/hudson/remoting/Channel.java M src/main/java/hudson/remoting/Engine.java M src/main/java/hudson/remoting/Launcher.java M src/main/java/hudson/remoting/jnlp/Main.java M src/test/java/hudson/remoting/BinarySafeStreamTest.java Log Message: ----------- Merge branch 'master' into prefetch-JENKINS-15120 Commit: 04c20a6c0991bd7fe68db55ac83f04421b86b88b https://github.com/jenkinsci/remoting/commit/04c20a6c0991bd7fe68db55ac83f04421b86b88b Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-04-25 (Thu, 25 Apr 2013) Changed paths: M src/main/java/hudson/remoting/Which.java Log Message: ----------- Renamed to avoid confusion between jarFile vs jarURL Commit: e669d45fd374b5d2f9a5939a1936cfa628f83e6a https://github.com/jenkinsci/remoting/commit/e669d45fd374b5d2f9a5939a1936cfa628f83e6a Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-04-25 (Thu, 25 Apr 2013) Changed paths: A TODO.txt M pom.xml M src/main/java/hudson/remoting/Capability.java M src/main/java/hudson/remoting/Channel.java A src/main/java/hudson/remoting/Checksum.java A src/main/java/hudson/remoting/DumbClassLoaderBridge.java A src/main/java/hudson/remoting/FileSystemJarCache.java A src/main/java/hudson/remoting/JarCache.java A src/main/java/hudson/remoting/JarCacheSupport.java A src/main/java/hudson/remoting/JarLoader.java A src/main/java/hudson/remoting/JarLoaderImpl.java M src/main/java/hudson/remoting/RemoteClassLoader.java A src/main/java/hudson/remoting/ResourceImageDirect.java A src/main/java/hudson/remoting/ResourceImageInJar.java A src/main/java/hudson/remoting/ResourceImageRef.java A src/main/java/hudson/remoting/URLish.java A src/main/java/hudson/remoting/Util.java M src/main/java/hudson/remoting/Which.java Log Message: ----------- Implemented caching&prefetching ... to the point that at least all the tests pass, so it hopefully does no harm. I have not yet verified that it does good, nor have I verified that this works with something real like Jenkins. The basic idea of this change is: - introduce an abstraction ResourceImageRef to indirect the process of resolving the actual data, so that IClassLoader calls don't blindly send byte[]. - There's an ResourceImageRef implementation for a file inside a jar file (ResourceImageInJar), which fetches a whole jar file and then locate a resource inside it. - A new subsystem (JarCache) for caching jar files sent by the other side, and its implementations, based on jar checksums. - A new subsystem (JarLoader) for computing & serving jar files based on their checksums. Commit: cf96ad9e00081b0241d68b173d0ef8ec0501d8f0 https://github.com/jenkinsci/remoting/commit/cf96ad9e00081b0241d68b173d0ef8ec0501d8f0 Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-04-25 (Thu, 25 Apr 2013) Changed paths: M src/main/java/hudson/remoting/RemoteClassLoader.java M src/test/java/hudson/remoting/ClassRemotingTest.java Log Message: ----------- Bug fix. Which.jarFile() can return a class directory Commit: a8a40dbafde4306206e132e4bffebf4099d3ef8b https://github.com/jenkinsci/remoting/commit/a8a40dbafde4306206e132e4bffebf4099d3ef8b Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-04-27 (Sat, 27 Apr 2013) Changed paths: M src/main/java/hudson/remoting/FileSystemJarCache.java Log Message: ----------- parent directory needs to exist or createTempFile fails Commit: 6b3eded815cc5b3911a27804001b2af9abc43532 https://github.com/jenkinsci/remoting/commit/6b3eded815cc5b3911a27804001b2af9abc43532 Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-04-27 (Sat, 27 Apr 2013) Changed paths: M src/main/java/hudson/remoting/FileSystemJarCache.java Log Message: ----------- typo Commit: b37997764f4d28a893a749239cd09d2b3927c951 https://github.com/jenkinsci/remoting/commit/b37997764f4d28a893a749239cd09d2b3927c951 Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-04-27 (Sat, 27 Apr 2013) Changed paths: M src/main/java/hudson/remoting/Channel.java Log Message: ----------- JarLoader needs to be exported for the other side to use Commit: a504a5624fbad8f90ffddc9beb68b41a4d957fd6 https://github.com/jenkinsci/remoting/commit/a504a5624fbad8f90ffddc9beb68b41a4d957fd6 Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-04-27 (Sat, 27 Apr 2013) Changed paths: M TODO.txt M pom.xml M src/test/java/hudson/remoting/ClassRemotingTest.java A src/test/java/hudson/remoting/PrefetchingTest.java Log Message: ----------- wrote a first test case for jar prefetching Commit: f1bf776d28c1e3b3daab91d8c6e2502dfcca34ea https://github.com/jenkinsci/remoting/commit/f1bf776d28c1e3b3daab91d8c6e2502dfcca34ea Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-04-27 (Sat, 27 Apr 2013) Changed paths: M pom.xml M src/test/java/hudson/remoting/PrefetchingTest.java Log Message: ----------- Expanding test Commit: 723e730e3feef10818869efc866a990517dd4dca https://github.com/jenkinsci/remoting/commit/723e730e3feef10818869efc866a990517dd4dca Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-04-27 (Sat, 27 Apr 2013) Changed paths: M src/test/java/hudson/remoting/RmiTestBase.java Log Message: ----------- using the original name allows the IDE to run a single test case Commit: 32076e9de5d2652e7e22038cbc2c4bdad863ff83 https://github.com/jenkinsci/remoting/commit/32076e9de5d2652e7e22038cbc2c4bdad863ff83 Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-04-27 (Sat, 27 Apr 2013) Changed paths: M src/test/java/hudson/remoting/PrefetchingTest.java Log Message: ----------- added a test that more seriously exercises the dependency analyzer Commit: cc1441d89406a5338b524938e176a403ec7c227b https://github.com/jenkinsci/remoting/commit/cc1441d89406a5338b524938e176a403ec7c227b Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-04-27 (Sat, 27 Apr 2013) Changed paths: M TODO.txt Log Message: ----------- updated TODO Commit: 262d67ce67ed472a5de447bf4977ae7fa875c288 https://github.com/jenkinsci/remoting/commit/262d67ce67ed472a5de447bf4977ae7fa875c288 Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-04-27 (Sat, 27 Apr 2013) Changed paths: M src/main/java/hudson/remoting/JarCache.java M src/main/java/hudson/remoting/JarCacheSupport.java M src/main/java/hudson/remoting/JarLoader.java M src/main/java/hudson/remoting/JarLoaderImpl.java M src/main/java/hudson/remoting/ResourceImageDirect.java M src/main/java/hudson/remoting/ResourceImageInJar.java M src/main/java/hudson/remoting/ResourceImageRef.java Log Message: ----------- doc improvements Commit: f597297e75fafef25391e7f0e38b88d4fae0279d https://github.com/jenkinsci/remoting/commit/f597297e75fafef25391e7f0e38b88d4fae0279d Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-04-27 (Sat, 27 Apr 2013) Changed paths: M src/main/java/hudson/remoting/FileSystemJarCache.java Log Message: ----------- File(File,String) doesn't detect flag an error if the first parameter is null. Commit: 407e6c5322a148492bbeb57ad0cd59bdd3bfd953 https://github.com/jenkinsci/remoting/commit/407e6c5322a148492bbeb57ad0cd59bdd3bfd953 Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-04-27 (Sat, 27 Apr 2013) Changed paths: M pom.xml A src/main/java/hudson/remoting/Base64.java M src/main/java/hudson/remoting/Channel.java M src/main/java/hudson/remoting/Engine.java M src/main/java/hudson/remoting/Launcher.java M src/main/java/hudson/remoting/PipeWindow.java M src/main/java/hudson/remoting/ProxyOutputStream.java M src/main/java/hudson/remoting/jnlp/Main.java M src/test/java/hudson/remoting/BinarySafeStreamTest.java A src/test/java/hudson/remoting/throughput/DumbReceiver.java A src/test/java/hudson/remoting/throughput/DumbSender.java A src/test/java/hudson/remoting/throughput/Receiver.java A src/test/java/hudson/remoting/throughput/Sender.java Log Message: ----------- Merge branch 'master' into prefetch-JENKINS-15120 Commit: 55bc98651fd67375a23260a11e92cf9aa9eba6df https://github.com/jenkinsci/remoting/commit/55bc98651fd67375a23260a11e92cf9aa9eba6df Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-04-27 (Sat, 27 Apr 2013) Changed paths: M src/main/java/hudson/remoting/RemoteClassLoader.java Log Message: ----------- A better way to remain backward compatible is to use the adapter when no local cache is set. Commit: bf39ddb7d53cf30de3044dc5d1195027afbb6c4c https://github.com/jenkinsci/remoting/commit/bf39ddb7d53cf30de3044dc5d1195027afbb6c4c Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-04-27 (Sat, 27 Apr 2013) Changed paths: M src/main/java/hudson/remoting/Channel.java Log Message: ----------- exposed it in the constructor Commit: 6f1cdccf4dd5bac34b4e9baea1f3bb65e6066147 https://github.com/jenkinsci/remoting/commit/6f1cdccf4dd5bac34b4e9baea1f3bb65e6066147 Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-04-29 (Mon, 29 Apr 2013) Changed paths: M src/main/java/hudson/remoting/RemoteClassLoader.java Log Message: ----------- fixed broken tests Commit: b5145a06876f4390ef3229d70fa5a7edf0739dae https://github.com/jenkinsci/remoting/commit/b5145a06876f4390ef3229d70fa5a7edf0739dae Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-05-03 (Fri, 03 May 2013) Changed paths: M src/main/java/hudson/remoting/Engine.java M src/main/java/hudson/remoting/FileSystemJarCache.java M src/main/java/hudson/remoting/Launcher.java M src/main/java/hudson/remoting/jnlp/Main.java Log Message: ----------- Setting ~/.jenkins/cache/jars as the default cache location Commit: b12df969d215aecc3647f7cdd65db7db857cf095 https://github.com/jenkinsci/remoting/commit/b12df969d215aecc3647f7cdd65db7db857cf095 Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-05-03 (Fri, 03 May 2013) Changed paths: M src/main/java/hudson/remoting/Checksum.java M src/main/java/hudson/remoting/JarLoaderImpl.java Log Message: ----------- Changing the algorithm to SHA-256 and making it pluggable. Commit: b88373c60a26fcc219a04b5c931efdd0a44d0fde https://github.com/jenkinsci/remoting/commit/b88373c60a26fcc219a04b5c931efdd0a44d0fde Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-05-04 (Sat, 04 May 2013) Changed paths: M src/main/java/hudson/remoting/Checksum.java M src/main/java/hudson/remoting/Launcher.java Log Message: ----------- bug fix Commit: 056353bb4f766a462e99ad451e8e7f4a7697cdd6 https://github.com/jenkinsci/remoting/commit/056353bb4f766a462e99ad451e8e7f4a7697cdd6 Author: Jesse Glick <jgl...@cloudbees.com> Date: 2013-05-07 (Tue, 07 May 2013) Changed paths: A TODO.txt M pom.xml M src/main/java/hudson/remoting/Capability.java M src/main/java/hudson/remoting/Channel.java A src/main/java/hudson/remoting/Checksum.java A src/main/java/hudson/remoting/DumbClassLoaderBridge.java M src/main/java/hudson/remoting/Engine.java A src/main/java/hudson/remoting/FileSystemJarCache.java A src/main/java/hudson/remoting/JarCache.java A src/main/java/hudson/remoting/JarCacheSupport.java A src/main/java/hudson/remoting/JarLoader.java A src/main/java/hudson/remoting/JarLoaderImpl.java M src/main/java/hudson/remoting/Launcher.java M src/main/java/hudson/remoting/PipeWindow.java M src/main/java/hudson/remoting/ProxyOutputStream.java M src/main/java/hudson/remoting/RemoteClassLoader.java A src/main/java/hudson/remoting/ResourceImageDirect.java A src/main/java/hudson/remoting/ResourceImageInJar.java A src/main/java/hudson/remoting/ResourceImageRef.java A src/main/java/hudson/remoting/URLish.java A src/main/java/hudson/remoting/Util.java M src/main/java/hudson/remoting/Which.java M src/main/java/hudson/remoting/jnlp/Main.java M src/test/java/hudson/remoting/ClassRemotingTest.java A src/test/java/hudson/remoting/PrefetchingTest.java M src/test/java/hudson/remoting/RmiTestBase.java A src/test/java/hudson/remoting/throughput/DumbReceiver.java A src/test/java/hudson/remoting/throughput/DumbSender.java A src/test/java/hudson/remoting/throughput/Receiver.java A src/test/java/hudson/remoting/throughput/Sender.java Log Message: ----------- Merge branch 'prefetch-JENKINS-15120' of github.com:jenkinsci/remoting into prefetch-JENKINS-15120 Commit: c6432e57d6bf51dc11282c733c5a881fb88789ee https://github.com/jenkinsci/remoting/commit/c6432e57d6bf51dc11282c733c5a881fb88789ee Author: Jesse Glick <jgl...@cloudbees.com> Date: 2013-05-07 (Tue, 07 May 2013) Changed paths: M pom.xml Log Message: ----------- constant-pool-scanner 1.1 Commit: 114d687d3e2372698ab03c402c2dbf7aa50efc26 https://github.com/jenkinsci/remoting/commit/114d687d3e2372698ab03c402c2dbf7aa50efc26 Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-05-11 (Sat, 11 May 2013) Changed paths: M src/main/java/hudson/remoting/Channel.java Log Message: ----------- added convenience code to dump performance counter numbers Commit: d81074f2bbf74a580e21dda37b02c561ed245708 https://github.com/jenkinsci/remoting/commit/d81074f2bbf74a580e21dda37b02c561ed245708 Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-05-11 (Sat, 11 May 2013) Changed paths: M src/main/java/hudson/remoting/Channel.java M src/main/java/hudson/remoting/RemoteClassLoader.java Log Message: ----------- Track the effectiveness of prefetch in performance counters Commit: dd6e7f3aa3faa6e28668d1967e1a26892ea8d2c3 https://github.com/jenkinsci/remoting/commit/dd6e7f3aa3faa6e28668d1967e1a26892ea8d2c3 Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-05-11 (Sat, 11 May 2013) Changed paths: M src/main/java/hudson/remoting/RemoteClassLoader.java Log Message: ----------- doc improvements Commit: 5a538006d68664dd39bc56c5829f752980c8fed4 https://github.com/jenkinsci/remoting/commit/5a538006d68664dd39bc56c5829f752980c8fed4 Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-05-11 (Sat, 11 May 2013) Changed paths: M src/main/java/hudson/remoting/DumbClassLoaderBridge.java M src/main/java/hudson/remoting/RemoteClassLoader.java Log Message: ----------- Improved the prefetch caching When prefetch3("Foo") returns a bunch of referenced classes, the classloader that should memorize the prefetch isn't the initiating classloader, but the classloader that will load Foo. This is because it's the effective classloader of Foo that will resolve its referenced classes. This code fixes that problem. Commit: bff0a9040c5bbd68b9671d3413785104a5ea9401 https://github.com/jenkinsci/remoting/commit/bff0a9040c5bbd68b9671d3413785104a5ea9401 Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-05-11 (Sat, 11 May 2013) Changed paths: M src/main/java/hudson/remoting/Channel.java M src/main/java/hudson/remoting/FileSystemJarCache.java M src/main/java/hudson/remoting/RemoteClassLoader.java M src/main/java/hudson/remoting/ResourceImageDirect.java Log Message: ----------- Bug fixes - wrong performance counter was updated - serialVersionUID was missing - more logging Commit: 03d69fa0addd18512dd06a34ac6ee96f34411c34 https://github.com/jenkinsci/remoting/commit/03d69fa0addd18512dd06a34ac6ee96f34411c34 Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-05-17 (Fri, 17 May 2013) Changed paths: A src/main/java/hudson/remoting/Asynchronous.java M src/main/java/hudson/remoting/RemoteInvocationHandler.java M src/test/java/hudson/remoting/RemoteInvocationHandlerTest.java Log Message: ----------- Added an annotation to make a remote all asynchronous Commit: b693825ab9896959840a130e78dc36ed10e15ce1 https://github.com/jenkinsci/remoting/commit/b693825ab9896959840a130e78dc36ed10e15ce1 Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-05-17 (Fri, 17 May 2013) Changed paths: A src/main/java/hudson/remoting/Asynchronous.java M src/main/java/hudson/remoting/RemoteInvocationHandler.java M src/test/java/hudson/remoting/RemoteInvocationHandlerTest.java Log Message: ----------- Merge branch 'master' into prefetch-JENKINS-15120 Commit: 3a73d67578b757d480f46f4bcd17f627d8ac0575 https://github.com/jenkinsci/remoting/commit/3a73d67578b757d480f46f4bcd17f627d8ac0575 Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-05-18 (Sat, 18 May 2013) Changed paths: M TODO.txt A src/main/java/hudson/remoting/AtmostOneThreadExecutor.java M src/main/java/hudson/remoting/FileSystemJarCache.java M src/main/java/hudson/remoting/JarCache.java M src/main/java/hudson/remoting/JarCacheSupport.java M src/main/java/hudson/remoting/JarLoader.java M src/main/java/hudson/remoting/JarLoaderImpl.java M src/main/java/hudson/remoting/RemoteClassLoader.java A src/main/java/hudson/remoting/ResourceImageBoth.java M src/main/java/hudson/remoting/ResourceImageDirect.java M src/main/java/hudson/remoting/ResourceImageInJar.java M src/main/java/hudson/remoting/ResourceImageRef.java Log Message: ----------- Combine jar retrieval and class image fetching The previous iteration of the classloaing improvement favored retrieval of whole jar file over the individual class file image transfer such that a jar retrieval was necessary even if a single class is being used. This penalizes the first connection by requiring a large amount of data download even for a simple task. In this change, we restore the balance a bit by making the jar file loading a background activity. IClassLoader.fetch3() sends the image of the class file along with the jar file checksum, until the remote side confirms that it possesses the said jar file. The jar file downloading will be done using a single background thread and the queue. In this way, the activity that triggered a remote class loading can proceed without getting blocked by the jar file retrieval. Commit: a05e452ede1f0ae6ec3f39f5d6317403b19cf9d7 https://github.com/jenkinsci/remoting/commit/a05e452ede1f0ae6ec3f39f5d6317403b19cf9d7 Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-05-18 (Sat, 18 May 2013) Changed paths: M src/main/java/hudson/remoting/JarCacheSupport.java M src/test/java/hudson/remoting/ChannelRunner.java Log Message: ----------- bug gixes Commit: 36fba22729bd35c6616dcf5124fe0fe29d5e6c42 https://github.com/jenkinsci/remoting/commit/36fba22729bd35c6616dcf5124fe0fe29d5e6c42 Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-05-20 (Mon, 20 May 2013) Changed paths: M src/main/java/hudson/remoting/Channel.java M src/main/java/hudson/remoting/ResourceImageBoth.java M src/main/java/hudson/remoting/ResourceImageDirect.java M src/test/java/hudson/remoting/PrefetchingTest.java Log Message: ----------- Fixed up all the loose ends. Commit: 3f25b61b84388ac85d86df8577f13e1167aa9090 https://github.com/jenkinsci/remoting/commit/3f25b61b84388ac85d86df8577f13e1167aa9090 Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-05-20 (Mon, 20 May 2013) Changed paths: M pom.xml M src/test/java/hudson/remoting/PrefetchingTest.java Log Message: ----------- Use AntClassLoader to close all open files before we delete temporary files. Commit: 8451512c769dd3618e3cdb9bf2f442b14cd23233 https://github.com/jenkinsci/remoting/commit/8451512c769dd3618e3cdb9bf2f442b14cd23233 Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-05-20 (Mon, 20 May 2013) Changed paths: M pom.xml Log Message: ----------- Merge remote-tracking branch 'origin/prefetch-JENKINS-15120' into prefetch-JENKINS-15120 Commit: 1c3a71152dd0856892ff261e14e132a06adf16c9 https://github.com/jenkinsci/remoting/commit/1c3a71152dd0856892ff261e14e132a06adf16c9 Author: Jesse Glick <jgl...@cloudbees.com> Date: 2013-05-24 (Fri, 24 May 2013) Changed paths: M pom.xml Log Message: ----------- Merge branch 'master' into prefetch-JENKINS-15120 Commit: efd12ac99600ac382c98abb33fb7ed4d6093aee3 https://github.com/jenkinsci/remoting/commit/efd12ac99600ac382c98abb33fb7ed4d6093aee3 Author: Jesse Glick <jgl...@cloudbees.com> Date: 2013-05-24 (Fri, 24 May 2013) Changed paths: M src/main/java/hudson/remoting/Asynchronous.java M src/main/java/hudson/remoting/AtmostOneThreadExecutor.java M src/main/java/hudson/remoting/Capability.java M src/main/java/hudson/remoting/Channel.java M src/main/java/hudson/remoting/Engine.java M src/main/java/hudson/remoting/FileSystemJarCache.java M src/main/java/hudson/remoting/JarCache.java M src/main/java/hudson/remoting/JarCacheSupport.java M src/main/java/hudson/remoting/JarLoader.java M src/main/java/hudson/remoting/Launcher.java M src/main/java/hudson/remoting/RemoteClassLoader.java M src/main/java/hudson/remoting/ResourceImageBoth.java M src/main/java/hudson/remoting/Which.java M src/main/java/hudson/remoting/jnlp/Main.java Log Message: ----------- Pending @since markers. Commit: e01f23c13dc18b93df106c929ee1af3eec27313f https://github.com/jenkinsci/remoting/commit/e01f23c13dc18b93df106c929ee1af3eec27313f Author: Jesse Glick <jgl...@cloudbees.com> Date: 2013-05-24 (Fri, 24 May 2013) Changed paths: M src/main/java/hudson/remoting/Channel.java Log Message: ----------- Enable verbose logging only when requested by system property. Commit: ef2983f1717378840e042b5b01fbb995e7bb0e7b https://github.com/jenkinsci/remoting/commit/ef2983f1717378840e042b5b01fbb995e7bb0e7b Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-06-08 (Sat, 08 Jun 2013) Changed paths: A TODO.txt M pom.xml M src/main/java/hudson/remoting/Asynchronous.java A src/main/java/hudson/remoting/AtmostOneThreadExecutor.java M src/main/java/hudson/remoting/Capability.java M src/main/java/hudson/remoting/Channel.java A src/main/java/hudson/remoting/Checksum.java A src/main/java/hudson/remoting/DumbClassLoaderBridge.java M src/main/java/hudson/remoting/Engine.java A src/main/java/hudson/remoting/FileSystemJarCache.java A src/main/java/hudson/remoting/JarCache.java A src/main/java/hudson/remoting/JarCacheSupport.java A src/main/java/hudson/remoting/JarLoader.java A src/main/java/hudson/remoting/JarLoaderImpl.java M src/main/java/hudson/remoting/Launcher.java M src/main/java/hudson/remoting/RemoteClassLoader.java A src/main/java/hudson/remoting/ResourceImageBoth.java A src/main/java/hudson/remoting/ResourceImageDirect.java A src/main/java/hudson/remoting/ResourceImageInJar.java A src/main/java/hudson/remoting/ResourceImageRef.java A src/main/java/hudson/remoting/URLish.java A src/main/java/hudson/remoting/Util.java M src/main/java/hudson/remoting/Which.java M src/main/java/hudson/remoting/jnlp/Main.java M src/test/java/hudson/remoting/ChannelRunner.java M src/test/java/hudson/remoting/ClassRemotingTest.java A src/test/java/hudson/remoting/PrefetchingTest.java M src/test/java/hudson/remoting/RmiTestBase.java Log Message: ----------- Merge branch 'prefetch-JENKINS-15120' Conflicts: src/main/java/hudson/remoting/Asynchronous.java Commit: 128d74f4bcd635ef3b0e51db8762cea2820d56d9 https://github.com/jenkinsci/remoting/commit/128d74f4bcd635ef3b0e51db8762cea2820d56d9 Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-06-08 (Sat, 08 Jun 2013) Changed paths: M src/main/java/hudson/remoting/Asynchronous.java M src/main/java/hudson/remoting/AtmostOneThreadExecutor.java M src/main/java/hudson/remoting/Capability.java M src/main/java/hudson/remoting/Channel.java M src/main/java/hudson/remoting/Engine.java M src/main/java/hudson/remoting/FileSystemJarCache.java M src/main/java/hudson/remoting/JarCache.java M src/main/java/hudson/remoting/JarCacheSupport.java M src/main/java/hudson/remoting/JarLoader.java M src/main/java/hudson/remoting/Launcher.java M src/main/java/hudson/remoting/RemoteClassLoader.java M src/main/java/hudson/remoting/Which.java M src/main/java/hudson/remoting/jnlp/Main.java Log Message: ----------- this will be in 2.24 Commit: b7406e1ffe6e2ed9b64a4f7b701da980bcb990ed https://github.com/jenkinsci/remoting/commit/b7406e1ffe6e2ed9b64a4f7b701da980bcb990ed Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2013-06-08 (Sat, 08 Jun 2013) Changed paths: M pom.xml Log Message: ----------- [maven-release-plugin] prepare release remoting-2.24 Compare: https://github.com/jenkinsci/remoting/compare/73899f44d1d6...b7406e1ffe6e -- You received this message because you are subscribed to the Google Groups "Jenkins Commits" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-commits+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.