@pgsql

Страница 496 из 1062
Darafei
03.10.2017
07:53:55
в обычном постгресе только через текст

Leonid
03.10.2017
07:54:31
у меня pro стоит

cast из кробки?

Google
Leonid
03.10.2017
07:55:06
или надо ставить?

Darafei
03.10.2017
07:57:02
не знаю, мы купили поддержку и для нас его написали и применили

для неоптимизированной заглушки его можно через inout сделать

https://github.com/gojuno/lostgis/blob/master/sql/types/__jsonb_casts.sql

а, там нет int - попробуй в numeric скастовать

Leonid
03.10.2017
07:59:45
на всякий случай, может кому пригодится.

select (data->'functional'-»'session_duration')::int *2 from config where is_active='t';

вот так работает

Alexey
03.10.2017
08:02:17
но я же так и предложил. и кстати, чем плох text?

Anton [Mgn, az09@osm]
03.10.2017
08:34:31
data->'functional'->>'session_duration'
у тебя волшебных скобочек нету

Alexey
03.10.2017
08:35:10
а, ну-ну

Darafei
03.10.2017
08:40:49
но я же так и предложил. и кстати, чем плох text?
text плох тем, что делать и парсить округлённые десятичные циферки в буфере динамического размера, при том что на входе и выходе они бинарные-процессорные - дороговато

Alexey
03.10.2017
08:42:17
Google
Alexey
03.10.2017
09:42:48
кстати, вы будете смеяться, но в mysql этой проблемы нет

Darafei
03.10.2017
09:43:36
а там уже и бинарный json есть?

Alexey
03.10.2017
09:43:49
то есть, на тестовых примерах select cast(data->'functional'->'session_duration' as signed) ... во-первых не требует явного преобразования в text, а во-вторых преобразует в int из бинарного формата

причём он именно JSON называется и нет путаницы с JSONB

а вот в mariadb json текстовый

Nick
03.10.2017
10:26:35
вот такой интересный кейс прибежал: есть pg 9.6.3, linux после жесткого ребута сервера что-то пошло не так база запускается, но многие запросы уходят в 100% CPU и ничего не делают путем различных экспериментов стало понятно, что что-то не так в каталоге дошел до состояния: 1. БД запущена с ignore_system_indexes=true 2. select * from pg_attribute выполняется нормально 3. vacuum analyze pg_attribute падает с ошибкой ERROR: right sibling's left-link doesn't match: block 228 links to 248 instead of expected 227 in index "pg_attribute_relid_attnam_index" (set zero_damaged_pages = on сделан) индекс удалить не дает, ибо " is a system catalog" 4. reindex index pg_attribute_relid_attnam_index виснет с теми же симптомами - 100% CPU и ничего не делает есть идеи, как продвинуться дальше? ?

Nick
03.10.2017
10:28:39
не получится - он в процессе дампа делает выборки из системного каталога

Я бы порекомендовал попытаться сделать бекап рабочей БД. И отресторить её в новом кластере.
Вы правы, я не пытался это сделать с "ignore_system_indexes=true" - так проходит

и все-таки.. кто какие грязные хаки порекомендует для починки индекса на системную таблицу?

Darafei
03.10.2017
10:50:02
allow_system_table_mods ?

Nick
03.10.2017
12:15:53
ага, спасибо

ERROR: cannot drop index pg_attribute_relid_attnam_index because it is required by the database system пофиг allow_system_table_mods | on |

Dmitry
03.10.2017
14:38:59
Коллеги, а почему я получаю ошибку permission denied for relation после установки грантов на селект для пользователя? понимаю, вопрос такой себе.

Алексей
03.10.2017
14:43:37
права на схему смотрите.

GRANT USAGE ON SCHEMA __schema__ TO __role__

Dmitry
03.10.2017
14:49:08
права на схему смотрите.
использую такой метод https://gist.github.com/oinopion/4a207726edba8b99fd0be31cb28124d0

Аггей
03.10.2017
15:05:52
http://ps.tmpc.ru/000ba7ff

Так readonly на все таблицы

Google
Аггей
03.10.2017
15:06:31
Потом функцию вызываете с именем пользователя

Сергей
03.10.2017
20:40:37
Ребят, а у кого-нить есть конфиг, где включены всякие штуки, которые увеличивают перформанс базы. про http://pgtune.leopard.in.ua/ я знаю, но например, я знаю что можно включить паралелизацию запросов и скорей всего что-то еще. Об этом и вопрос - это что-то еще есть в одном месте?

Марат
03.10.2017
20:42:18
начни с того что творится в БД

и собери статистику по выполняющимся запросам

для любой бд все индивидуально

Сергей
03.10.2017
20:44:29
я говорю только про файл настроек

Denis
03.10.2017
21:04:06
я говорю только про файл настроек
Конфиг у pg каждый крутит индивидуально в зависимости от железа и того, что творится в базе

Сергей
03.10.2017
21:05:13
я уточню вопрос. меня интересуют общие настройки, которые полезны всем - от банального увеличения памяти до включения параллелизма.

Stas
03.10.2017
21:05:32
https://www.packtpub.com/big-data-and-business-intelligence/postgresql-high-performance-second-edition

Alex
03.10.2017
21:23:02
я уточню вопрос. меня интересуют общие настройки, которые полезны всем - от банального увеличения памяти до включения параллелизма.
банальным включением параллелизма можно убить перформанс остальных запросов. надо подходить с пониманием к этому.

https://www.packtpub.com/big-data-and-business-intelligence/postgresql-high-performance-second-edition
стас, неприлично отвечать на вопрос ссылкой %)

Stas
03.10.2017
21:36:17
стас, неприлично отвечать на вопрос ссылкой %)
Отвечать ссылкой по делу — нормально. Флеймить в чате с 1k3 пользователей — не очень

Artyem
04.10.2017
05:53:23
PostgresPro 9.6 Вроде как есть LC_COLLATE и LC_CTYPE влияющие на правила сортировки. С другой стороны > Поддержка libicu на всех платформах, что обеспечивает независимые от платформы результаты сортировки.

как использовать libicu для сортировки строк/текста?

по документации поискал, ничего конкретного найти не удалось

Darafei
04.10.2017
05:57:43
независимые от платформы - независимые от багов в libc платформы

поддержка LC_ от этого же не исчезает

Artyem
04.10.2017
06:07:45
ок, спасибо. Тогда ещё вопрос, сначала был развернёт postgrespro (ubuntu 16.04). потом доставлена локаль "ru_RU.utf8", везде где надо всё подхватилось, кроме посгреса, ругается при создании БД. ничего важного пока там не развёрнуто, можно хоть всё снести. из того чо удалось нагуглить, это выполнить pg_dropcluster и pg_createcluster, или есть менее болезненные способы?

Darafei
04.10.2017
06:09:02
а текст ошибки?

Artyem
04.10.2017
06:09:31
ERROR: new collation (ru_RU.utf8) is incompatible with the collation of the template database (en_US.UTF-8)

Google
Darafei
04.10.2017
06:12:19
если бекапы настроены :)

Artyem
04.10.2017
06:13:43
ну тогда этим путём и пойдём, спасибо

Аггей
04.10.2017
06:13:51
Так у него пусто же

Артур
04.10.2017
06:28:34
Вопрос

Ругается ERROR: could not access file "$libdir/postgis-2.3": No such file or directory

Darafei
04.10.2017
06:29:12
ты не поставил постгис

Артур
04.10.2017
06:29:15
Смотрю содержимое папки - 2.3. папка пустой стала, зато от вчера папка появил\ась папка 2.4

Давно ставил

Darafei
04.10.2017
06:29:31
тебе пришёл апдейт и тебе нужно проапгрейдиться

Артур
04.10.2017
06:29:45
Чё сделать то? Какое команды?

или просто yum update?

Darafei
04.10.2017
06:29:59
кусочек отсюда https://gist.github.com/Komzpa/994d5aaf340067ccec0e

там посимлинкать и alter extension upgrade

Артур
04.10.2017
06:32:13
я правильно понял что в примере нужно пути поправить и запустить?

Или только линк и ап сделать?

Все спасибо. Помогло

Slach
04.10.2017
07:20:33
Всем привет использую для мониторинга PostgreSQL mamonsu стали прилетать триггеры " PostgreSQL required checkpoints occurs to frequently on db-XXX" я правильно понимаю, что это ничего страшного и просто возрасла нагрузка на запись в PostgreSQL ? и если я не вижу хотя бы 50% утилизации на дисках, то можно просто увеличить значения для триггера?

Mikhail
04.10.2017
07:44:05
Утилизация без латенси вообще говоря ни о чем не говорит

Причём надо смотреть довольно узкие интервалы

Google
Mikhail
04.10.2017
07:44:37
Могут быть всплески во время чекпоинтов как раз

@BloodJazMan

loki
04.10.2017
07:50:27
Всем привет использую для мониторинга PostgreSQL mamonsu стали прилетать триггеры " PostgreSQL required checkpoints occurs to frequently on db-XXX" я правильно понимаю, что это ничего страшного и просто возрасла нагрузка на запись в PostgreSQL ? и если я не вижу хотя бы 50% утилизации на дисках, то можно просто увеличить значения для триггера?
Надо мониторить причину чекпоинтов, через pg_stat_bgwrite. По хорошему чекпоинты должны быть размазаны, чтобы не напрягать io https://youtu.be/NY-9HUnmR6c?t=21m12s Ничего страшного, просто показывает что нужно подкрутить гаечки

Artyem
04.10.2017
07:52:55
хм, стою на асфальте я в лыжи обутый postgres-# \l test2 Список баз данных Имя | Владелец | Кодировка | LC_COLLATE | LC_CTYPE | Права доступа -------+------------+-----------+-------------+-------------+--------------- test2 | klimenko_a | UTF8 | ru_RU.UTF-8 | ru_RU.UTF-8 | (1 строка)вроде как никаких прав доступа к бд не выдано, по крайней мере не видно ни в консоли, ни в PgAdmin4. Но левым пользователем совершенно спокойно позволяет подключиться к бд делаем запрос REVOKE CONNECT ON DATABASE test2 FROM PUBLIC;неожиданно получаем postgres=# \l test2 Список баз данных Имя | Владелец | Кодировка | LC_COLLATE | LC_CTYPE | Права доступа -------+------------+-----------+-------------+-------------+--------------------------- test2 | klimenko_a | UTF8 | ru_RU.UTF-8 | ru_RU.UTF-8 | =T/klimenko_a + | | | | | klimenko_a=CTc/klimenko_a (1 строка) возможность подключиться у сторонних пользователей пропадает. О_о это нормально?

Петр
04.10.2017
08:34:31
Нормально

Artyem
04.10.2017
08:38:24
— У нас дыра в безопасности. — Ну, хоть что-то у нас в безопасности.

Gregory
04.10.2017
09:41:28
йо помогите с одной вещью плиз: я так понимаю, что для пг еще не допилили datalink, есть что-нибудь со схожей функциональностью?

Slach
04.10.2017
09:58:09
fdw как "похожее на datanilk" сойдет? https://wiki.postgresql.org/wiki/Foreign_data_wrappers

Evgeny
04.10.2017
10:26:11
Есть кто-нибудь кто мигрировал с мускула на постгре? Нужно пару советов)

Mike Chuguniy
04.10.2017
10:27:17
Хых, вы вопросы задавайте, наверняка найдутся такие люди.

Dmitry
04.10.2017
10:40:30
— У нас дыра в безопасности. — Ну, хоть что-то у нас в безопасности.
Надо бы мат-часть подтянуть. https://www.youtube.com/watch?v=Asicqi0ewO8

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