[Ironruby-core] running some benchmarks

Ivan Porto Carrero ivan at whiterabbitconsulting.eu
Fri Feb 12 03:14:40 EST 2010


I'll try it again for MRI.

I don't get socket errors for MRI when I try to use it to push gems etc.
On mac I get socket errors when trying to install gems. When I use that same
version on ubuntu karmic it will tell me invalid path errors (this has been
reported by somebody on codeplex). When I try to push gems on
windows/mac/linux I get the Socket error. More about this in the bottom of
this mail

I get daily digests of the workitems on codeplex but haven't added any of
those yet.. expect a flurry of bug submissions when I'm through :)

installing gems on my mac

+ivan at ivan-mbp:~
» igem install -V --backtrace --debug caricature
ERROR:  While executing gem ... (NameError)
    uninitialized constant OpenSSL::SSL::SSLSocket
:0:in `const_missing'
/usr/local/cloudslide/ironruby/lib/ruby/1.8/net/http.rb:567:in `connect'
 /usr/local/cloudslide/ironruby/lib/ruby/1.8/net/http.rb:553:in `do_start'
/usr/local/cloudslide/ironruby/lib/ruby/1.8/net/http.rb:548:in `start'
 /usr/local/cloudslide/ironruby/lib/ruby/site_ruby/1.8/rubygems/remote_fetcher.rb:246:in
`connection_for'
/usr/local/cloudslide/ironruby/lib/ruby/site_ruby/1.8/rubygems/remote_fetcher.rb:320:in
`request'
 /usr/local/cloudslide/ironruby/lib/ruby/site_ruby/1.8/rubygems/remote_fetcher.rb:279:in
`open_uri_or_path'
/usr/local/cloudslide/ironruby/lib/ruby/site_ruby/1.8/rubygems/remote_fetcher.rb:164:in
`fetch_path'
 /usr/local/cloudslide/ironruby/lib/ruby/site_ruby/1.8/rubygems/spec_fetcher.rb:219:in
`load_specs'
/usr/local/cloudslide/ironruby/lib/ruby/site_ruby/1.8/rubygems/spec_fetcher.rb:192:in
`list'
 /usr/local/cloudslide/ironruby/lib/ruby/site_ruby/1.8/rubygems/spec_fetcher.rb:188:in
`list'
:0:in `each'
 mscorlib:0:in `CallSite.Target'
/usr/local/cloudslide/ironruby/lib/ruby/site_ruby/1.8/rubygems/spec_fetcher.rb:123:in
`find_matching'
 /usr/local/cloudslide/ironruby/lib/ruby/site_ruby/1.8/rubygems/spec_fetcher.rb:69:in
`fetch'
/usr/local/cloudslide/ironruby/lib/ruby/site_ruby/1.8/rubygems/dependency_installer.rb:99:in
`find_gems_with_sources'
 /usr/local/cloudslide/ironruby/lib/ruby/site_ruby/1.8/rubygems/dependency_installer.rb:192:in
`find_spec_by_name_and_version'
/usr/local/cloudslide/ironruby/lib/ruby/site_ruby/1.8/rubygems/dependency_installer.rb:213:in
`install'
 /usr/local/cloudslide/ironruby/lib/ruby/site_ruby/1.8/rubygems/commands/install_command.rb:118:in
`execute'
/usr/local/cloudslide/ironruby/lib/ruby/site_ruby/1.8/rubygems/commands/install_command.rb:115:in
`execute'
 :0:in `each'
mscorlib:0:in `CallSite.Target'
/usr/local/cloudslide/ironruby/lib/ruby/site_ruby/1.8/rubygems/command.rb:257:in
`invoke'
 /usr/local/cloudslide/ironruby/lib/ruby/site_ruby/1.8/rubygems/command_manager.rb:132:in
`process_args'
/usr/local/cloudslide/ironruby/lib/ruby/site_ruby/1.8/rubygems/command_manager.rb:102:in
`run'
 /usr/local/cloudslide/ironruby/lib/ruby/site_ruby/1.8/rubygems/gem_runner.rb:58:in
`run'
/usr/local/cloudslide/ironruby/bin/igem:25

+ivan at ivan-mbp:~
» igem env
RubyGems Environment:
  - RUBYGEMS VERSION: 1.3.5
  - RUBY VERSION: 1.8.6 (2009-03-31 patchlevel 368) [i386-linux]
  - INSTALLATION DIRECTORY:
