@pgsql

Страница 772 из 1062
S
20.04.2018
19:36:26
$ seq 100 | pv -L 2 | psql $ sleep 5; killall pv;
часть вывода seq закомитится

нда

Evgeniy
20.04.2018
19:37:22
часть вывода seq закомитится
ты его в автокоммите на строку что ли запускаешь

Darafei
20.04.2018
19:37:59
часть вывода seq закомитится
где тут написан copy?

Google
S
20.04.2018
19:38:07
соответственно закоммитить ничего не может
почему тогда часть seq коммитится?

Evgeniy
20.04.2018
19:38:41
почему тогда часть seq коммитится?
ты показать-то можешь?

Darafei
20.04.2018
19:39:11
куда коммитится? какая операция вообще делает из последовательности чисел нечто пригодное для коммита?

S
20.04.2018
19:39:19
справа допиши

create table d(i int); $ seq 100 | pv -L 2 | psql -c 'copy d from stdin' $ sleep 5; killall pv;

видео записать?

Evgeniy
20.04.2018
19:40:35
конечно, можно будет багрепорт оформить

S
20.04.2018
19:40:45
на что?

Evgeniy
20.04.2018
19:41:01
create table d(i int); $ seq 100 | pv -L 2 | psql -c 'copy d from stdin' $ sleep 5; killall pv;
только тут ты кажется говоришь копируй каждую строку

и коммить

Darafei
20.04.2018
19:41:08
нет

Evgeniy
20.04.2018
19:41:31
ну нет так нет

Google
Evgeniy
20.04.2018
19:41:54
значит не должно быть половины

Darafei
20.04.2018
19:42:13
поведение не самое ожиданное, да

мне кажется, что это не должно повториться, если копи написать в том же потоке, что и данные, а не снаружи

S
20.04.2018
19:42:59
да, ты прав

тогда норм будет

наверное %)

Darafei
20.04.2018
19:43:48
там он будет искать терминатор-точку

или нет?

Евгений
20.04.2018
19:44:28
https://t.me/pgsql

S
20.04.2018
19:44:33
угу, вот я забыл может ли он EOF вместо точки принять или обязательно точка

если обязательно точка то норм

create table d(i int); $ ( echo 'copy d from stdin;'; seq 100; ) | pv -L 2 | psql -f- $ sleep 5; killall pv;

Evgeniy
20.04.2018
19:48:19
а сделай psql <

Darafei
20.04.2018
19:50:22
COPY 6 Time: 2816,838 ms (00:02,817)

Evgeniy
20.04.2018
19:52:41
S
20.04.2018
20:03:40
похоже точка не обязательна

Evgeniy
20.04.2018
20:29:08
так какой вывод-то?

кому проспаться, кому про транзакции читать, кому багрепорты писать?

S
20.04.2018
20:39:31
это штатное поведение :-)

Evgeniy
20.04.2018
21:06:26
Google
Evgeniy
20.04.2018
21:06:37
вывод какой

Petr
20.04.2018
21:08:58
господа, а если pg_dump дать на вход нематериализованную вьюху, которая будет ограничена некоторым WHERE — какое поведение ожидается?)

Petr
20.04.2018
21:18:48
вас понял, спасибо!

Petr
20.04.2018
21:19:47
?

Evgeniy
20.04.2018
21:39:40
загадка копи так и не будет разгадана

даже Дарафей не ответил

Darafei
20.04.2018
21:40:56
а загадка в чём?

Evgeniy
20.04.2018
21:54:30
ой всё

Mikhail
21.04.2018
08:00:20
ой всё
Что вам в скриптах не понятно? Вы сами может воспроизвести скрипты?

Общение на форумах предполагает совместное участие в добычи полезных артефактов.

Айтуар
21.04.2018
08:42:16
Это на волне fsync пошло? Кому это вообще нужно?

Nikita
21.04.2018
09:16:57
Давайте подытожим Если в процессе выполнения команды psql -c "copy table to stdout" "postgresql://.../db1" | psql -c "copy table from stdin" "postgresql://.../db2" пайп оборвётся, в целевую базу прилетит ошибка и она откатит эту транзакцию, так?

Darafei
21.04.2018
09:20:47
как мы проверили, нет

такой пайп небезопасен

для безопасности надо добавить как минимум обёртку в begin/commit со стороны отправителя, чтобы commit не пришёл и сделался роллбек

Nikita
21.04.2018
09:30:46
т.е. вся надежда на idle_in_transaction_session_timeout?

а если он не установлен, как-то руками можно проверить, что пайп сломался?

Darafei
21.04.2018
09:42:06
т.е. вся надежда на idle_in_transaction_session_timeout?
нет, psql получит eof и умрёт, решив, что хватит

Google
Shaz
21.04.2018
18:56:25
Ребят, есть смысл задавать вопрос про постгрес применительно к 1с? Или сразу пошлете?

