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
<snip>
(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