@pgsql

Страница 197 из 1062
blkmrkt
16.12.2016
18:32:28
там внешний медленный хард на 8ТБ подключен, вот думаю может создать на нем новую бд с такой же структурой, и скриптом SELECT * FROM table OFFSET 0 LIMIT 20000; перенести все что получится в нее?

Петр
16.12.2016
18:33:15
это будет медленно, но можно попробовать в несколько потоков

blkmrkt
16.12.2016
18:33:50
это будет медленно, но можно попробовать в несколько потоков
не, там segfault на некоторых записях из других таблиц, наверное все-таки лучше в 1 поток и ждать если постгре крашится

уже и так скоро месяц сервер оффлайн, не страшно ?

Google
Петр
16.12.2016
18:35:15
а этот запрос у тебя не падает?

blkmrkt
16.12.2016
18:37:04
CREATE TABLESPACE slowdisk '/backups/pgdata'; CREATE DATABASE vwbackup TABLESPACE slowdisk; вот так вот наверное

Петр
16.12.2016
18:37:19
просто если это у тебя упадет, то при следующем запуске ты можешь снова те же самые записи вытащить, LIMIT возвращает непредсказуемые подмножества

Петр
16.12.2016
18:39:30
давай, попробуй, к этому времени этим образом вытащил бы уже наверное)

только на битых страницах нужно будет еще вытащить все, что можно

blkmrkt
16.12.2016
18:40:11
только на битых страницах нужно будет еще вытащить все, что можно
не, не обязательно. накатаю на хаскеле сейчас утилиту, положу на гитхаб, может кому пригодится

Петр
16.12.2016
18:43:31
все равно лимит + офсет возвращает непредсказуемые подмножества

blkmrkt
16.12.2016
18:44:09
все равно лимит + офсет возвращает непредсказуемые подмножества
ну это так в документации наверное написано, мы то знаем что они идут по ctid снизу вверх, да?

Петр
16.12.2016
18:45:17
врать не буду, не знаю каким образом он там идет

надо в исходники смотреть

Google
Sergey
16.12.2016
18:49:23
Вакумом прошелся - ctid слетают, как я понял

blkmrkt
16.12.2016
18:49:47
напишу об этом в README

Петр
16.12.2016
18:51:50
.

Sergey
16.12.2016
18:53:00
они просто меняются
Я это и имел в виду. Вопрос остается ли последовательность такой же

blkmrkt
16.12.2016
18:55:07
Я это и имел в виду. Вопрос остается ли последовательность такой же
скорее всего нет нет, тк насколько я понимаю, полный вакум переносит пейджи с конца в пустые места в начале файла таблицы, освобождая место с конца

у меня наверное поэтому в первом файле таблицы и оказались битые туплы, тк сервер начал полный вакум когда ос повисла

Аггей
16.12.2016
19:00:31
Полный вакуум исходные файлы же не трогает

Он создает рядом файл в котороый копирует только занятые места

blkmrkt
16.12.2016
19:01:20
Полный вакуум исходные файлы же не трогает
аа, он новый базовый файл создает и его куски вроде 16443.1?

точно, отсюда и требование чтоб в фс было место для копии всех данных сразу

lemi
16.12.2016
19:22:54
тогда можно через alter table сделать тоже самое копирование только с exclusive lock

lemi
16.12.2016
19:23:38
create table s (id int); alter table s alter column id int;

та же самая таблица при alter Только перезаписанная аккуратно с заполнение page по установленному тарифу

vacumm full еще и индексы чистит

Аггей
16.12.2016
19:32:19
Поэтому как раз maintaince_work_mem влияет на скорость вакуума

Петр
16.12.2016
19:42:59
Google
lemi
16.12.2016
20:18:39
alter это версия vacuum без вакума индексов

53r63rn4r
16.12.2016
22:01:50
Ночи чат

Как можно оптимизировать селект в постгре?

Darafei
16.12.2016
22:04:47
медитации помогают

хорошая музыка

Akzhan
16.12.2016
23:13:12
explain помогает, изредка

ну и vacuum analyze

Darafei
16.12.2016
23:13:58
иногда помогает explain analyze. если запроса в принципе получается дождаться.

53r63rn4r
16.12.2016
23:22:26
Спасибо, не знал, уже читаю, то что надо