Arthur
21.04.2018
19:00:36
Shaz
21.04.2018
19:03:06
Попытаться можно ) А еще есть чат https://t.me/PostgreSQL_1C_Linux
Ситуация такая, взята сборка от постгрес про. Виннй уже есть типы mchar и mvarchar. Однако при вызове pg_dump в логи прилетает огромное количество ошибок на отсутствие этих типов.

olzhas
21.04.2018
19:16:57
Привет всем! У меня есть вопрос по gist индекс. Он слишком большой, поэтому я разместил его тут http://www.sql.ru/forum/1291190/gist-i-btree-v-odnom-zaprose

Ответ можете писать как сюда так и туда.

Yaroslav
21.04.2018
19:48:20
Ответ можете писать как сюда так и туда.
Вы его прямо как-то очень "удачно" описали. ;) Где план вот этого, например: "у меня стори задача посика ближайших соседей, и gist индекс прекрасно с этим справляется. select * from path p where ST_DWithin(ST_GeomFromText('SRID=4326;POINT(72.181037902832 50.8136558532715)'),p.from_geo,1000); "?

Dmitry
21.04.2018
23:31:09
а нет ли удобного способа указать набор полей, например в CREATE TRIGGER ... FOR EACH ROW WHEN (OLD.* IS DISTINCT FROM NEW.*)? Хотелось бы тут указать набор полей без простыни OR'ов

Nikita
21.04.2018
23:38:04
конкатенация?

Dmitry
21.04.2018
23:40:14
чего с чем?

Nikita
21.04.2018
23:43:16
всех полей вместе

будет один OR

Dmitry
21.04.2018
23:46:14
Это во-первых, недёшево, во-вторых, вряд-ли вообще возможно потому что поля разных типов включая всякие массивы, в-третьих NULLы, и в червёртых, никак не упростит выражение

Slach
22.04.2018
03:26:41
а кто нибудь в чатеге использует pglogical в production?

что? прямо вот вообще никто не использует?

Darafei
22.04.2018
06:39:06
что? прямо вот вообще никто не использует?
превосходное умение задавать вопросы в шесть утра воскресенья

Google
Slach
22.04.2018
06:44:40
превосходное умение задавать вопросы в шесть утра воскресенья
а если все таки ответить по существу? ;) нет не используете?

Гаврилов
22.04.2018
06:44:56
люди спят

отвечать некому)

в понедельник после обеда надо спрашивать

Darafei
22.04.2018
06:46:22
спрашивать можно когда угодно, вот на ответ надеяться и правда можно в рабочую неделю

а пока я могу рассказать тебе про свежий креш в постгисе, если ты ещё не видел его в https://t.me/postgis

Slach
22.04.2018
06:47:34
ок ;) подождем

Andrey
22.04.2018
06:56:57
Slach
22.04.2018
06:59:10
Когда-то использовал.
ок =) а в какой версии? и еще такой момент вот я хочу связку master-standby + pgbouncer проапгрейдить "на живую" с 9.5 до 10.3 я правильно понимаю что тут только через pglogical и pg_ddl_deploy надо двигаться и других "обходных" путей нет? потому что "так вообще никто не делает, апгрейд постгреса это удел консультантов за 100500 буказоидов в час?"

Slach
22.04.2018
07:02:32
9.6. Для апгрейда не использовал. Как вариант я бы попробовал для начала на тестовом стенде такой кейс воспроизвести.
да я как раз тестовый стенд и делаю... сталкиваюсь тут со всяким, вот пытаюсь разобраться это я первопроходец или таки есть кто-то кто кроме меня копал

Dima
22.04.2018
07:11:08
Стоит использовать https://postgrespro.ru/ Вместо официального?

Берял
22.04.2018
07:15:22
Yaroslav
22.04.2018
09:28:15
Там используется индекс по гистограмма полю
План покажите. Интересны же cost-ы и оценки, а не то, какой индекс там используется.

Это во-первых, недёшево, во-вторых, вряд-ли вообще возможно потому что поля разных типов включая всякие массивы, в-третьих NULLы, и в червёртых, никак не упростит выражение
Почитайте про/используйте ROW CONSTRUCTORS: https://www.postgresql.org/docs/current/static/sql-expressions.html#SQL-SYNTAX-ROW-CONSTRUCTORS и https://www.postgresql.org/docs/current/static/functions-comparisons.html#ROW-WISE-COMPARISON

Petr
22.04.2018
15:09:57
господа, делается некоторый UPDATE по строкам с ID на отрезке A..B., делается он через psql, просто подцепив .sql файл с данным запросом вопрос: можно ли (по меньшей мере, с какой-то погрешностью) определить, на какой строке сейчас "работает" данный процесс, при условии, что идёт он в один поток? также следует отметить, что никаких измениний в данный процесс сделать уже нельзя (добавить трек-секвенции и т.д.) разумеется, я не собираюсь отслеживать прогресс постоянно, я хочу посмотреть туда скажем раз в 12 часов

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