[MacRuby] #1175: Datamapper causing macruby to segfault.

MacRuby ruby-noreply at macosforge.org
Mon Feb 28 23:49:58 PST 2011


#1175: Datamapper causing macruby to segfault.
------------------------------+---------------------------------------------
 Reporter:  jhamor@…          |       Owner:  lsansonetti@…        
     Type:  defect            |      Status:  new                  
 Priority:  blocker           |   Milestone:                       
Component:  MacRuby           |    Keywords:                       
------------------------------+---------------------------------------------
 When trying to use datamapper, i'm seeing segfaults for at least the
 sqlite & rest adapters. These are happening around seemingly basic
 functionality. Snippets below:

 {{{
 $macirb
 irb(main):001:0> require 'rubygems'
 => true
 irb(main):002:0> require 'stringio'
 => true
 irb(main):003:0> require 'dm-core'
 => true
 irb(main):004:0> DataMapper::Logger.new($stdout, :debug)
 => #<DataMapper::Logger:0x20094f600 @init_args=[#<IO:<STDOUT>>, :debug]
 @level=0 @buffer=[] @delimiter=" ~ " @auto_flush=true @log=#<IO:<STDOUT>>>
 irb(main):005:0> DataMapper.setup(:default, 'sqlite::memory:')
 => #<DataMapper::Adapters::SqliteAdapter:0x2009586c0 @name=:default
 @options={"scheme"=>"sqlite", "user"=>nil, "password"=>nil, "host"=>nil,
 "port"=>nil, "path"=>":memory:", "query"=>nil, "fragment"=>nil,
 "adapter"=>"sqlite3", "database"=>""}
 @resource_naming_convention=DataMapper::NamingConventions::Resource::UnderscoredAndPluralized
 @field_naming_convention=DataMapper::NamingConventions::Field::Underscored
 @normalized_uri=#<struct DataObjects::URI scheme="sqlite3", user=nil,
 password=nil, host=nil, port=nil, path=":memory:", query=nil,
 fragment=nil>>
 irb(main):006:0> class Users
 irb(main):007:1>     include DataMapper::Resource
 irb(main):008:1>
 irb(main):009:1>     property :login, String, :key => true
 irb(main):010:1>     property :id,    Integer
 irb(main):011:1>     property :gecos, String
 irb(main):012:1>     property :shell, String
 irb(main):013:0> end
 => #<DataMapper::Property::String @model=Users @name=:shell>
 irb(main):014:0> Users
 => Users
 irb(main):015:0> Users.new
 Segmentation fault
 $ macruby -v
 MacRuby 0.9 (ruby 1.9.2) [universal-darwin10.0, x86_64]
 $

 }}}

 To demonstrate this in standard ruby:

 {{{


 $ irb
 >> require 'rubygems'
 => false
 >> require 'stringio'
 => true
 >> require 'dm-core'
 => true
 >> DataMapper::Logger.new($stdout, :debug)
 => #<DataMapper::Logger:0x1011fa2c8 @buffer=[], @log=#<IO:0x100177ba8>,
 @level=0, @auto_flush=true, @delimiter=" ~ ",
 @init_args=[#<IO:0x100177ba8>, :debug]>
 >> DataMapper.setup(:default, 'sqlite::memory:')
 => #<DataMapper::Adapters::SqliteAdapter:0x10110f8b8 @name=:default,
 @options={"port"=>nil, "adapter"=>"sqlite3", "fragment"=>nil,
 "scheme"=>"sqlite", "path"=>":memory:", "database"=>"", "host"=>nil,
 "user"=>nil, "password"=>nil, "query"=>nil},
 @resource_naming_convention=DataMapper::NamingConventions::Resource::UnderscoredAndPluralized,
 @field_naming_convention=DataMapper::NamingConventions::Field::Underscored,
 @normalized_uri=#<struct DataObjects::URI scheme="sqlite3", user=nil,
 password=nil, host=nil, port=nil, path=":memory:", query=nil,
 fragment=nil>>
 >> class Users
 >>   include DataMapper::Resource
 >>
 ?>   property :login, String, :key => true
 >>   property :id,    Integer
 >>   property :gecos, String
 >>   property :shell, String
 >> end
 => #<DataMapper::Property::String @model=Users @name=:shell>
 >> Users
 => Users
 >> Users.new
 => #<Users @login=nil @id=nil @gecos=nil @shell=nil>

 }}}

-- 
Ticket URL: <http://www.macruby.org/trac/ticket/1175>
MacRuby <http://macruby.org/>



More information about the macruby-tickets mailing list