Apparently it is sufficient to upgrade packages libruby1.8,  ruby1.8 and 
ruby1.8-dev to encounter the bug.

It is possible that bug is actually caused only when you use libxml-ruby1.8.
Maybe it is worth mentioning that original script used libxml, but didn't fail 
while using libxml (line in script).

Here is script that reproduces the bug:

#!/usr/bin/env ruby

require 'xml/libxml'

i = 0;
while true
        doc = XML::Document.new;
        doc.root = XML::Node.new('gc-bug');
        i += 1;
        puts "***************** #{i} *********" if i%100 == 0;
end


And output on my computer:
$ ./gcbug.rb
***************** 100 *********
***************** 200 *********
***************** 300 *********
***************** 400 *********
***************** 500 *********
***************** 600 *********
***************** 700 *********
***************** 800 *********
***************** 900 *********
***************** 1000 *********
***************** 1100 *********
***************** 1200 *********
./gcbug.rb:8: [BUG] object allocation during garbage collection phase
ruby 1.8.7 (2008-05-31 patchlevel 0) [x86_64-linux]

Aborted

Attachment: gcbug.rb
Description: application/ruby

Reply via email to