
X
17.07.2018
09:14:35
кто-нибудь может пояснить?

Yaroslav
17.07.2018
09:16:06

X
17.07.2018
09:16:45
т.е это все происходит в общей памяти и после изменения впечатываются в таблицу?

Yaroslav
17.07.2018
09:16:50

Google

Yaroslav
17.07.2018
09:17:07

X
17.07.2018
09:17:41
блин

Yaroslav
17.07.2018
09:19:31

X
17.07.2018
09:19:37
ок. спасибо. пошел разбираться дальше
так хорошо, какое поведение будет если у меня в транзакции изменение двух строй
строк, я беру делаю изменения, и хоп транзакция валиться, ок, но на одну строку изменения внесены
значит в базе есть строка которая не валидна, мне эти данные не нужны мне либо две строки изменнных либо ничего
как он разрулит это?
если он вписал, но не думает откатывать

Виктор
17.07.2018
09:23:34
Ну блин в конце флаг будет в статусе "не завершено" для транзакции и данные при выборке не будут учитываться.

X
17.07.2018
09:24:26
это я тоже прочитал, как они будут не учитываться, когда я изменил строку?

Yaroslav
17.07.2018
09:24:39

Виктор
17.07.2018
09:24:44
По сути то обновление или вставка, это фактически вставка строки, с номером транзакции

Google

Виктор
17.07.2018
09:25:39
То есть хранится история каждой ячейки, за некоторый период

X
17.07.2018
09:25:59
теперь глава отчистки встала на свое место

Виктор
17.07.2018
09:26:39

X
17.07.2018
09:27:03

Arthur
17.07.2018
09:27:47
Еще посмотрите колонки xmin, xmax, ctid:
select xmin, xmax, ctid from test;

X
17.07.2018
09:33:09

Evgeniy
17.07.2018
11:23:46

Vasiliy
17.07.2018
11:24:21

Gennady
17.07.2018
12:12:56
Удалось воспроизвести багу с pre-wraparound и временной таблицей.
Идея в том, что если мы очень долго держим temp-таблицу, то гарантированно получим pre-wraparound
В одном из коннектов создал временную таблицу tmp и просто держал коннект открытым. В других коннектах недёргивал txid_current() до того, как получил pre-wraparound. После рестарта осталась перманентно таблица pg_temp_3.tmp;
Выполнение vacuum freese pg_temp_3.tmp; даже в single-user режиме не решает проблему.

Yaroslav
17.07.2018
12:15:01
> . После рестарта осталась перманентно таблица pg_temp_3.tmp;
Кроме вот этой части, пожалуй. Это какая версия PostgreSQL?

Gennady
17.07.2018
12:16:28
PostgreSQL 10.3 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-11), 64-bit
Решает проблему удаление таблицы в single-user mode и последующий
vacuumdb -F

Гаврилов
17.07.2018
12:18:30
Добрый день. У меня есть text поле в таблице с индексом pg_trgm. Раньше все было нормально, недавно появилась ошибка index row requires 19664 bytes, maximum size is 8191. Как можно снять этот лимит? гугл не помогает

alix
17.07.2018
12:18:33
привет чат
https://eng.uber.com/mysql-migration/
а эту траблу фиксят вообще
?
в новых версиях

Google

alix
17.07.2018
12:19:05
write amplification
или это вообще не проблема а убере не правы

Yaroslav
17.07.2018
12:19:36

Robert
17.07.2018
12:20:01
Это не проблема, для тех задач, для которых это не критично.

alix
17.07.2018
12:21:20

Yaroslav
17.07.2018
12:23:15
а эту траблу фиксят вообще
Это особенность архитектуры, я думаю. У альтернативной-то тоже есть свои недостатки (только в статье о них, как мне помнится, "забыли").

alix
17.07.2018
12:23:47
мне просто интересно это как то оптимизировали (или планируют) или это норма

Yaroslav
17.07.2018
12:28:49

Robert
17.07.2018
12:29:22

Yaroslav
17.07.2018
12:29:27

Гаврилов
17.07.2018
12:29:33

Sergey
17.07.2018
12:29:48

Anton
17.07.2018
12:35:22
Автообновление в материализованных представлениях ведь так и не сделано в качестве фичи?

Yaroslav
17.07.2018
12:35:41


Oleg
17.07.2018
12:55:12
re all. кто-то бакулу с постгресом совокуплял? есть документация

Sergey
17.07.2018
13:00:52

Yaroslav
17.07.2018
13:02:54
GIN
Я вот сейчас подумал... как-то это странновато, всё же (откуда там такие index rows?).
Попробуйте спросить в #postgresql (IRC), или в mailing lists (или подождите другого ответа здесь).

Google

Гаврилов
17.07.2018
13:07:48
у меня текст на 38к символов)

Yaroslav
17.07.2018
13:12:39
у меня текст на 38к символов)
Ну так, по идее, индексируются-то триграммы (хотя я в структуре никогда не копался).
Спросите в #postgresql, там сейчас как раз могут быть люди, которые сходу ответят. ;)

Gennady
17.07.2018
13:14:41

Yaroslav
17.07.2018
13:15:28

Admin
ERROR: S client not available

Grigory
17.07.2018
13:36:45

Yaroslav
17.07.2018
13:38:52

Grigory
17.07.2018
13:39:53
а там она не осиротела
он с живой временной таблицей честно доехал до врапараунда

Yaroslav
17.07.2018
13:40:55

Grigory
17.07.2018
13:42:24
если мы с живой временной таблицей доедем до врапараунда, то постгрес встанет в RO, транзакции больше нельзя выписывать, а значит нельзя будет и дропнуть эту таблицу при завершении бэкенда
и она станет orphan после этого
но сделать с ней уже ничего нельзя будет
фиговый дизайн временных таблиц strikes again

Yaroslav
17.07.2018
13:44:46
и она станет orphan после этого
Ну так вроде пишут, что был рестарт...
> но сделать с ней уже ничего нельзя будет
Почему? Разве суть этих патчей не была в том, чтобы чистить их при старте (но я подробно не читал)?

Grigory
17.07.2018
13:45:25
эти патчи полагаются на автовакуум, а он не работает в сингл моде

Yaroslav
17.07.2018
13:46:34

Grigory
17.07.2018
13:49:06
выносить из каталога их надо

Google

Yaroslav
17.07.2018
13:51:32

Grigory
17.07.2018
14:40:56
https://www.postgresql.org/message-id/0c7c2f84-74f5-2cd9-767e-9b2566065d71%40postgrespro.ru

Gennady
17.07.2018
14:47:23
спасибо,
может добавить туда честный путь по воспроизведению (без gdb) ?

Grigory
17.07.2018
14:48:00
честно крутить счетчик? долго жеж

Gennady
17.07.2018
14:48:15
всего 3.5 часа заняло

Sergey
17.07.2018
17:58:58

Grigory
17.07.2018
18:07:18

Claudio
17.07.2018
19:29:34
hi there
i have a question for you, I have 3 external databases and a pivot central database. I will use dblink library for send query at the pivot. In next time the pivot query another database and insert a row. My problem is : how i can identify the client and exclude it from the next query? tnx

Robert
17.07.2018
19:49:55
Hi
There are several approaches. No idea, what will fit your needs.
If you have timestamp, and there is no case "later rows arrival into the staging database" you could use date ranges.
How often you collect data to the central database?

Davra
17.07.2018
22:24:49
Доброй ночи, подскажите пожалуйста! Работаю с postgresql 9.6х. При отправке такого запроса:
SELECT table1.* FROM table1, jsonb_each_text(table1.json_column) LEFT JOIN table2 ON table1.t2_id = table2.id LIMIT 4
posgres дает ошибку:
PSQLException ОШИБКА: в элементе предложения FROM неверная ссылка на таблицу "table1"
Подсказка: Таблица "table1" присутствует в запросе, но сослаться на неё из этой части запроса нельзя.
Позиция: 84 org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse (QueryExecutorImpl.java:2433)
изначально всё работало без jsonb_each_text(table1.json_column), но сейчас он мне нужен, но из-за него он выдает ошибку неверная ссылка на table1