
many-faced
25.10.2018
13:32:49

Yaroslav
25.10.2018
13:34:48

many-faced
25.10.2018
13:35:11

Terminator
25.10.2018
13:37:37
@arxxxangel будет жить. Поприветствуем!

Google

Yaroslav
25.10.2018
13:38:28
Нет, проблемы с эксепшенами от дедлоков.
Эээ... что? Какие от них могут проблемы? Ну повторите транзакцию N раз, и всё.
Просто на всякий случай (если Вы вдруг не знаете): DEADLOCK — нормальная ситуация, "кинуть" его в любой момент может любая СУБД (когда ей "захочется"), и приложения обязаны их обрабатывать.
Т.е., если корректность работы приложения нарушается от присутствия DEADLOCKs — в нём допущена (грубая) ошибка работы с транзакциями.

many-faced
25.10.2018
13:39:50

Yaroslav
25.10.2018
13:42:09

many-faced
25.10.2018
13:43:00
ну, вот и буду либо сортировать видимо.

Makkusu
25.10.2018
13:45:39

Yaroslav
25.10.2018
13:45:48
ну, вот и буду либо сортировать видимо.
Причём тут "сортировать"? Deadlock handling (т.е. повторы транзакций) обязан быть в приложении.
А сортировать / блокировать — это deadlock avoidance (необязателен).

many-faced
25.10.2018
13:47:05

Yaroslav
25.10.2018
13:50:28
сортировать это proactive problem solving ?
Не solving, а avoidance. Т.е. избегание.
В любой нетривиальной схеме и нагрузке Вы от них никуда не денетесь.
Поэтому, пока не мешают... какая разница?
Впрочем, если "сортировка" применяется заранее и ничего не стоит, это ещё лучше, естественно. ;)

many-faced
25.10.2018
13:52:32

Yaroslav
25.10.2018
13:55:35

Terminator
25.10.2018
14:10:02
Sergey N будет жить. Поприветствуем!

Viktor
25.10.2018
14:17:31
Всем привет! Есть postgres. Настроена асинхронная репликация. Есть партицированная по дате таблица. Делаю запрос к ридонли реплике, и получаю ошибку что данные уже кто-то изменил на мастере, хотя изменений в старых таблицах нет. Куда смотреть?

Andrey
25.10.2018
14:20:01

Google

Viktor
25.10.2018
14:21:54

Terminator
25.10.2018
14:22:14
@winged_pegasus будет жить. Поприветствуем!
@BonartLeo будет жить. Поприветствуем!
@abespalov будет жить. Поприветствуем!

Bonart
25.10.2018
14:24:43
Друзья,
Столкнулись с проблемой - постгря, обкурившись, использует hash join для двух больших таблиц
Подсказками не решается - EF Core не умеет их генерировать в своих запросах.
Что можно сделать? Индексы все есть, при недельных выборках план запроса использует нормальные Nested Loops для больших таблиц и хеш для маленьких. Но месячная выборка почему-то генерит план с полным чтением большой таблицы и hash join.
Чем тут можно помочь? Вес рандомного чтения страниц понижали, памяти для кеша добавляли - результат тот же

Павел
25.10.2018
14:26:41
Сохраняю clob в postgresql а в базе вижу 7 значное число. Что за фигня?

Terminator
25.10.2018
14:28:05
@yourmommy1488 будет жить. Поприветствуем!

Yaroslav
25.10.2018
14:30:49

Terminator
25.10.2018
14:31:05
@steelden будет жить. Поприветствуем!

Yaroslav
25.10.2018
14:31:57

Bonart
25.10.2018
14:35:07
Делает неправильно - недельная выборка 10 секунд, месячная - 216, гребет в процессе целиком (seq scan) таблицу с 600 тысячами записей.

Yaroslav
25.10.2018
14:38:57

Viktor
25.10.2018
14:41:32

many-faced
25.10.2018
14:42:36

Yaroslav
25.10.2018
14:43:52

Bonart
25.10.2018
14:45:30

Viktor
25.10.2018
14:45:58

Yaroslav
25.10.2018
14:49:55

Google

Bonart
25.10.2018
14:51:08
Так, пока отбой - вижу нереально тормозящую выборку из самой тяжелой таблицы еще до join

Viktor
25.10.2018
15:03:46

Sab0
25.10.2018
16:39:56
а кто в курсе что делать если не получается внести в таблицу текст с символом типа ® ?
в мускуле это решалось сменой коллейшна и типа соединения

Makkusu
25.10.2018
16:59:18
а что если там емодзи?

Sab0
25.10.2018
16:59:42
эмодзи тож не считывает
какой коллейшн?))

Makkusu
25.10.2018
17:00:28

Sab0
25.10.2018
17:00:46
®
этот значок
ProgrammingError: (psycopg2.ProgrammingError) syntax error at or near "s®"
LINE 1: ...on, price, picture, vendor) VALUES ('Ботинки Levi's®', 'men'...

Makkusu
25.10.2018
17:02:53

Sab0
25.10.2018
17:03:06
это slqalchemy

Makkusu
25.10.2018
17:03:16
экранировать попробуй

Sab0
25.10.2018
17:04:12
там только всякие спец-символы типа кавычек

Google

Makkusu
25.10.2018
17:04:28

Fike
25.10.2018
17:06:00

Sab0
25.10.2018
17:06:15
точно
сори

Fike
25.10.2018
17:06:22
???

Sab0
25.10.2018
17:06:22
я тупанул

Makkusu
25.10.2018
17:06:22
)))

Sab0
25.10.2018
17:06:27
не в ту сторону подумал

Makkusu
25.10.2018
17:06:28
вот и я о чем
думаю что не так

Sab0
25.10.2018
17:06:37
да я не понял просто даже))
спасибо!

Fike
25.10.2018
17:06:56
вы там напрямую строки конкатенируете?
http://initd.org/psycopg/articles/2012/10/01/prepared-statements-psycopg/
есть еще вроде parametrized statements, скорее всего дял одноразовых запросов еще лучше подойдет

Sab0
25.10.2018
17:10:56

Fike
25.10.2018
17:11:22
вы потом бобби тейблса словите

Makkusu
25.10.2018
17:12:39

Fike
25.10.2018
17:13:07
насколько понимаю, то же самое, только не prepared

Google

Fike
25.10.2018
17:13:14
но я не питонист и вообще просто прогуглил

Makkusu
25.10.2018
17:13:20
Кстате нормально ли использовать часто тип String (из sequelize) для маленьких строк до 30 символов?