@pgsql

Страница 259 из 1062
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
А в pg получается нет возможности вычислить ту же площадь без костылей вида area(ring1)-area(ring2)...- area(ringN)?
Поясните пожалуйста, видимо тоже недопонял, какая проблема вычисления площади полигона с дыркой? Или проблема в другом?

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
в psql-консоли можно как-то \dt | grep foo?
используя параметр -c вполне: psql -c '\dt' | grep foo

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] СООБЩЕНИЕ: система БД выключена

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

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

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

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

Dmitrii
02.03.2017
18:21:08
интересно, почему postgres почти не представлен вконтакте?
Так они поди уже давно все переписали на k=>v схему

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

Sergey
02.03.2017
19:20:08
pg_basebackup

но это будет не дамп а бекап.

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