/usr/local/cloudslide/ironruby/lib/ironruby/gems/1.8
  - RUBY EXECUTABLE: /usr/local/cloudslide/ironruby/bin/ir.exe
  - EXECUTABLE DIRECTORY: /usr/local/cloudslide/ironruby/bin
  - RUBYGEMS PLATFORMS:
    - ruby
    - x86-mswin32-60
  - GEM PATHS:
     - /usr/local/cloudslide/ironruby/lib/ironruby/gems/1.8
     - /Users/ivan/.gem/ironruby/1.8
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :benchmark => false
     - :backtrace => false
     - :bulk_threshold => 1000
     - :sources => ["https://user:password@gems.cloudslide.net", "
http://gemcutter.org", "http://gems.rubyforge.org/", "
http://gems.github.com/", "http://gems.opscode.com/"]
     - "gemcutter_key" => "blahblah"
  - REMOTE SOURCES:
     - https://user:password@gems.cloudslide.net
     - http://gemcutter.org
     - http://gems.rubyforge.org/
     - http://gems.github.com/
     - http://gems.opscode.com/

When I remove the line that uses https:// from the sources I don't get the
socket error anymore because it doesn't need it anymore. That would also
explain why I get different errors on the ubuntu box, the one I use for
building and testing ironruby doesn't need the https:// source.

After removing that source this is the result:

» igem install -V caricature
GET 302 Found: http://gemcutter.org/latest_specs.4.8.gz
GET 304 Not Modified: http://production.s3.rubygems.org/latest_specs.4.8.gz
GET 302 Found: http://gems.rubyforge.org/latest_specs.4.8.gz
GET 304 Not Modified: http://production.s3.rubygems.org/latest_specs.4.8.gz
GET 200 OK: http://gems.github.com/latest_specs.4.8.gz
GET 304 Not Modified: http://gems.opscode.com/latest_specs.4.8.gz
Installing gem uuidtools-2.1.1
ERROR:  While executing gem ... (ArgumentError)
    Invalid path
mscorlib:0:in `GetDirectoryName'
 :0:in `mkdir'
/usr/local/cloudslide/ironruby/lib/ruby/1.8/fileutils.rb:217:in `mkdir_p'
 /usr/local/cloudslide/ironruby/lib/ruby/1.8/fileutils.rb:215:in `mkdir_p'
:0:in `reverse_each'
 mscorlib:0:in `CallSite.Target'
/usr/local/cloudslide/ironruby/lib/ruby/1.8/fileutils.rb:201:in `mkdir_p'
 :0:in `each'
mscorlib:0:in `CallSite.Target'
/usr/local/cloudslide/ironruby/lib/ruby/site_ruby/1.8/rubygems/installer.rb:125:in
`initialize'
 /usr/local/cloudslide/ironruby/lib/ruby/site_ruby/1.8/rubygems/dependency_installer.rb:239:in
`install'
/usr/local/cloudslide/ironruby/lib/ruby/site_ruby/1.8/rubygems/dependency_installer.rb:222:in
`install'
 :0:in `each'
mscorlib:0:in `CallSite.Target'
/usr/local/cloudslide/ironruby/lib/ruby/site_ruby/1.8/rubygems/commands/install_command.rb:118:in
`execute'
 /usr/local/cloudslide/ironruby/lib/ruby/site_ruby/1.8/rubygems/commands/install_command.rb:115:in
`execute'
:0:in `each'
 mscorlib:0:in `CallSite.Target'
/usr/local/cloudslide/ironruby/lib/ruby/site_ruby/1.8/rubygems/command.rb:257:in
`invoke'
 /usr/local/cloudslide/ironruby/lib/ruby/site_ruby/1.8/rubygems/command_manager.rb:132:in
`process_args'
/usr/local/cloudslide/ironruby/lib/ruby/site_ruby/1.8/rubygems/command_manager.rb:102:in
`run'
 /usr/local/cloudslide/ironruby/lib/ruby/site_ruby/1.8/rubygems/gem_runner.rb:58:in
`run'
/usr/local/cloudslide/ironruby/bin/igem:25


content of ir script (this should take care of mapping windows-isms to
unix-isms with regards to casing as well as / and \ issues)

» cat /usr/local/cloudslide/ironruby/bin/ir
#!/usr/bin/env sh

fpath=`which $0`
fdir=`dirname $fpath`
export MONO_IOMAP=all
export MONO_MANAGED_WATCHER=1
mono $fdir/ir.exe $*


---
Met vriendelijke groeten - Best regards - Salutations
Ivan Porto Carrero
Blog: http://flanders.co.nz
Twitter: http://twitter.com/casualjim
Author of IronRuby in Action (http://manning.com/carrero)



On Thu, Feb 11, 2010 at 11:43 PM, Shri Borde <Shri.Borde at microsoft.com>wrote:

>  What problem does "gem sources -a" have with %HOME%? Does MRI have the
> same problem? If %HOME% is not set, IronRuby and MRI should both use the
> same algorithm to figure out the return value of File.expand_path("~") based
> on other environment variables like %USERPROFILE%.
>
> Do you get the SocketError with MRI? You could try running "gem install"
> and "gem uninstall" in a loop with MRI to see if its an issue with the
> machine configuration itself.
>
> I do have a fix for the OpenSSL issue. It does get more active_resource
> tests working. However, I am not sure if it is sufficient to unblock your
> scenarios.
>
>  ------------------------------
> *From:* ironruby-core-bounces at rubyforge.org [
> ironruby-core-bounces at rubyforge.org] on behalf of Ivan Porto Carrero [
> ivan at whiterabbitconsulting.eu]
> *Sent:* Thursday, February 11, 2010 10:37 AM
> *To:* ironruby-core
> *Subject:* [Ironruby-core] running some benchmarks
>
>  Hi
>
>  I'm currently helping David m. Peterson by setting up 2 windows boxes
> with ironruby and running a few benchmarks and tests with it.
> For example I'm going to try running a few of the complexer rails apps and
> see how it holds up, i'm thinking about spree and redmine atm.
> We'll also run the ruby shootout suite, if you have more suggestions
> they're welcome.
>
>  The machines are hosted on EC2.
>
>  However using gem sources -a proves to be a little difficult if you don't
> have the %HOME% environment variable set.
> on the both machines I could set %HOME%=%USERPROFILE% in the environment
> variables to remedy this, but I feel like this is something that should be
> handled by the installer or by the ironruby gem library.
>
>  I couldn't use the installer in windows 2003 R2 SP2 telling me I needed a
> higher service pack for my windows, but there is no higher one when I wanted
> to get that one.
>
>  I also ran into issues installing a bunch of gems at once. Below the
> rails gem is the one causing trouble. The problems for the rails gem go away
> after I installed the gemcutter gem (?), but then it fails on the
> rspec-rails gem with the same error. If I then remove rails from the list of
> gems to install everything installs fine.
>
>  D:\Console2>ir -S gem install caricature rails rspec-rails shoulda
> test-unit ZenTest ironruby-sqlite3 ironruby-sqlserver
> Successfully installed uuidtools-2.1.1
> Successfully installed caricature-0.7.6
> ERROR:  While executing gem ... (Gem::RemoteFetcher::FetchError)
>     SocketError: An established connection was aborted by the software in
> your host machine (http://gemcutter.org/gems/rake-0.8.7.gem)
>
>  D:\Console2>ir -S gem install rails rspec-rails shoulda test-unit ZenTest
> ironruby-sqlite3 ironruby-sqlserver
> ERROR:  While executing gem ... (Gem::RemoteFetcher::FetchError)
>     SocketError: An established connection was aborted by the software in
> your host machine (http://gemcutter.org/gems/rack-1.0.1.gem)
>
>  D:\Console2>ir -S gem env
> RubyGems Environment:
>   - RUBYGEMS VERSION: 1.3.5
>   - RUBY VERSION: 1.8.6 (2009-03-31 patchlevel 368) [i386-mswin32]
>   - INSTALLATION DIRECTORY: D:/ironruby/lib/ironruby/gems/1.8
>   - RUBY EXECUTABLE: D:/ironruby/bin/ir.exe
>   - EXECUTABLE DIRECTORY: D:/ironruby/bin
>   - RUBYGEMS PLATFORMS:
>     - ruby
>     - x86-mswin32-60
>   - GEM PATHS:
>      - D:/ironruby/lib/ironruby/gems/1.8
>      - C:/Users/casualjim/.gem/ironruby/1.8
>   - GEM CONFIGURATION:
>      - :update_sources => true
>      - :verbose => true
>      - :benchmark => false
>      - :backtrace => false
>      - :bulk_threshold => 1000
>      - :sources => ["http://gemcutter.org"]
>   - REMOTE SOURCES:
>      - http://gemcutter.org
>
>
>  Additionally on windows 2003 ironruby can't find gem.bat and I did set
> the necessary environment variables. PATH, HOME. install
>
>  D:\Console2>ir -S gem install caricature rails rspec-rails shoulda
> test-unit ZenTest ironruby-sqlite3 ironruby-sqlserver
> unknown: Could not find file 'D:\Console2\gem'. (Errno::ENOENT)
>
>
>  D:\Console2>ir -v
> IronRuby 0.9.4.0 on .NET 2.0.50727.3603
> Copyright (c) Microsoft Corporation. All rights reserved.
>
>  >>> exit
>
>
>  Apart from the issues above, I'm unable to push gems to gemcutter with
> ironruby it fails with an OpenSSL error. The same error I get on my mac when
> I want to install gems with ironruby.
>
>  I'll keep you updated as I make more progress and/or come across more
> issues.
> ---
> Met vriendelijke groeten - Best regards - Salutations
> Ivan Porto Carrero
> Blog: http://flanders.co.nz
> Twitter: http://twitter.com/casualjim
> Author of IronRuby in Action (http://manning.com/carrero)
>
>
> _______________________________________________
> Ironruby-core mailing list
> Ironruby-core at rubyforge.org
> http://rubyforge.org/mailman/listinfo/ironruby-core
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://rubyforge.org/pipermail/ironruby-core/attachments/20100212/de3cbb2c/attachment-0001.html>


More information about the Ironruby-core mailing list