Re: [HACKERS] possibility to specify template database for pg_regress

Поиск
Список
Период
Сортировка
От Pavel Stehule
Тема Re: [HACKERS] possibility to specify template database for pg_regress
Дата
Msg-id CAFj8pRC-WG5e6o2uq-Nj6sAMbqj3UzygGSB_2SqbX1ANPmp3VA@mail.gmail.com
обсуждение исходный текст
Ответ на Re: [HACKERS] possibility to specify template database for pg_regress  (Andres Freund <andres@anarazel.de>)
Ответы Re: [HACKERS] possibility to specify template database for pg_regress  (Jim Nasby <Jim.Nasby@BlueTreble.com>)
Список pgsql-hackers


Dne 14. 2. 2017 21:35 napsal uživatel "Andres Freund" <andres@anarazel.de>:
On 2017-02-14 14:29:56 -0600, Jim Nasby wrote:
> On 2/14/17 1:59 PM, Andres Freund wrote:
> > > AFAIK if you're doing make check (as opposed to installcheck) it's
> > > significantly more complicated than that since you'd have to create a temp
> > > cluster/install yourself.
> >
> > But in that case you can't have useful templates in the regression test
> > either, so the whole discussion is moot?
>
> At that point it depends on what you're trying to do. Presumably separating
> cluster control would make it much easier to script createdb/dropdb as you
> suggested.

That's not what I responded to...


> Tom's use case might be more easily served by specifying a
> template database. I don't think Pavel ever posted his use case.

Wait, that's precisely what Pavel asked?

I would to use regress test environment in my current case. 99% code in plpgsql, but there is pretty complex schema. About 300 tables. 1k views. 2k functions. Import schema is slow. Database clonning is much faster.

On 2017-02-07 16:43:47 +0100, Pavel Stehule wrote:
> Is possible to specify template database for pg_regress?
>
> I have to run tests on database with thousands database objects. Using
> template is much faster than import these objects.

Obviously that only makes sense with installcheck.


> Speaking for myself, my normal pattern is to have a number of separate
> pg_regress suites, each of which ends up loading the extension under test.
> Loading a large extension can end up being very time consuming; enough so
> that I'd expect it to be much faster to create the temp cluster, load all
> the prereq's once in some template database, and then use that template for
> most/all of the tests.

I seriously doubt that. CREATE DATABASE is ridiculously expensive,
copies everything on the file-level and requires checkpoints.  If your
extension is more expensive than that, I'd say you're likely doing
something wrong.

- Andres

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

Предыдущее
От: Robert Haas
Дата:
Сообщение: Re: [HACKERS] pg_waldump's inclusion of backend headers is a mess
Следующее
От: Alvaro Herrera
Дата:
Сообщение: Re: [HACKERS] pg_waldump's inclusion of backend headers is a mess