From: | Pavel Raiskup <praiskup(at)redhat(dot)com> |
---|---|
To: | Robert Haas <robertmhaas(at)gmail(dot)com> |
Cc: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org>, Devrim GÜNDÜZ <devrim(at)gunduz(dot)org> |
Subject: | Re: plruby: rb_iterate symbol clash with libruby.so |
Date: | 2018-11-06 12:43:03 |
Message-ID: | 1772202.Bn4MKCBuZf@nb.usersys.redhat.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Monday, November 5, 2018 9:06:41 PM CET Robert Haas wrote:
> On Sat, Nov 3, 2018 at 2:20 PM Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
> > > Is it realistic we could rename red-black tree methods from 'rb_*' to e.g.
> > > 'rbt_*' to avoid this clash?
> >
> > That's not terribly appetizing, because it essentially means we're giving
> > Ruby (and potentially every other library on the planet) veto power over
> > our function namespace. That does not scale, especially not when the
> > feedback loop has a time constant measured in years :-(
> >
> > I don't have a huge objection to renaming the rbtree functions, other
> > than the precedent it sets ...
>
> Maybe prefixing with pg_ would better than rb_ to rbt_. That's our
> semi-standard namespace prefix, I think. Of course nothing keeps
> somebody else from using it, too, but we can hope that they won't.
> It's certainly not very surprising that Ruby has symbols starting with
> rb_...
I now realized that there's rb_block_call() alternative for rb_iterate()
Ruby call -- which fortunately doesn't collide with PostgreSQL internals.
It means that for sufficiently new Ruby there exists some solution (not
that something similar can not re-appear elsewhere).
Pavel
From | Date | Subject | |
---|---|---|---|
Next Message | Alvaro Herrera | 2018-11-06 12:53:37 | Re: ON COMMIT actions and inheritance |
Previous Message | Peter Eisentraut | 2018-11-06 12:31:49 | Re: [HACKERS] generated columns |