Thread: [BUGS] Fixed PL/Python hint about array of composites

[BUGS] Fixed PL/Python hint about array of composites

From
Daniele Varrazzo
Date:
The error message hint suggests [('foo')]. ('foo') is not a valid
Python tuple: it's a literal with redundant parentheses. ('foo',) is a
valid tuple.

Patch to correct the hints and an occurrence in the test suite attached.

-- Daniele

-- 
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs

Attachment

Re: [BUGS] Fixed PL/Python hint about array of composites

From
Daniele Varrazzo
Date:
Just noticed that the sentence is also missing the final full stop.
New patch attached.

On Mon, May 29, 2017 at 5:38 PM, Daniele Varrazzo
<daniele.varrazzo@gmail.com> wrote:
> The error message hint suggests [('foo')]. ('foo') is not a valid
> Python tuple: it's a literal with redundant parentheses. ('foo',) is a
> valid tuple.
>
> Patch to correct the hints and an occurrence in the test suite attached.
>
> -- Daniele

-- 
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs

Attachment

Re: [BUGS] Fixed PL/Python hint about array of composites

From
Heikki Linnakangas
Date:
On 05/29/2017 07:43 PM, Daniele Varrazzo wrote:
> On Mon, May 29, 2017 at 5:38 PM, Daniele Varrazzo
> <daniele.varrazzo@gmail.com> wrote:
>> The error message hint suggests [('foo')]. ('foo') is not a valid
>> Python tuple: it's a literal with redundant parentheses. ('foo',) is a
>> valid tuple.
>>
>> Patch to correct the hints and an occurrence in the test suite attached.

> -HINT:  To return a composite type in an array, return the composite type as a Python tuple, e.g. "[('foo')]"
> +HINT:  To return a composite type in an array, return the composite type as a Python tuple, e.g. "[('foo',)]".

Huh, that looks weird. Perhaps we should use an example with two-element 
tuple in the example, to avoid the awkward trailing comma?

Then again, it's a useful to have it in the example, exactly because 
it's not obvious what you need to do with a 1-element tuple. Or maybe 
use "[('foo', 'bar',)]" in the example?

Maybe this is well known to all Python programmers, and I'm worrying 
about nothing.. I'm not too familiar with Python.

- Heikki



-- 
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs

Re: [BUGS] Fixed PL/Python hint about array of composites

From
Peter Eisentraut
Date:
On 5/29/17 12:43, Daniele Varrazzo wrote:
> Just noticed that the sentence is also missing the final full stop.
> New patch attached.

committed

> On Mon, May 29, 2017 at 5:38 PM, Daniele Varrazzo
> <daniele.varrazzo@gmail.com> wrote:
>> The error message hint suggests [('foo')]. ('foo') is not a valid
>> Python tuple: it's a literal with redundant parentheses. ('foo',) is a
>> valid tuple.
>>
>> Patch to correct the hints and an occurrence in the test suite attached.

-- 
Peter Eisentraut              http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services


-- 
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs