Re: Invalid YAML output from EXPLAIN

From: Dean Rasheed <dean(dot)a(dot)rasheed(at)gmail(dot)com>
To: Robert Haas <robertmhaas(at)gmail(dot)com>
Cc: pgsql-bugs(at)postgresql(dot)org
Subject: Re: Invalid YAML output from EXPLAIN
Date: 2010-06-09 11:43:42
Message-ID: AANLkTimdKzAyKvxOPslakWCAIuidGs4oGokoJBFjhbhW@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs pgsql-hackers

On 9 June 2010 12:32, Robert Haas <robertmhaas(at)gmail(dot)com> wrote:
> On Wed, Jun 9, 2010 at 7:23 AM, Dean Rasheed <dean(dot)a(dot)rasheed(at)gmail(dot)com> wrote:
>> On 9 June 2010 12:07, Robert Haas <robertmhaas(at)gmail(dot)com> wrote:
>>> On Wed, Jun 9, 2010 at 2:58 AM, Dean Rasheed <dean(dot)a(dot)rasheed(at)gmail(dot)com> wrote:
>>>> On 9 June 2010 03:48, Robert Haas <robertmhaas(at)gmail(dot)com> wrote:
>>>>> Er, I should also say, thanks for the report, and please test.  I am
>>>>> definitely not an expert on YAML.
>>>>>
>>>>
>>>> I'm not an expert on YAML either, but I don't think this works (at
>>>> least it breaks against the online YAML parser here:
>>>> http://yaml-online-parser.appspot.com/). If the string starts with a
>>>> ".", then it tries to treat it as a floating point number and baulks
>>>> if the rest of the string isn't a valid number.
>>>
>>> Really?  I enter:
>>>
>>> - foo
>>> - bar
>>> - .baz
>>>
>>> And it produces this JSON:
>>>
>>> [
>>>  "foo",
>>>  "bar",
>>>  ".baz"
>>> ]
>>>
>>> That looks OK to me.
>>>
>>
>> Ah, OK I didn't test those cases properly before composing my email.
>> It's actually only a "." on its own that it can't parse.
>
> Well, at first blush, that looks like it might be a bug in the parser.
>  I don't see anything in the spec to indicate that that case should be
> treated specially.
>

Yeah, I think it *is* valid, and JYaml parses it OK.
Some people will no doubt say "if your parser can't handle it, get a
better parser", but I'd rather not make it more difficult than it
needs to be.

>> My comment about numbers still applies though. The following are
>> different values:
>>
>> - just: write some
>> - yaml:
>>  - 123
>>  - "123"
>
> Well, you can't have abc mean the same thing as "abc" but then
> complain that 123 isn't equivalent to "123"...
>

Yeah. I know that JYaml parses 123 to a java.lang.Integer, and "123"
to a java.lang.String.

> This format is really a pain to work with.
>

Agreed :-(

- Dean

In response to

Browse pgsql-bugs by date

  From Date Subject
Next Message Dean Rasheed 2010-06-09 12:46:09 Re: Invalid YAML output from EXPLAIN
Previous Message Robert Haas 2010-06-09 11:32:29 Re: Invalid YAML output from EXPLAIN

Browse pgsql-hackers by date

  From Date Subject
Next Message Kevin Grittner 2010-06-09 12:04:09 Re: walwriter not closing old files
Previous Message Pierre C 2010-06-09 11:35:42 Re: Large (almost 50%!) performance drop after upgrading to 8.4.4?