From: Jeremy Henty Date: 2005-10-05T05:06:47+09:00 Subject: PL/Ruby segfaults I have installed plruby, but it segfaults on the simplest example. I'd really appreciate any help debugging this. Details follow. Thanks in advance, Jeremy Henty ---- Using Linux 2.4.31 , Ruby 1.8.3 , Postgres 8.0.3, plruby-0.4.5 . --- begin db_create.sql create database test; \c test create function plruby_call_handler() returns language_handler as '/usr/lib/ruby/site_ruby/1.8/i586-linux/plruby.so' language 'C'; create trusted language 'plruby' handler plruby_call_handler lancompiler 'PL/Ruby'; --- end db_create.sql -bash-2.05b# su - postgres -su-2.05b$ cd /tmp/PL_Ruby/ -su-2.05b$ psql -f db_create.sql template1 CREATE DATABASE You are now connected to database "test". CREATE FUNCTION CREATE LANGUAGE --- begin schema_create.sql create function test_update() returns trigger as ' PL::OK ' language 'plruby'; create table test ( foo text ); create trigger test_update_trigger after insert or update or delete on test execute procedure test_update(); insert into test ( foo ) values (''); --- end schema_create.sql -bash-2.05b$ psql -f schema_create.sql -d test CREATE FUNCTION CREATE TABLE CREATE TRIGGER psql:schema_create.sql:16: server closed the connection unexpectedly This probably means the server terminated abnormally before or while processing the request. psql:schema_create.sql:16: connection to server was lost -bash-2.05b# tail -20 /var/pgsql/data/log (eval):4: [BUG] Segmentation fault ruby 1.8.3 (2005-09-21) [i586-linux] LOG: server process (PID 18749) was terminated by signal 6 LOG: terminating any other active server processes LOG: all server processes terminated; reinitializing LOG: database system was interrupted at 2005-10-04 20:57:59 BST LOG: checkpoint record is at 0/228AF00 LOG: redo record is at 0/228AF00; undo record is at 0/0; shutdown FALSE LOG: next transaction ID: 9889; next OID: 99292 LOG: database system was not properly shut down; automatic recovery in progress LOG: redo starts at 0/228AF3C LOG: record with zero length at 0/22C82D0 LOG: redo done at 0/22C82A8 LOG: database system is ready