
Vadim
14.09.2017
15:52:56
микро они наверно еще меньше чем просто сервисы

Mike Chuguniy
14.09.2017
15:53:25

Аггей
14.09.2017
15:53:39

Fike
14.09.2017
15:53:49
ну я специально слово "сторонник" использовал

Google

Vadim
14.09.2017
15:54:38
для приложений поддерживающих кроме постгрес еще оракл и мс скл, такой подход не подходит))

Massimo
14.09.2017
15:57:29
Скифча

Pavel
14.09.2017
17:15:03
Так как таймаута нету он просто ждет пока подключится но не дожидается и умирает

Alex
15.09.2017
12:14:01
Друзья постгрес не хочет стирать старые wall логи, в какую сторону копать ? Конфиг https://pastebin.com/c5NgndA6
в логах все пусто
также на базе никто ничего не делает а логи все пишутся , за день приблизително 700-800 мб

Timur
15.09.2017
12:15:23
pg_archivecleanup

Alex
15.09.2017
12:17:40
archive_cleanup_command = 'pg_archivecleanup -d /mnt/standby/archive %r 2»cleanup.log' записать его в конфиг ?

Timur
15.09.2017
12:18:21
Я с телефона, синтаксис и корректность оценить не могу, но вроде да :)

Alex
15.09.2017
12:18:45
по идее ведь посгрес стирает автоматически логи после чекпоинта ?

Алексей
15.09.2017
12:19:32
не сразу

Google

Alex
15.09.2017
12:20:08
8-9 стер руками (тестовый сервер)

Dmitry
15.09.2017
12:21:31
Привет, пишу расширение. Есть какой-нибудь изкоробочный способ проверить что версия 1.0 с со всеми накаченными апдейтами даёт то же самое что послндняя версия?

Алексей
15.09.2017
12:22:20

Dmitry
15.09.2017
12:24:45
или нужно вручную сделать create extension version '1.0'; alter extension update; и сравнить с тем что даст просто create extension?
тогда ещё вопрос как сдампить только то что относится к экстеншону

Mike Chuguniy
15.09.2017
14:01:38

Dmitry
15.09.2017
14:02:29
пока сделал через жопу с лазаньем в pg_catalog

Mike Chuguniy
15.09.2017
14:02:46
Не стоит так делать.

Dmitry
15.09.2017
14:03:10
можно было ещё сделать alter extension drop (тогда оно выпадет из экстеншона и попадёт в дамп), но он не умеет drop всего сразу

Mike Chuguniy
15.09.2017
14:05:53
У экстеншна, в большинстве случаев, есть библиотеки, которые лежат в $libdir, как вы содержимое этих библиотек сдампите?
А, извините, вылетело из головы, что своё расширение
Но в любом случае необходимо понимать, что сдампить потроха расширения не получится.

Massimo
15.09.2017
14:50:14
http://m.cnews.ru/news/top/2017-09-14_rossiyane_delayut_rasshirenie_dlya_obedineniya_dannyh

Ilya
15.09.2017
14:51:01
ойц

Dmitry
15.09.2017
17:06:05
А ещё вопрос: как лучше хранить константы (расширение обёртывает С функцию принимающую набор флагов - нужно их тоже во что-то обернуть)
Что-то не нашел. Принимать переменное чисто аргументов - строк по нахванию флагов?

loki
16.09.2017
00:30:27
Сап есть релика в режиме хот стенбая, переодически ругается на "required checkpoints occurs to frequently" реплика сильно слабее мастера
wal_buffers = 16MB
checkpoints_timeout = 5min
max_wal_size=4GB
min_wal_size = 1GB, вопрос если реплика только проигрывает wal, какие к лешему частые чекпоинты. =(

Google

Dmitry
16.09.2017
10:23:57
А какой правильный способ посчитать при агрегации равенство поля конкретному значению? Я по незнанию костылил sum(case when foo=123 then 1 else 0 end), count(nullif(foo=123, false))
Теперь понял что можно sum((foo=123)::integer)
Можно ещё прямее?
Во, есть еще count(a=123 or null)

Darafei
16.09.2017
10:39:02
count(*) filter (where a=123)

Dmitry
16.09.2017
10:51:29
О, точно, это тоже где-то видел. Оно ещё и работает быстрее всего перечисленного на 20%
А известно почему? Как я понял в explain этого не видно

Darafei
16.09.2017
10:55:32
потому что оно даже не заходит в count, когда не надо считать

Dmitry
16.09.2017
10:57:15
Казалось бы count вообще не будет заметен на фоне скорости выборки

Darafei
16.09.2017
10:58:05
а планы как? :)

