Re: Ltree syntax improvement

Dmitry Belyavsky <beldmit@gmail.com>

From: Dmitry Belyavsky <beldmit@gmail.com>
To: Thomas Munro <thomas.munro@gmail.com>
Cc: Alvaro Herrera <alvherre@2ndquadrant.com>, Nikolay Shaplov <dhyan@nataraj.su>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2019-07-11T17:49:41Z
Lists: pgsql-hackers

Attachments

Dear Thomas,

On Thu, Jul 11, 2019 at 11:20 AM Thomas Munro <thomas.munro@gmail.com>
wrote:

> On Wed, Jul 10, 2019 at 7:40 AM Dmitry Belyavsky <beldmit@gmail.com>
> wrote:
> > [ltree_20190709.diff]
>
> Hi Dmitry,
>
> You need to update contrib/ltree_plpython/expected/ltree_plpython.out,
> otherwise check-world fails when built with Python support.  The good
> news is that it looks like it fails because you fixed something!
> (Though I didn't check the details).
>
>  CREATE FUNCTION test2() RETURNS ltree
>  LANGUAGE plpythonu
>  TRANSFORM FOR TYPE ltree
>  AS $$
>  return ['foo', 'bar', 'baz']
>  $$;
>  -- plpython to ltree is not yet implemented, so this will fail,
>  -- because it will try to parse the Python list as an ltree input
>  -- string.
>  SELECT test2();
> -ERROR:  syntax error at position 0
> -CONTEXT:  while creating return value
> -PL/Python function "test2"
> +          test2
> +-------------------------
> + "['foo', 'bar', 'baz']"
> +(1 row)
> +
>
>
See attached. I'm not familiar enough with python so I just removed the
failing tests.
If the main patch is accepted, the ltree_python extension should be
redesigned, I think...

-- 
SY, Dmitry Belyavsky

Commits

  1. Clean up parsing of ltree and lquery some more.