The error is this: Successfully built RubyGem Name: sources Version: 0.0.1 File: sources-0.0.1.gem hook C:/opt/rubygems-0.8.11/./post-install.rb failed: java.io.EOFException: Unexpected end of ZLIB input stream Try 'ruby setup.rb --help' for detailed usage.
I do not have a stack trace yet...but the error may yield some clues by itself. -Tom On Fri, 16 Jun 2006, Ola Bini defenestrated me: > Hi, > > I've attached the NIO patch and everything still seems to work. Maybe I > should try with your critical-patch too? > > /O > > At 16:58 2006-06-16, you wrote: > >It certainly could be in my environment, or it could be my nio patch was > >not correctly removed when I tested again. Maybe you could try applying > >the NIO patch and see what happens? > > > >On 6/16/06, Ola Bini <<mailto:[EMAIL PROTECTED]>[EMAIL PROTECTED]> wrote: > >Now this is strange. It works flowlessly (and REALLY fast) for me. > >I'm wondering what's different in my source tree... > >Now, what's different in my source code tree from HEAD, right now? If I > >remove all my testing files and stuff like that, that CANNOT influence, I > >get this: > > > >? lib/plaincharset.jar > >? src/builtin/zlib.rb > >? src/org/jruby/RubySignal.java > >? src/org/jruby/RubyStringIO.java > >? src/org/jruby/RubyZlib.java > >? src/org/jruby/libraries/StringIOLibrary.java > >? src/org/jruby/libraries/ZlibLibrary.java > >? src/org/jruby/util/DummySignalHandler.java > >? src/org/jruby/util/ISignal.java > >? src/org/jruby/util/SunSignalHandler.java > >M bin/jruby.bat > >M src/builtin/etc.rb > >M src/builtin/java/collections.rb > >M src/org/jruby/IRuby.java > >M src/org/jruby/Ruby.java > >M src/org/jruby/RubyKernel.java > >M src/org/jruby/util/IOInputStream.java > >M src/org/jruby/util/IOOutputStream.java > >M test/testStringIO.rb > >M test/testZlib.rb > > > >where most of the changed files are for StringIO and Signal. > > > >/O > > > >At 09:54 2006-06-16, you wrote: > > >Ah, ouch. I'll take a look at it later. I saw it when I created the > > >original Zlib too. It's probably something small, though. > > > > > >/O > > > > > >At 09:36 2006-06-16, you wrote: > > > >Also FYI, with or without my NIO fix, I'm getting the following error > > > >while installing RubyGems: > > > > > > > > Successfully built RubyGem > > > > Name: sources > > > > Version: 0.0.1 > > > > File: sources-0.0.1.gem > > > >hook /home/headius/rubygems- 0.8.11/./post-install.rb failed: > > > >java.io.EOFException: Unexpected end of ZLIB input stream > > > > > > > >Perhaps something small? > > > > > > > >On 6/16/06, Charles O Nutter > > > ><<mailto:[EMAIL PROTECTED]><mailto:[EMAIL PROTECTED]> > > [EMAIL PROTECTED]> wrote: > > > >FYI, I went ahead and committed the plaincharset.jar file, since the > > > >patch > > > >seems to have mangled it. > > > > > > > > > > > >On 6/16/06, Charles O Nutter < > > > ><mailto:[EMAIL PROTECTED]><mailto:[EMAIL PROTECTED]>[EMAIL PROTECTED] > > .com> wrote: > > > >So we all know our friend Ola has contributed some great pieces of work > > > >over the past several months. As another JRubyist put it, "Ola is a f'n > > > >machine". StringIO, YAML, and Zlib are now mostly Java and far, far > > > >faster > > > >than they were. These contributions have made RubyGems far, far faster. > > > > From the original install time on this Opteron 2.6G of almost an hour > > > >(sans rdoc, mind you), we get this: > > > > > > > >real 5m35.341s > > > >user 0m36.379s > > > >sys 0m5.195s > > > > > > > >Impressive, by any measure. Ok, so I don't remember whether it was > > > >exactly > > > >an hour to install before, but it was bloody long enough to hit the > > > >drive-in for lunch. Grotesquely slow. Ola's changes alone dropped that > > > >time down to comparatively nothing. I went through the pains this evening > > > >of applying all his patches, cleaning up conflicts between them (since I > > > >didn't have a complete picture), and tidying up a few minor things. > > Then I > > > >ran a full Rails install. The time was impressive, no doubt about it. > > > >However, something really, really bothered me. In the time between gem > > > >download and gem install, the machine was sitting there, doing *nothing*. > > > >No network traffic, 0% CPU utilization. Zippo. > > > > > > > >Then it hit me. > > > > > > > >You've all heard the story about the timeout library. net/http calls > > > >net/protocol which reads in 1024-byte chunks from the stream with a > > > >timeout thread for each one. I cried about this on my blog too, since it > > > >seemed to be the source of a terrible performance problem. It turns out > > > >that once again, Java has already optimized our troubles away, in this > > > >case the cost of spinning up hundreds of threads. > > > > > > > >Our NIO-based IO handler had a tiny flaw when it came to Socket IO: it > > > >was > > > >blocking. That meant that for the last read from the stream, the last few > > > >bytes of a gem file, it would sit and wait to fill up net/protocol's > > > >1024-byte buffer. I am no NIO expert, but channels appear to behave > > > >somewhat differently when doing File versus Socket IO. At the end of a > > > >File, the stream is empty and read(ByteBuffer) will immediately return > > > >-1. > > > >With a Socket, however, if there are not enough bytes to fill the buffer > > > >and the socket is still open, it will block. Such is the case here. The > > > >HTTP get of a gem seems to leave the channel open. I'm not sure if this > > > >is > > > >intentional in RubyGems (for retrieving multiple gems) or a bug > > > >(potentially in JRuby) but leaving the Socket in blocking mode > > resulted in > > > >that last chunk of bytes waiting until timeout kicked in. > > > > > > > >My fix (in the form of a patch to IOHandlerNIO) may or may not be > > > >correct; > > > >like I said, I'm no NIO expert. However, it seems to work well enough: > > > > > > > >Attempting local installation of 'rails' > > > >Local gem file not found: rails*.gem > > > >Attempting remote installation of 'rails' > > > >Updating Gem source index for: > > > >< > > <http://gems.rubyforge.org>http://gems.rubyforge.org>http://gems.rubyforge.org > > > >Successfully installed rails-1.1.2 > > > >Successfully installed rake-0.7.1 > > > >Successfully installed activesupport-1.3.1 > > > >Successfully installed activerecord-1.14.2 > > > >Successfully installed actionpack-1.12.1 > > > >Successfully installed actionmailer-1.2.1 > > > >Successfully installed actionwebservice-1.1.2 > > > > > > > >real 1m3.751s > > > >user 0m53.817s > > > >sys 0m5.722s > > > > > > > >For sake of comparison, Ruby installs Rails and its dependencies in about > > > >25 seconds on my system. It's probably safe to say that we're only 2x > > > >slower for non-rdoc gem installations, which seems pretty good to me. > > > > > > > >The NIO patch alone is attached, as is a complete patch with everything > > > >changed on my system, including: > > > > > > > >- All Ola's stuff (stringio, zlib, and signal) > > > >- My unrelated simplifications to Thread.critical= (not as deterministic > > > >as before but less likely or unlikely to deadlock...needs a bit more > > > testing) > > > >- My NIO fix > > > > > > > >It will be nice to say that not only have we gotten RubyGems working, but > > > >it's been sped up by perhaps an order of magnitude since we first > > started. > > > > > > > >-- > > > >Charles Oliver Nutter @ > > <<http://headius.blogspot.com>http://headius.blogspot.com><http://headius.blogspot.com>headius.blogspot.com > > > >JRuby Developer @ < > > <http://jruby.sourceforge.net>http://jruby.sourceforge.net><http://jruby.sourceforge.net>jruby.sourceforge.net > > > >Application Architect @ > > <<http://www.ventera.com>http://www.ventera.com >www.ventera.com > > > > > > > > > > > > > > > > > > > >-- > > > >Charles Oliver Nutter @ > > <<http://headius.blogspot.com>http://headius.blogspot.com ><http://headius > > .blogspot.com>headius.blogspot.com > > > >JRuby Developer @ > > <<http://jruby.sourceforge.net>http://jruby.sourceforge.net><http://jruby.sourceforge.net>jruby.sourceforge.net > > > > > > > >Application Architect @ > > <<http://www.ventera.com>http://www.ventera.com>www.ventera.com > > > > > > > > > > > > > > > > > > > >-- > > > >Charles Oliver Nutter @ > > <<http://headius.blogspot.com>http://headius.blogspot.com><http://headius.blogspot.com>headius.blogspot.com > > > >JRuby Developer @ < http://jruby.sourceforge.net>jruby.sourceforge.net > > > >Application Architect @ > > <<http://www.ventera.com>http://www.ventera.com> www.ventera.com > > > >_______________________________________________ > > > >Jruby-devel mailing list > > > ><mailto:Jruby-devel@lists.sourceforge.net>[EMAIL PROTECTED] > > .net > > > >https://lists.sourceforge.net/lists/listinfo/jruby-devel > > > > > > > > > > > > > > > > > >_______________________________________________ > > >Jruby-devel mailing list > > ><mailto:Jruby-devel@lists.sourceforge.net>Jruby-devel@lists.sourceforge.net > > >https://lists.sourceforge.net/lists/listinfo/jruby-devel > > > > > > > > > > > > > >-- > >Charles Oliver Nutter @ <http://headius.blogspot.com>headius.blogspot.com > >JRuby Developer @ <http://jruby.sourceforge.net>jruby.sourceforge.net > >Application Architect @ <http://www.ventera.com>www.ventera.com > >_______________________________________________ > >Jruby-devel mailing list > >Jruby-devel@lists.sourceforge.net > >https://lists.sourceforge.net/lists/listinfo/jruby-devel > > > > > > _______________________________________________ > Jruby-devel mailing list > Jruby-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/jruby-devel -- + http://www.tc.umn.edu/~enebo +---- mailto:[EMAIL PROTECTED] ----+ | Thomas E Enebo, Protagonist | "Luck favors the prepared | | | mind." -Louis Pasteur | _______________________________________________ Jruby-devel mailing list Jruby-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jruby-devel