
Darafei
01.03.2017
21:31:09
потом про типизированный EMPTY
потом про типизированный EMPTY внутри коллекции внутри коллекции

Алексей
01.03.2017
21:31:34
Коллекции вообще надо запретить :) Мухи отдельно, котлеты отдельно.

Darafei
01.03.2017
21:31:45
в постгисе косяки сейчас где-то под конец

Google

Darafei
01.03.2017
21:31:47
здрасти
а что тогда делать, если в пересечении двух полигонов одна общая точка, общее ребро и общий кусок мяса?

Алексей
01.03.2017
21:33:54
а в чем проблема?

Darafei
01.03.2017
21:34:25
в какую структуру данных сложить этот результат?

Алексей
01.03.2017
21:35:15
эм... результат чего? есть два полигона. они имеют общую точку. ну и путь имеют. по сути это два полигона и все.
чувствую, я опять что-то недочитал

Darafei
01.03.2017
21:35:33
результат операции пересечения
ST_Intersection(geom1, geom2)

Алексей
01.03.2017
21:35:49
а. теперь понял
Ну например делать экстракт и хранить отдельно. Впрочем, все от задачи зависит. Возможно в некоторых случаях это и уместно.
Просто не сталкивался.

Аггей
01.03.2017
21:37:44
Они имеют несколько пересечений
Где-то это точка, где-то ребро, а где-то чуть больше наложение

Google

Аггей
01.03.2017
21:38:12
Ой долго сообщения шли

Darafei
01.03.2017
21:38:20
чтобы делать экстракт, его надо делать из чего-то

Алексей
01.03.2017
21:38:26

Darafei
01.03.2017
21:38:55
только внешний контур
вернее, единственный контур :)

Алексей
01.03.2017
21:40:04
Точно?
Полигон с дыркой - это не полигон?

Darafei
01.03.2017
21:40:46
в чьей терминологиий?
в OGC - полигон
в постгресе polygon - это переименованный closed path

Алексей
01.03.2017
21:41:34
так, минутку, проверяю
insert into xx (geom) values(ST_GeomFromText('POLYGON((-1.2 1.4,-1.16 -0.4,0.9 -0.47,0.86 1.41,-1.2 1.4),(-0.32 0.75,-0.30 0.24,0.30 0.22,0.28 0.84,-0.32 0.75),(-0.96 1.14,-0.94 0.70,-0.57 0.73,-0.61 1.17,-0.96 1.14))'));
select ST_GeometryType(geom) from xx where id = 3;
= ST_Polygon

Darafei
01.03.2017
21:48:12
а чего это ты постгис взял?
прячь обратно
https://www.postgresql.org/docs/9.6/static/datatype-geometric.html
мы про нативные

Алексей
01.03.2017
21:48:51
Млин, вот что значит пропустил половину разговора
а в чем прикол? зачем дублировать постгис?
Соответственно никакой поддержки проекций, я правильно понимаю?

Google

Darafei
01.03.2017
21:52:14
смотри внимательно, в ссылке есть намёк: https://www.postgresql.org/docs/7.1/static/datatype-geometric.html

Алексей
01.03.2017
21:55:47
в сад. не понимаю намеков.
два раза перечитал. намека не нашел. и 9.6, и 7.1

Darafei
01.03.2017
22:04:18
первый публичный постгис вышел позже релиза 7.1

Алексей
01.03.2017
22:05:47
Ну я этого не мог знать, я тогда плотно на оракле сидел

Darafei
01.03.2017
22:07:43
доброй ночи.

Nikolay добряш
01.03.2017
23:09:40
йо привет всем
есть кто не спящий?
//customer 1 customer 2 marker table1
//customer 1 customer 2 marker table2
//select *,count (sorted) from (select *,substr(marker,2) as sorted from table1 union select *,substr(marker,2) as sorted from table2) group by sorted having count(sorted)>0
вообщем такая задачка, есть посути талица созданная юнионом из двух, нужно как то в запросе устроить дополнительную проверку уже найденным дубликатам
даже не знаю куда копать(
тоесть находится пара одинаковых записей по маркерам, и нужно их между собой сравнить и в идеале потом ещё раз сравнить)
как это сделать?

Алексей
01.03.2017
23:18:03
и все это в одном запросе?

Nikolay добряш
01.03.2017
23:19:06
ну желательно да
можно через виртуал тейблы конечно
но тогда надо для каждой пары или нескольких дубликатов их создавать

Denis
02.03.2017
09:04:42
Чому last_value & first_value ведут себя так по разному, там разный RANGE в OVER. Как вы думаете сильно крамольно использовать first_value два раза, только один с инвертированным порядоком, чтоб эмулировать last_value

Dmitry
02.03.2017
09:10:00
в psql-консоли можно как-то \dt | grep foo?

raksita
02.03.2017
09:16:42

Dmitry
02.03.2017
09:18:23
а, чёрт. :) Точно, спасибо.

Google

Alexander
02.03.2017
09:20:06
а как соединить две команды в psql:
\timing on и \set AUTOCOMMIT off?
чтобы выполнялись одной строкой

Darafei
02.03.2017
09:20:31
а в .psqlrc прописать не катит?

