Size: a a a

pgsql – PostgreSQL

2020 May 21

DG

Denis Girko ☕️ in pgsql – PostgreSQL
Ну вы не делайте скорых выводов о человеке. Я, например, не понял, что у вас задача распараллелить процесс, а не пустить нескольких пользователей для одновременного запуска тестов.
источник

W

Warstone in pgsql – PostgreSQL
Victor Yegorov
а как долго у вас база создаётся?
3-4 секунды.
источник

VY

Victor Yegorov in pgsql – PostgreSQL
Vitaly Peryatin
Помогите описать триггерную функцию
Что делаю не так?

CREATE OR REPLACE FUNCTION natural_limitations() RETURNS trigger AS $$
   DECLARE
       res record;
   BEGIN
       IF EXTRACT(year FROM interval new.born_date + interval '0 years') - date_part('year', current_date) >= 14
              AND (new.gender='F' OR new.gender='M')
              AND new.weight >= 40
              AND new.height >= 140 AND new.height <= 220
              AND new.subs_end_date > new.subs_start_date
           THEN res = new;
       ELSE res = null;
       END IF;

       RETURN res;
   END
   $$ LANGUAGE plpgsql;
а что вы хотите получить выражением EXTRACT(year FROM interval new.born_date + interval '0 years')
источник

W

Warstone in pgsql – PostgreSQL
Denis Girko ☕️
Ну вы не делайте скорых выводов о человеке. Я, например, не понял, что у вас задача распараллелить процесс, а не пустить нескольких пользователей для одновременного запуска тестов.
Зачем запускать каких-то пользователей если тесты делаются автоматически? 0_o
источник

VY

Victor Yegorov in pgsql – PostgreSQL
Warstone
3-4 секунды.
на 30-минутный прогон вам жалко 3-4 секунды?..
источник

W

Warstone in pgsql – PostgreSQL
Victor Yegorov
на 30-минутный прогон вам жалко 3-4 секунды?..
Это на каждый тест.
источник

W

Warstone in pgsql – PostgreSQL
Базу-же пересоздавать надо
источник

DG

Denis Girko ☕️ in pgsql – PostgreSQL
Warstone
Зачем запускать каких-то пользователей если тесты делаются автоматически? 0_o
Затем, что есть нескольок разработчиков/тестировщиков, которые захотят проверить код одновременно. Но это оффтоп.
источник

DG

Denis Girko ☕️ in pgsql – PostgreSQL
Victor Yegorov
на 30-минутный прогон вам жалко 3-4 секунды?..
Он хочет свои 30 минут распараллелить, чтобы суммарно вышло меньше. @Warstone верно?
источник

W

Warstone in pgsql – PostgreSQL
Denis Girko ☕️
Затем, что есть нескольок разработчиков/тестировщиков, которые захотят проверить код одновременно. Но это оффтоп.
Вот пусть и каждый из них нажмет в консоли prove (это у нас так тесты запускаются) и наслаждает выводом.
источник

VP

Vitaly Peryatin in pgsql – PostgreSQL
Victor Yegorov
а что вы хотите получить выражением EXTRACT(year FROM interval new.born_date + interval '0 years')
Хочу извлечь год из поля типа date
источник

W

Warstone in pgsql – PostgreSQL
Denis Girko ☕️
Он хочет свои 30 минут распараллелить, чтобы суммарно вышло меньше. @Warstone верно?
Да.
источник

DG

Denis Girko ☕️ in pgsql – PostgreSQL
С транзакциями ничего не получится, ИМХО. Ваш выход - несколько схем/баз/кластеров.
источник

VY

Victor Yegorov in pgsql – PostgreSQL
Vitaly Peryatin
Хочу извлечь год из поля типа date
extract(year FROM new.born_date) достаточно
у вас IF блок не сможет быть >=14, если только у народа дата рождения не в будущем
источник

W

Warstone in pgsql – PostgreSQL
Понятно... Просто конкретно сейчас мы гоняем тесты с помощью SQLite, где это все есть / решаемо, но на бою у нас Пг и использование SQLite для тестирования ограничивает и в диалекте и в оптимизации запросов, так как оставляет очень маленький поднабор запросов. А делать что-то типа if (pg) { .. } else { .. } - не протестируешь Пгшную ветку.
источник

VP

Vitaly Peryatin in pgsql – PostgreSQL
Victor Yegorov
extract(year FROM new.born_date) достаточно
у вас IF блок не сможет быть >=14, если только у народа дата рождения не в будущем
Спасибо за помощь! Получилось
источник

DG

Denis Girko ☕️ in pgsql – PostgreSQL
Но я бы все-таки подумал, насколько вы эффективно переиспользуете базу между тестами. Потому что распараллеливание вам может дать прирост, ну, на 30%. А если, например, сэкономите на подготовке базы к отдельно взятому тесту, можете получить гораздо больше.
источник

ВЯ

Владимир Яворский... in pgsql – PostgreSQL
кто-нибудь знает, запили ли engine для postgresql для хранения колонками? типа clickhouse)
источник

ВЯ

Владимир Яворский... in pgsql – PostgreSQL
вроде бы в 12-м анонсировали api для движков хранения
источник

ВГ

Владимир Гришин... in pgsql – PostgreSQL
Владимир Яворский
кто-нибудь знает, запили ли engine для postgresql для хранения колонками? типа clickhouse)
источник