Size: a a a

pgsql – PostgreSQL

2020 July 22

AK

Anton Kodwi in pgsql – PostgreSQL
Memory Doctor
CREATE SEQUENCE table_name_id_seq;

CREATE TABLE table_name_1 (
   id integer NOT NULL DEFAULT nextval('table_name_id_seq')
);

CREATE TABLE table_name_2 (
   id integer NOT NULL DEFAULT nextval('table_name_id_seq')
);
ну вот 2 табдицы с общим автоинкрементом
спасибо)
источник

A

Andrey in pgsql – PostgreSQL
всем привет, подскажите, можно ли прикрутить какой-то мониторинг на изменения столбца и если были какие-то изменения отправлялось еще уведомление?
источник

EZ

Evgenii Zhuravlev in pgsql – PostgreSQL
Mitai
пришлось убить терминал) ни че не помогло хз че это было) больше не буду смотреть через терминал) пгадмин настало твое время!
это VIM =)  это нормально, из него все не с первого раза выходят))
источник

EZ

Evgenii Zhuravlev in pgsql – PostgreSQL
Mitai
как выйти из просмотра баз?
В linux можно пользоваться posix-сигналами.
ctrl + D передаст выход из окружения, если приложение поддерживает posix-сигнал
источник

АЛ

Аггей Лоскутников... in pgsql – PostgreSQL
Andrey
всем привет, подскажите, можно ли прикрутить какой-то мониторинг на изменения столбца и если были какие-то изменения отправлялось еще уведомление?
Можно попробовать повешать триггер на таблицу в котором сравнивать старое и новое значение - если не совпадают - вызывать, например, функцию на python  в которой выполнять отправку уведомлений
источник

YS

Yaroslav Schekin in pgsql – PostgreSQL
Andrey
всем привет, подскажите, можно ли прикрутить какой-то мониторинг на изменения столбца и если были какие-то изменения отправлялось еще уведомление?
Триггер можно повесить. Каким образом "уведомлять" — Вам виднее (есть, к примеру, https://www.postgresql.org/docs/current/static/sql-listen.html и т.п., но их кто-то должен слушать).
источник

YS

Yaroslav Schekin in pgsql – PostgreSQL
Evgenii Zhuravlev
это VIM =)  это нормально, из него все не с первого раза выходят))
Не vim это, а, скорее всего, обычный less. Выйти из него можно "q".
источник

EZ

Evgenii Zhuravlev in pgsql – PostgreSQL
Yaroslav Schekin
Не vim это, а, скорее всего, обычный less. Выйти из него можно "q".
да, точно скорее less, спасибо
источник

s

sexst in pgsql – PostgreSQL
Аггей Лоскутников
Можно попробовать повешать триггер на таблицу в котором сравнивать старое и новое значение - если не совпадают - вызывать, например, функцию на python  в которой выполнять отправку уведомлений
Очень стрёмно. Можно очень нагнуть систему с таким вот триггером.
источник

АЛ

Аггей Лоскутников... in pgsql – PostgreSQL
sexst
Очень стрёмно. Можно очень нагнуть систему с таким вот триггером.
Ну кто ж говорит, что это не костыль
источник

АЛ

Аггей Лоскутников... in pgsql – PostgreSQL
Однако, представьте, что у вас есть таблица с конфигурацией системы - редко изменяемые, но чувствительные данные - там такой триггер - вполне возможен
источник

s

sexst in pgsql – PostgreSQL
Я бы лучше на CDC смотрел в любом случае
источник

s

sexst in pgsql – PostgreSQL
Хотя бы относительно внешний механизм. Можно и retry заюзать и rate limit, да и завалить сложнее
источник

АЛ

Аггей Лоскутников... in pgsql – PostgreSQL
Да тут проблема именно в замедлении вставки в связи с вызовом какого-то внешнего ресурса... но если у тебя таблица изменяется 5 раз в год - все это нестрашно
источник

y

ymdev in pgsql – PostgreSQL
Привет, есть 2 вопроса.
1) Как вставить файл в таблицу без pg_read_binary_file посредством insert into table ( 'file_content' ) VALUES ( ???? ). Каким образом сюда бинарник сунуть?

2) Поддерживает ли postgre запись большого файла по частям (чанкам)? Если кто знаком с nodejs, там есть такие штуки как потоки (stream). И можно из одного в другой пайпить (pipe) по частям.
источник

AT

Alex Ted in pgsql – PostgreSQL
ymdev
Привет, есть 2 вопроса.
1) Как вставить файл в таблицу без pg_read_binary_file посредством insert into table ( 'file_content' ) VALUES ( ???? ). Каким образом сюда бинарник сунуть?

2) Поддерживает ли postgre запись большого файла по частям (чанкам)? Если кто знаком с nodejs, там есть такие штуки как потоки (stream). И можно из одного в другой пайпить (pipe) по частям.
Привет, есть 2 стула - на одном пики точеные, на другом...
источник

EZ

Evgenii Zhuravlev in pgsql – PostgreSQL
Нормально ли, что в Постгре за PGbouncer'ом висят множество (до 50) DISCARD ALL, которые в top смотрятся, как отъедающие CPU idle? При этом есть 1-2 нормальных операции, или даже нет.
Примерно как на скрине. В top могут "отжирать" по 100% CPU каждый попеременно.
источник

EZ

Evgenii Zhuravlev in pgsql – PostgreSQL
про расчет RAM и top в документации прочитал, но про CPU не нахожу ничего в гугле (или запрос нерелевантно строю)
источник

EZ

Evgenii Zhuravlev in pgsql – PostgreSQL
Как я понял DISCARD ALL должен выполниться и закрыться, а не висеть.
источник

DG

Denis Girko ☕️ in pgsql – PostgreSQL
Нормально все.

1) Баунсер как раз и нужен, чтобы поддерживать заданное количество (до 50, например) коннектов к базе в живом виде, готовых для использования.

2) DISCARD ALL - это последний запрос, выполненный в этом соединении с базой.

3) CPU idle - это не отжирание CPU, это как раз доля его простоя.
источник