Alexander
02.03.2017
09:21:37
не всегда так удобно.
нужно что-то типа:
\timing on | set AUTOCOMMIT off

Darafei
02.03.2017
09:22:50
\i config.sql

Alexander
02.03.2017
10:28:22
Просто перечисляем мета команды друг за другом (как если бы мы их писали отдельно в новой строке) отделяя пробелом:
===================================
postgres=# \timing on \set AUTOCOMMIT off \echo :AUTOCOMMIT \set AUTOCOMMIT on \echo :AUTOCOMMIT
Секундомер включён.
off
on
postgres=#
===================================

Pavel
02.03.2017
14:34:59
@zilder А может pg_pathman быть причиной остановки сервера? ибо вижу в логе
2017-03-02 17:27:49 MSK [23044-1] postgres@postgres ОШИБКА: pg_pathman's Pl/PgSQL frontend is incompatible with its shared library
И за тем сразу
2017-03-02 17:27:50 MSK [23007-2] СООБЩЕНИЕ: получен запрос на "вежливое" выключение
2017-03-02 17:27:50 MSK [23012-2] СООБЩЕНИЕ: процесс запуска автоочистки завершается
2017-03-02 17:27:50 MSK [23009-1] СООБЩЕНИЕ: выключение
2017-03-02 17:27:50 MSK [23007-3] СООБЩЕНИЕ: система БД выключена

Dmitry
02.03.2017
14:36:27

Admin
ERROR: S client not available

Pavel
02.03.2017
14:36:52

Dmitry
02.03.2017
14:37:17

Айтуар
02.03.2017
14:37:20
"вежливое" выключение - ?

Pavel
02.03.2017
14:37:41
Было 9.6.1, стало 9.6.2

lemi
02.03.2017
14:47:07
а pg_pathman не собирали заново может он тоже ошибки накидает в процессе сборки

Pavel
02.03.2017
14:48:40
Дык, не могу. Я его установил себе через CREATE EXTENSION в сессии, а теперь даже сессия не стартует. Выключается

Андрей
02.03.2017
14:49:32
бррр
вот же написано у Вас: pg_pathman's Pl/PgSQL frontend is incompatible with its shared library
pg_pathman не соответствует шаредной либе
или первое осталось старое
после обновления

Google

Андрей
02.03.2017
14:50:21
или второе

dmitriy
02.03.2017
14:50:23
попробуйте в конфиге отключить pg_pathman, что-то типа pg_pathman.enable = off и стартануть
потом ALTER EXTENSION pg_pathman UPDATE и дальше обратно энаблите его

Pavel
02.03.2017
14:50:47

dmitriy
02.03.2017
14:51:12
но все равно это вряд ли из-за него стопается база

Pavel
02.03.2017
14:51:33
Отключил
shared_preload_libraries = 'pg_pathman'
и стартануло

lemi
02.03.2017
14:54:35
вот нехорошая фраза
Important: Don't forget to set the PG_CONFIG variable in case you want to test pg_pathman on a custom build of PostgreSQL. Read more here.

Pavel
02.03.2017
15:26:32
Итого:
1. Оставляем в конфиге shared_preload_libraries = 'pg_pathman'
2. Добавляем в конфиг pg_pathman.enable = off
3. Рестартим сервер
4. Запускаем сессию
5. Делаем postgres=# ALTER EXTENSION pg_pathman UPDATE;
6. Делаем в конфиге pg_pathman.enable = on

dmitriy
02.03.2017
15:30:03
еще учтите, что между п.3 и п.6, если вы под нагрузкой, данные будут литься в родительскую таблицу, и вам надо будет сделать partition_table_concurrently(...) после enable

Pavel
02.03.2017
15:30:23

dmitriy
02.03.2017
15:32:33
и если хотите, чтобы все это время, пока они будут раскидываться, чтобы они были видны, то нужно перед всей этой штукой сделать set_enable_parent(..., true) (говорим искать в родительской тоже) и set_enable_parent(..., false) после всего этого. Это если у вас выключен поиск в родительской

Pavel
02.03.2017
15:33:01

Darafei
02.03.2017
18:02:52
интересно, почему postgres почти не представлен вконтакте?

Evgeniy
02.03.2017
18:17:40
да я порой удивляюсь почему он вообще представлен где-то
потом нарываюсь на мускуль и вспоминую

Dmitrii
02.03.2017
18:21:08

Eugene
02.03.2017
18:58:41
мб кто-нить юзает постгрес под докером. как правильно делать дамп бд?
щас юзаю pg_dump, а когда нужно применять дамп, то сношу папку с данными бд и юзаю pg_restore
так же использую расширение постгис и получается, что есть данные\схемы от этого расширения. можно точечно делать дамп таблиц именно своих таблиц и данных? сомневаюсь только в том, что колонки с типом geometry\geography правильно сохранятся, ибо инфа о них хранится как раз в определённой таблице постгиса
пока дамп весит 10 метров, но боюсь, что будут проблемы, когда он будет весить под десятками гигабайт

Sergey
02.03.2017
19:20:08
pg_basebackup
но это будет не дамп а бекап.