From: Pavel Raiskup <praiskup@redhat.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Robert Haas <robertmhaas@gmail.com>
Cc: pgsql-hackers@postgresql.org <pgsql-hackers@postgresql.org>
Cc: Devrim GÜNDÜZ <devrim@gunduz.org>
Subject: Re: plruby: rb_iterate symbol clash with libruby.so
Date: Wed, 07 Nov 2018 16:27:46 +0100
Message-ID: <1930142.Hb3bbeJPGd@nb.usersys.redhat.com> (raw)
In-Reply-To: <25954.1541600731@sss.pgh.pa.us>
References: <4738198.8KVIIDhgEB@nb.usersys.redhat.com>
<5127122.UsUPqPCgps@nb.usersys.redhat.com>
<25954.1541600731@sss.pgh.pa.us>
On Wednesday, November 7, 2018 3:25:31 PM CET Tom Lane wrote:
> Pavel Raiskup <praiskup@redhat.com> writes:
> > On Tuesday, November 6, 2018 7:28:21 PM CET Tom Lane wrote:
> >> Done. I realized that the immediate problem, rb_iterate(), was only
> >> added as of PG v10, which may explain why we hadn't heard complaints
> >> about this till now. So I've made the change only as far back as v10.
>
> > The 'rb_iterate' seems to exist at least in REL9_2_STABLE branch, so it is
> > probably much older.
>
> Oh! Hmm ... I think I jumped to conclusions when the part of my patch
> that touched struct RBTreeIterator failed to apply. But you're right,
> rb_iterate has been there since 9.0 now that I look more carefully.
> So we really ought to back-patch further. However:
>
> > That
> > said, I'm still not sure how this could work before ... Maybe it has not
> > been working for some time.
>
> Yeah, I'm now mighty confused about this as well. PL/Ruby is pretty old
> too, so how come nobody noticed this before? Is its rb_iterate call in
> someplace that hardly gets any use?
I can not authoritatively answer this (getting familiar with the code) but
many of the rb_iterate() calls were replaced with alternative API (if
available), so you might be right.
That said, I reproduced this by trigger function from tests/plt test-case
on the first try, more info and related fixes in [1]. But it is truth
that we haven't run the test-suite for RPM builds so far.
Might the reason be that nobody used plruby at all for a very long time?
[1] https://github.com/devrimgunduz/postgresql-plruby/pull/3
Pavel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-hackers@postgresql.org
Cc: praiskup@redhat.com, tgl@sss.pgh.pa.us, robertmhaas@gmail.com, devrim@gunduz.org
Subject: Re: plruby: rb_iterate symbol clash with libruby.so
In-Reply-To: <1930142.Hb3bbeJPGd@nb.usersys.redhat.com>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox