[prev in list] [next in list] [prev in thread] [next in thread] 

List:       pgsql-bugs
Subject:    Re: [BUGS] BUG #14826: Malformed array dimensions for empty arrays in return column "lexemes" of ts_
From:       Tom Lane <tgl () sss ! pgh ! pa ! us>
Date:       2017-09-23 16:26:08
Message-ID: 26928.1506183968 () sss ! pgh ! pa ! us
[Download RAW message or body]

brsaweda@gmail.com writes:
> test=# SELECT token, lexemes, lexemes = '{}'::text[]
> test-# FROM   ts_debug('a title');
>  token | lexemes | ?column?
> -------+---------+----------
>  a     | {}      | f
>        |         |
>  title | {titl}  | f

> The root of the problem seems to be malformed array dimensions.
> array_dims(lexemes) returns [1:0], while I would expect NULL:

Yeah, that's a bug --- looks like ts_lexize is the root problem.

I'm a bit tempted to fix this centrally by having construct_array()
do something different for zero-dimensioned input, rather than
putting a special case into ts_lexize().  We've been bitten by
this type of insect a few times too many.  The question is
whether there's any code that relies on being able to construct
such malformed arrays ...

			regards, tom lane


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

Configure | About | News | Add a list | Sponsored by KoreLogic