Dmitry
16.09.2017
10:58:15
1 в 1

??Suffer
16.09.2017
12:09:10
Есть таблица клиентов и таблица услуг/продаж которые отличаются только флагом. Я могу как-то получить всех пользователей у которых разница между последней услугой и продажей меньше одного месяца?

Darafei
16.09.2017
12:11:07
SQL в постгресе тьринг-полон, так что как-то точно можешь

??Suffer
16.09.2017
12:11:50
Мне надо еще это как-то в Django ORM запихнуть ;_;

Igor
16.09.2017
12:12:06
“надо” или "хочется"?

??Suffer
16.09.2017
12:12:24
надо
Только надо понять как это сделать в SQL

Darafei
16.09.2017
12:12:53
пока не видно, чем это не join двух запросов с max(ts) с группировкой по пользователю, и потом where по этому join с разницей между этими двумя полями

Igor
16.09.2017
12:13:45

Darafei
16.09.2017
12:14:04
там про последнюю

Google

Igor
16.09.2017
12:14:11
ой, пардон

??Suffer
16.09.2017
12:14:51

Igor
16.09.2017
12:17:08
SELECT user_id, max(timestamp) FROM services GROUP BY user_id
и
SELECT user_id, max(timestamp) FROM orders GROUP BY user_id
что-то типа того, видимо

??Suffer
16.09.2017
12:44:04
Я сделал это
SELECT sales.vehicle_id AS id
FROM
(SELECT id,
max(last_known_date) AS last_known_date,
vehicle_id
FROM forensics_forensic
WHERE vendor_id=1
GROUP BY id,
vehicle_id) services
INNER JOIN
(SELECT id,
max(last_known_date) AS last_known_date,
vehicle_id
FROM forensics_forensic
WHERE vendor_id=2
GROUP BY id,
vehicle_id) AS sales ON sales.vehicle_id = services.vehicle_id
AND sales.last_known_date BETWEEN services.last_known_date - INTERVAL '1 month' AND services.last_known_date + INTERVAL '1 month';

Abbos
16.09.2017
12:51:44
SELECT sales.vehicle_id AS id
FROM
(SELECT id,
max(last_known_date) AS last_known_date,
у меня не получается

Darafei
16.09.2017
12:52:11
три `, как в markdown

Massimo
16.09.2017
13:01:41

Abbos
16.09.2017
13:02:16
SELECT sales.vehicle_id AS id
FROM
(SELECT id,
max(last_known_date) AS last_known_date,
о пасибо)

Dmitriy
16.09.2017
13:39:27
Коллеги. Есть выборка всех полей из таблицы по условиям. Первичного ключа нет. Как дропнуть все записи из этой же таблицы которые выбраны ранее селектом ?
внутренние id может полей заюзать какие-нибудь?

Sergey
16.09.2017
13:48:37
вместо select <a> from <b> where <c> написать delete from <b> where <c>
или DELETE FROM <b> WHERE <c> RETURNING <a>

Dmitriy
16.09.2017
21:44:45
Коллеги, есть целочисленное поле. Делаю выборку минимального значения по условию. Если запрос ничего не возворащает, как сделать так, что бы возвращался 0?
NULLIF чот не работат

Vladimir
16.09.2017
22:01:41
COALESCE
https://postgrespro.ru/docs/postgrespro/9.5/functions-conditional

Google

Igor
17.09.2017
05:35:08
Доброе всем утро