@pgsql

Страница 981 из 1062
Terminator
12.09.2018
10:00:46
@maxim600 будет жить. Поприветствуем!

elfiki
12.09.2018
10:03:29
двух_слов

Renat
12.09.2018
10:03:43
Спасибо за ответ) Ща сформулирую другой вопрос. мне то в итоге нужно джоинить относительно предыдущего джоина

Google
Yaroslav
12.09.2018
10:03:47
snake_case

Konstantin
12.09.2018
10:04:42
Привет! Новая встреча #RuPostgres пройдёт уже в эту субботу, 15 сентября. У нас немного расширилась программа, и остаётся ещё несколько свободных мест для слушателей. А ещё мои коллеги сделали мини-викторину, посвященную Postgres. Она проходит онлайн: присоединяйтесь, мы разыгрываем несколько призов. Все подробности тут: https://habr.com/company/avito/blog/422841/

Renat
12.09.2018
10:07:10
во множественном

а как JOIN в скобки то заворачивать

Fike
12.09.2018
10:12:49
В единственном, кроме пересечений по ключевым словам. Поэтому users как правило во множественном.

Pavel
12.09.2018
10:15:27
Друзья, как заставить initdb разговаривать по-английски? Эта падла игнорирует все опции

> initdb.exe --lc-messages=English_Australia.1252 initdb: каталог данных не определён.

Дмитрий
12.09.2018
10:17:38
а каталог данных определить не помогает? --pgdata="/foo/bar/"

Pavel
12.09.2018
10:18:17
Maksim
12.09.2018
10:18:44
Можно как-то через SET?
на windows не знаю)

Mike Chuguniy
12.09.2018
10:19:00
Или POSIX вместо C

Google
Pavel
12.09.2018
10:20:13
SET LC_MESSAGES=English_Australia.1252 сработало

LC_MESSAGES="C" initdb ...
SET LC_MESSAGES=C тоже сработало. Сенкс!

Alexander
12.09.2018
10:22:41
Друзья, как заставить initdb разговаривать по-английски? Эта падла игнорирует все опции
Вот так можно ещё: apt-get install -y postgresql-common sed -i "s@#initdb_options = ''@initdb_options = '--encoding=UTF8 --data-checksums --locale=en_US.UTF-8'@g" /etc/postgresql-common/createcluster.conf apt-get install -y postgresql-10

Pavel
12.09.2018
10:23:31
нене, мне только вывод самой утилиты

stdout ee

А то нихрена порой не понятно, что присылают

Yaroslav
12.09.2018
10:38:07
а как JOIN в скобки то заворачивать
С помощью скобок, внезапно. ;) Но обычно это просто не нужно.

В обоих случаях regexp )
То есть, та или другая задача у кого-то является "типичным рабочим моментом"? ;)

Terminator
12.09.2018
10:50:23
Татьяна Снапкова будет жить. Поприветствуем!

Eugeny
12.09.2018
10:55:43
То есть, та или другая задача у кого-то является "типичным рабочим моментом"? ;)
первая является типовой задачей для людей, которые пытаются разруливать асинхронку не на уровне очередей, а на уровне БД а вторая для меня была типовой, когда я длительное время работал с легаси табличкой, где контактные данные были представлены ввиде текстовой строки, где содержались телефоны, местные, городские сотовые, фИО в разных вариацияю мыла и прочие прелести, и мне надо было привести все в формат json )

Yaroslav
12.09.2018
11:03:42
первая является типовой задачей для людей, которые пытаются разруливать асинхронку не на уровне очередей, а на уровне БД а вторая для меня была типовой, когда я длительное время работал с легаси табличкой, где контактные данные были представлены ввиде текстовой строки, где содержались телефоны, местные, городские сотовые, фИО в разных вариацияю мыла и прочие прелести, и мне надо было привести все в формат json )
> первая является типовой задачей для людей, которые пытаются разруливать асинхронку не на уровне очередей, а на уровне БД Так для этого есть и типовые же решения (и, скорее всего, "шаг вправо, шаг влево" — и решение уже не работает). > и мне надо было привести все в формат json ) Т.е. одномоментно, транзакционно, огромный объём? Потому что если что-то из этого не так, Вы просто использовали не лучший инструмент / инструмент не по назначению (извините за резкость). :(

Fedor
12.09.2018
11:08:22
https://otus.ru/events/subd_open/136/?utm_source=telegram&utm_medium=cpm&utm_campaign=subd&utm_content=lesson&utm_term=SysadminNotes

Dima
12.09.2018
11:25:39
как сделать выборку всех столбцов из таблицы и 1 столбец указать по другому назвать?

Eugeny
12.09.2018
11:27:44
select col as myName from table?)

Yaroslav
12.09.2018
11:30:07
как сделать выборку всех столбцов из таблицы и 1 столбец указать по другому назвать?
"SELECT <перечисляете все другие поля>, поле AS дгугое_название FROM ..." Другого способа нет.

elfiki
12.09.2018
11:32:58
как сделать выборку всех столбцов из таблицы и 1 столбец указать по другому назвать?
ну если нет разницы будет ли лишнее поле, то можно и select *, pole as newname from ...

если перечислять лень

Google
Yaroslav
12.09.2018
11:35:39
Всё равно в procuction "*" использовать не надо, а если это какие-то одноразовые запросы, лучше, наверное, найти какой-то инструмент (редактор), который будет просто вставлять список полей.

Dmitry
12.09.2018
11:35:41
Добрый день, помогите, пожалуйста в сражении с ошибкой нехватки памяти.

Dima
12.09.2018
11:35:54
ну если нет разницы будет ли лишнее поле, то можно и select *, pole as newname from ...
супер, тоесть можно SELECT * и потом указать 1 поле для изменения названия?

elfiki
12.09.2018
11:36:15
ну там в ответе будет и оригинальное название тоже, но и новое

Dima
12.09.2018
11:36:43
ой ну эт паршиво

Yaroslav
12.09.2018
11:37:06
ой ну эт паршиво
А Вам зачем?

Eugeny
12.09.2018
11:37:10
всегда можно упороться по жести и сгенерить sql select row_number() over(), * from information_schema.columns where table_schema = 'public' and table_name = 'table'

и выполнить его в do блоке))

Dima
12.09.2018
11:39:29
тогда другой вопрос, мне надо что бы в код залетело название в кемел кейсе типа currentFrequency, вместо current_frequency

elfiki
12.09.2018
11:40:03
очень сложно

Dima
12.09.2018
11:40:30
нормальная ли практика сразу в базу писать стоглбец в кемел кейсе?))

elfiki
12.09.2018
11:40:39
только пг регистро нечувствителен

в ответе будет с маленькой буквы всё

Yaroslav
12.09.2018
11:41:30
pg 9.6 debian, 393 соединения
А ну крутоваты настройки-то? У Вас действительно есть [как минимум] 512 Гигабайт памяти, если что?

elfiki
12.09.2018
11:41:38
так что на стороне клиента если только

Eugeny
12.09.2018
11:43:08
select 'select '|| array_to_string(array_agg( case when row_number = 1 then column_name ||' as new_name' else column_name end), ', ') || ' from demo_range' from ( select row_number() over(), column_name from information_schema.columns where table_schema = 'public' and table_name = 'demo_range' ) t

Dmitry
12.09.2018
11:43:17
количество соединений большое из за использования в фоновых обработчиков LISTEN NOTIFY

Google
Dmitry
12.09.2018
11:44:16
и OS не упирается в память, в своп не лезет

Yaroslav
12.09.2018
11:45:25
и OS не упирается в память, в своп не лезет
А OOM тогда откуда? Какая версия PostgreSQL? А сколько примерно активных запросов, по факту?

Alexander
12.09.2018
11:46:28
pg 9.6 debian, 393 соединения
пулер соединений используете?

Dmitry
12.09.2018
11:48:18
9.6 примерно по 10 активных запросов

пулер не используем, много баз в кластере (175).

Dmitry
12.09.2018
11:49:00
количество соединений большое из за использования в фоновых обработчиков LISTEN NOTIFY
Здравствуйте. Зачем для обработки NOTIFY большое количество соединений?

Dmitry
12.09.2018
11:49:58
Здравствуйте. Зачем для обработки NOTIFY большое количество соединений?
на каждую базу по несколько обработчиков очередей (от двух до 4) которые слушают свои события на LISTEN

Dmitry
12.09.2018
11:50:56
на каждую базу по несколько обработчиков очередей (от двух до 4) которые слушают свои события на LISTEN
На каждую БД достаточно 1-го слушателя различных каналов. Плюс по каждому каналу можно передавать payload (около 8 кб).

Dmitry
12.09.2018
11:52:06
я не могу понять, почему сейчас htop показывает свободно 19Gb, а в логах OOM

Tema
12.09.2018
11:52:11
срочный запрос

у меня LANGUAGE plpgsql как в sikuel_zapros вставить переменнки FOR elem IN EXECUTE sikuel_zapros LOOP END LOOP

Dmitry
12.09.2018
11:53:05
Не знаю, конечно, вашей архитектуры, но почти уверен, что у вас переизбыток в необходимых соединениях. Диспетчеризацию доставки уведомлений всегда возможно реализовать через единственный слушатель с единственной очередью.

Tema
12.09.2018
11:53:10
переменки из секции DECLARE

Yaroslav
12.09.2018
11:56:09
9.6 примерно по 10 активных запросов
Точная версия какая? 9.6.что?

Dmitry
12.09.2018
11:56:36
9.6.9

Yaroslav
12.09.2018
11:57:49
я не могу понять, почему сейчас htop показывает свободно 19Gb, а в логах OOM
А Вы знаете, какой именно запрос вызывает эту ошибку?

Dmitry
12.09.2018
11:58:16
в логах спотыкается на разных запросов, вплоть до совсем примитивных

А Вы знаете, какой именно запрос вызывает эту ошибку?
ОШИБКА: загрузить библиотеку "/usr/lib/postgresql/9.6/lib/hstore.so" не удалось: /usr/lib/postgresql/9.6/lib/hstore.so: сбой отображения сегмента из разделяемого объекта: Невозможно выделить память

есть и такие сообщения

из расширений включен stat_statements

Google
Alexander
12.09.2018
12:01:42
а СУБД случаем не в докере?

Dmitry
12.09.2018
12:02:43
нет

уменьшил количество соединений и shared_buffers, понаблюдаю

к слову, пробовал снизить work_mem и это не помогало

Dmitry
12.09.2018
12:15:27
А можно по подробней, как вы это видите?
1 слушатель на много каналов. Всё тривиально.

Alexey
12.09.2018
12:16:09
1 слушатель на много каналов. Всё тривиально.
Ну это понятно, что слушать можно много чего. Вы что-то там про очередь писали

Yaroslav
12.09.2018
12:16:27
я не могу понять, почему сейчас htop показывает свободно 19Gb, а в логах OOM
Ну это сейчас, а мониторинг у Вас есть? Может, это какие-то "мгновенные" пики (возможно, даже не из-за PostgreSQL)?

Dmitry
12.09.2018
12:16:46
Dmitry
12.09.2018
12:18:15
Ну это сейчас, а мониторинг у Вас есть? Может, это какие-то "мгновенные" пики (возможно, даже не из-за PostgreSQL)?
мониторинг есть, сейчас отключили, всплесков не обнаружено по куче параметров

Страница 981 из 1062