172 похожих чатов

30 ответов

24 просмотра

SELECT uukey FROM t WHERE id = 1 выдает например xxx UPDATE t SET uukey = yyy WHERE id =1 Тот же селект выдаст ххх, но если вырубить индекс скан, то yyy

Окей, чо тогда это?

P
Окей, чо тогда это?

https://t.me/pgsql/474564 Снимите логи сессии, что ли.

Yaroslav Schekin
https://t.me/pgsql/474564 Снимите логи сессии, что...

Если бы можно было, я бы это сделал)

P
Если бы можно было, я бы это сделал)

Если у Вас нет возможности применять никакие отладочные средства... может быть, этой проблемой должны заниматься не Вы (а тот, кто не даёт Вам такой возможности, например ;) )?

Yaroslav Schekin
Если у Вас нет возможности применять никакие отлад...

Сяп за токсичность. 5к строк заливать сюда смысла ноль. Проблему я описал. Если у вас идей, кроме как потешать своё эго нет, то спасибо вам! Других данных дать физически не могу. База локальная. Нет у нее доступа к сети. Никакого. Вообще. Версия пг 9.6

P
SELECT uukey FROM t WHERE id = 1 выдает например x...

Похоже на битый индекс Попробуйте сделать reindex таблице

Аггей Лоскутников
Похоже на битый индекс Попробуйте сделать reindex ...

О как! Индексы у людей выше не ломаются! А тут оказывается ломаются

Аггей Лоскутников
Похоже на битый индекс Попробуйте сделать reindex ...

Реиндекс в транзакции не сделать, все происходит в одной транзакции

P
О как! Индексы у людей выше не ломаются! А тут ока...

Слова "ломаются" и "сломанный" имеют катастрофически разный смысл.

P
Сяп за токсичность. 5к строк заливать сюда смысла ...

> 5к строк заливать сюда смысла ноль. 5k строк чего? Это там в одной транзакции столько statements? > Если у вас идей, кроме как потешать своё эго нет Причём тут моё эго?! Я Вам написал, что Вам нужно делать — но нет, вместо того все должны гадать, что там у вас происходит. > Никакого. Вообще. Тем не менее, хоть что-то (как-то) Вам показать (или рассказать) придётся, если не хотите, чтобы это превратилось в состязание "чей хрустальный шар лучше". ;) > Версия пг 9.6 Очень давно пора выбросить обновить, кстати.

Роман Жарков
Слова "ломаются" и "сломанный" имеют катастрофичес...

Ну он становится сломанным после апдейта, до этих пор все окей и этого не заметно.

Аггей Лоскутников
Сделайте не в транзакции )

Незя, лог то в транзакции нужно записать

Yaroslav Schekin
> 5к строк заливать сюда смысла ноль. 5k строк ч...

Сейчас дядю в интернете почитаю в телеграмме и побежим всей тимой обновлять пг! Секунду!

P
Сейчас дядю в интернете почитаю в телеграмме и поб...

Щас ты побежишь в другой чат. Это очень серьёзное предупреждение.

P
Незя, лог то в транзакции нужно записать

Кажется вы смешиваете теплое с мягким. Индекс - если он битый - после перестроения будет целым и работать четко. И при следующем вашем апдейте в транзакции - уже все будет работать хорошо.

Это официальная позиция сообщества PostgreSQL, для информации (это давно не поддерживаемая версия PostgreSQL). Если Вы с этой проблемой придёте в официальные mailing lists, то там скажут ровно то же самое (а проблему и разбирать не будут, почти наверняка).

Ярослав как -то вчера был абсолютно несогласен с вами :)

Yaroslav Schekin
Это официальная позиция сообщества PostgreSQL, для...

Я с этим не спорю, просто для чего было эти смешные картинки и язвить ну не ясно было. Я понимаю что я не дал кода и не дал аналайз и инфы с грошь дал, но это тоже не просто так. Старый легаси код тоже кто то поддерживает и этот кто то - я. Поэтому извиняюсь если задел, но я бился с этим ооочень долго,чтобы дойти до этой причины неправильных логов. И я ее описал. Если у кого то был похожий опыт, то буду рад его узнать. Если никто не сталкивался, то ладно.

Владимир Наумов
Ярослав как -то вчера был абсолютно несогласен с в...

Ну так по умолчанию считается, что с "железом" всё нормально, когда подобные вопросы задают... по крайней мере, об этом думают, обычно, в последнюю очередь. ;) Так что тут я согласен с @aggeisoft (хотя (судя по v9.6 в production), там может быть всякое).

P
Я с этим не спорю, просто для чего было эти смешны...

Вы не описали почти ничего, извините (ни транзакций, ни statements, ни обработки ошибок в коде, ни конкретных результатов запросов). > Если никто не сталкивался, то ладно. Я сталкивался с похожим буквально сотни раз, и почти каждый раз причина была именно в том, что код написан некорректно.

Владимир Наумов
Ярослав как -то вчера был абсолютно несогласен с в...

Имел очень интересную проблему с год назад. Правда версия pg была 12.x (но последовательно обновляемая с версии 9.5 еще). Так вот - был битый уникальный индекс - который не был помечен как invalid и СУБД считала его вполне хорошим и рабочим - только при перестроении выяснилось - что есть дубли по полям в индексе. Дублей было немного, но пришлось сделать кучу работы - чтобы их убрать (без потери логической целостности данных). Проверить можно было так: Делаешь запрос который попадает в индекс - выдает 100 записей. Добавляешь псевдоусловие в фильтр (чтобы не сканировало по индексу) или выключаешь indexscan - выдает 102 записи

Аггей Лоскутников
Имел очень интересную проблему с год назад. Правд...

вероятно, был сбой носителя возможно были и др битые объекты

Аггей Лоскутников
Имел очень интересную проблему с год назад. Правд...

Идея с фильтром тоже пришла, буду ковырять. Спасибо!

Петр Егоров
вероятно, был сбой носителя возможно были и др бит...

Возможно - у БД была долгая история с кучей разных ЦОДов, аварий и прочего. Кроме того - все эти последовательные обновления с версии на версию - тоже могли сказаться. В момент воспроизведения проблемы - с железом все было впорядке

А тут "пахнет" тем, что кто-то работает с data_checksums = off. ;) Хотя, на самом деле, это мог быть и bug, но менее вероятно, мне кажется.

Yaroslav Schekin
А тут "пахнет" тем, что кто-то работает с data_che...

И вы абсолютно правы. Кластер изначально был без чексумм - и при обновлении через pg_upgrade их нельзя было включить. Только при обновлении через pg_dump

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта