Re: Allowing line-continuation in pgbench custom scripts

Поиск
Список
Период
Сортировка
От Christoph Berg
Тема Re: Allowing line-continuation in pgbench custom scripts
Дата
Msg-id 20140526212907.GA24735@msgid.df7cb.de
обсуждение исходный текст
Ответ на Re: Allowing line-continuation in pgbench custom scripts  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-hackers
Re: Tom Lane 2014-05-26 <26629.1401119523@sss.pgh.pa.us>
> >> Yeah, that would be much cleaner.
> 
> > But that would require duplicating the lexing stuff to determine where
> > quotes are and where commands end.  There are already some cases where
> > pgbench itself is the bottleneck; adding a lexing step would be more
> > expensive, no?  Whereas simply detecting line continuations would be
> > cheaper.
> 
> Well, we only parse the script file(s) once at run start, and that time
> isn't included in the TPS timing, so I don't think performance is really
> an issue here.  But yeah, the amount of code that would have to be
> duplicated out of psql is pretty daunting --- it'd be a maintenance
> nightmare, for what seems like not a lot of gain.  There would also
> be a compatibility issue if we went this way, because existing scripts
> that haven't bothered with semicolon line terminators would break.

Fwiw, I would love to have some \ line continuation thing also for
.psqlrc. I have some dozen \set in there containing queries for
looking into stats/locks/whatever I can invoke just typing e.g.
:user_tables, and these are pretty hard to edit as they are squeezed
on one line.

I agree that putting an SQL parser into the backslash command parser
is overkill, but there's hardly a chance backslashes at the end of a
backslash command line would break anything, except for meeting what
most people would expect.

Christoph
-- 
cb@df7cb.de | http://www.df7cb.de/



В списке pgsql-hackers по дате отправления:

Предыдущее
От: Josh Berkus
Дата:
Сообщение: Re: Allowing line-continuation in pgbench custom scripts
Следующее
От: Christoph Berg
Дата:
Сообщение: Re: [PATCH] Replacement for OSSP-UUID for Linux and BSD