Akzhan
16.12.2016
23:44:01
ну и в копилку - работать с postgres удобно через pgcli

Pavel
17.12.2016
10:52:13
О!

Не знал что есть такое

Pavel
17.12.2016
10:52:22
Спасибо

Anton
17.12.2016
12:36:08
Всем привет! Ни кто не знает насколько реально триггер написать в постгресе, который кодировку входных данных менять будет?

Anton
17.12.2016
12:52:15
У меня нет возможности менять приложение, могу ковырять только базу

Айтуар
17.12.2016
12:56:17
Anton
17.12.2016
12:57:31
Я бы с радостью =)

Darafei
17.12.2016
14:42:55
ковыряю тут осмовский osmosis

он написан на java, и не умеет коннектиться к постгресу по локальному сокету

Google
Darafei
17.12.2016
14:43:48
в трекере у него есть ишью про это, но там написано (и по интернету в целом), что постгресовый jdbc драйвер не умеет локальный сокет

куда про это можно написать, чтобы помогло? :)

Konstantin
17.12.2016
14:45:52
вообще jvm из коробки не умеет unixsocketы

Darafei
17.12.2016
14:47:12
но какой-то путь должен существовать? :)

ну, то есть, гугление показывает, что по гитхабу есть имплементации юникссокетов на java

Roman
17.12.2016
14:59:30
Roman
17.12.2016
15:00:02
Хотя, af_unix во много раз лучше tcp loopback

Admin
ERROR: S client not available

Darafei
17.12.2016
15:00:36
ну вот отсюда и вопрос

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

я просто не могу найти никакого ишью-трекера или контакта, куда про это можно написать :)

Марк ☢
17.12.2016
15:41:04
вообще jvm из коробки не умеет unixsocketы
Реально ? Я прост не умею в джаву

Или это про постгрес ?

Yergali
17.12.2016
15:52:28
Всем привет

Konstantin
17.12.2016
16:05:06
как правильно выше заметили, потому что непортабельно

Roman
17.12.2016
16:07:53
как правильно выше заметили, потому что непортабельно
К сожалению, это на 50% было сарказмом

Konstantin
17.12.2016
16:13:52
К сожалению, это на 50% было сарказмом
а есть другие причины? я просто сам не джавист

Darafei
17.12.2016
18:13:23
а есть способ заставить xmlelement писать "Каменная горка" вместо "Каменная Горка"?

Google
lemi
17.12.2016
19:05:37
заставить кого ?

postgres

Darafei
17.12.2016
19:05:51
да

gis=> select xmlelement(name tag, xmlattributes('name' as k, 'Каменная горка' as v)); xmlelement —---------------------------------------------------------------------------------------------------------------- <tag k="name" v="&#x41A;&#x430;&#x43C;&#x435;&#x43D;&#x43D;&#x430;&#x44F; &#x433;&#x43E;&#x440;&#x43A;&#x430;"/> (1 row)

хочется, соответственно, <tag k="name" v="Каменная горка"/>

lemi
17.12.2016
19:09:35
http://www.sql.ru/forum/1004323/kak-izbavitsya-ot-xml-escape

Darafei
17.12.2016
19:09:51
это тред 13 года

lemi
17.12.2016
19:09:57
хотя это вполне номальный вывод с точки зрения спецификации xml

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

Darafei
17.12.2016
19:10:33
да, но у меня есть референсная имплементация :)

и вывод не сходится

соответственно, если он продолжит несходиться, придётся делать куда больше телодвижений по доказыванию того, что они идентичны, но не совпадают

lemi
17.12.2016
19:12:03
по идее нужно (но не обязательно) перевести в ascii если символы не ascii

owasp сильно рекомендует делать это для xml документов

Darafei
17.12.2016
19:13:16
ты себе не можешь представить, сколько скриптов в этом мире завязаны на то, что osm api 0.6 отбивает теги \n и минимально эскейпит энтити :)

lemi
17.12.2016
19:17:46
ну это не только в osm api проблема

я как писал в мэйлинг лист мне ответитли что типа реализация парсера должна понимать entity characters а если не понимает то меняйте реализацию

это тоже проблема например для подписанных soap сообщений в бинарном виде код разный, а символный одинаковый

HASH начинает не сходится

вот чувак функцию под себя написал http://stackoverflow.com/questions/14961992/postgresql-replace-html-entities-function/14985946#14985946

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