Re: pgsql: Add regression tests for CSV and \., and add

From: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
To: Andrew Dunstan <andrew(at)dunslane(dot)net>
Cc: pgsql-committers(at)postgresql(dot)org
Subject: Re: pgsql: Add regression tests for CSV and \., and add
Date: 2005-12-28 15:36:20
Message-ID: 200512281536.jBSFaK710720@candle.pha.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Andrew Dunstan wrote:
> Bruce Momjian said:
> >> Now that I've woken up properly I realise that it's also just wrong -
> >> it will miss the case we need to catch of the first column of a
> >> multi-column line beginning with \. - just treat them all the same and
> >> all will be well.
> >>
> >> Also, this test is suspicious:
> >>
> >> strcmp(string, "\\.") == 0
> >>
> >> Don't we also want to quote it if the field reads \.x ?
> >> strncmp(string, "\\.",2) == 0
> >> seems like it would be a better test.
> >
> > Have you looked at the regression tests I added? \.x will no longer be
> > interpreted as an end-of-data marker:
> >
>
> Oh. I didn't realise that part of the behaviour had changed. Does that alter
> our robustness?

It improves our robustness, for sure.

> I still think it seems odd to quote the field depending on it being the only
> field. That feels more inconsistent than quoting it whenever it is \.
>
> But I guess it's a corner case that is hardly likely to happen in real life.

That is why I did it only for the single-column case, so the quoting
would happen only when required, and it would limit confusion.

--
Bruce Momjian | http://candle.pha.pa.us
pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania 19073

In response to

Browse pgsql-committers by date

  From Date Subject
Next Message Andrew Dunstan 2005-12-28 15:45:55 Re: pgsql: Add regression tests for CSV and \., and add
Previous Message Bruce Momjian 2005-12-28 15:09:24 Re: pgsql: Add regression tests for CSV and \., and add