Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > Ruby > malloc error with String#<< / String#+

Reply
Thread Tools

malloc error with String#<< / String#+

 
 
Tj Holowaychuk
Guest
Posts: n/a
 
      02-26-2009
The repo is here if anyone wants to take a look
http://github.com/visionmedia/dm-forms/tree/master

This is the first time I have had a memory error of any kind, heres the
output message:

forms ruby(7152,0xa041efa0) malloc: *** mmap(size=1073741824) failed
(error code=12)
*** error: can't allocate region
*** set a breakpoint in malloc_error_break to debug
ruby(7152,0xa041efa0) malloc: *** mmap(size=1073741824) failed (error
code=12)
*** error: can't allocate region
*** set a breakpoint in malloc_error_break to debug
/examples/../lib/dm-forms/base.rb:21:in `<<': failed to allocate memory
(NoMemoryError)
from ./examples/../lib/dm-forms/base.rb:21:in `form'
from ./examples/../lib/dm-forms/helpers.rb:19:in `form'
from examples/benchmarks.rb:11
...


I did a ruby-prof test on that same file and got

%self total self wait child calls name
79.15 4.50 4.50 0.00 0.00 174 String#+
13.24 0.75 0.75 0.00 0.00 84 String#<<
2.23 5.41 0.13 0.00 5.29 21
DataMapper::Form::Helpers#form


Looks REALLY odd to me ... when running more than 10-ish times it seems
to cause this memory error so something is really wrong that I have
done. Any suggestions? if you run 'rake benchmark' you will (probably)
see what i mean, I have tried without benchmarking as well this still
occurs so something stupid is going on.

Thanks in advance
--
Posted via http://www.ruby-forum.com/.

 
Reply With Quote
 
 
 
 
Brian Candler
Guest
Posts: n/a
 
      02-26-2009
Ruby version? (ruby -v)
Operating system and version? (uname -a)
Source of Ruby package? (e.g. from distribution X, or compiled yourself)
--
Posted via http://www.ruby-forum.com/.

 
Reply With Quote
 
 
 
 
Tj Holowaychuk
Guest
Posts: n/a
 
      02-26-2009
Brian Candler wrote:
> Ruby version? (ruby -v)
> Operating system and version? (uname -a)
> Source of Ruby package? (e.g. from distribution X, or compiled yourself)


right sorry, heres all that:

ruby 1.8.6 (2008-03-03 patchlevel 114) [universal-darwin9.0]

Darwin Macintosh.local 9.5.0 Darwin Kernel Version 9.5.0: Wed Sep 3
11:29:43 PDT 2008; rootnu-1228.7.58~1/RELEASE_I386 i386

Its just 1.8.6 which was installed on the mac already
--
Posted via http://www.ruby-forum.com/.

 
Reply With Quote
 
Brian Candler
Guest
Posts: n/a
 
      02-26-2009
OK, I'm not a Mac expert I'm afraid.

ulimit -a

would be the first thing I'd try, to see what process memory and stack
limits have been set, if any.

*** mmap(size=1073741824) failed (error code=12)

looks like something is asking to allocate exactly 1GB of RAM, which
seems fishy to me. Maybe it's been growing this space and has now hit
1GB.

If your Ruby process really is chewing up this much RAM (monitor it
using 'top' while it runs), you'll need to find out why.

- building a data structure which is too big?

- holding onto references longer than you need?

- however there are some strange failure modes very occasionally (esp.
with threads or continuations) where a phantom object reference remains
in the stack area scanned by the GC, but is not really live. There have
been some patches posted a while back which you could try.
--
Posted via http://www.ruby-forum.com/.

 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
malloc rare error (malloc bug??) JPerelli C Programming 18 10-02-2009 11:38 PM
porting non-malloc code to malloc micromysore@gmail.com C Programming 3 02-19-2005 05:39 AM
Malloc/Free - freeing memory allocated by malloc Peter C Programming 34 10-22-2004 10:23 AM
free'ing malloc'd structure with malloc'd members John C Programming 13 08-02-2004 11:45 AM
Re: free'ing malloc'd structure with malloc'd members ravi C Programming 0 07-30-2004 12:42 PM



Advertisments