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

Тем временем, может кто помнит, но я скидывал сюда непонятную

ошибку в 4 строчках кода, где откуда-то брался list index out of range
В общем, я намошнил отдельный деплой логов в прод и теперь я узнал где ошибка. Так вот, ошибка возникает вот в этой строчке
index = bisect(self.metadata_cache, metadata_id) - 1
Вопрос следующий — может у кого есть какие-то предположения? Или мб ктото сам с этим сталкивался? В гугле глухо как-то, а перед погружением в исходники хочется попробовать путь попроще)

23 ответов

33 просмотра

Гугл, первый ответ

Илья-Власов Автор вопроса
Джифорсович as a service
Гугл, первый ответ

И что же написано в первом ответе в гугле?

Ну если длина списка не уменьшается, ошибке неоткуда взяться

Илья-Власов Автор вопроса
🌿UnorderedSequence🌿 Shindov 🍀
screenshot Ну если длина списка не уменьшается, ошибке неотку...

У меня другая информация по исходникам, более того, этот код содержит ошибку

Илья-Власов Автор вопроса
🌿UnorderedSequence🌿 Shindov 🍀
Какую ошибку?

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

Илья-Власов Автор вопроса
🌿UnorderedSequence🌿 Shindov 🍀
Какую ошибку?

10 лет назад вроде пофиксили эту тему https://bugs.python.org/issue13496

Илья Власов
Насколько я понимаю, там внутри код на сях и при б...

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

Илья-Власов Автор вопроса
🌿UnorderedSequence🌿 Shindov 🍀
Вряд ли размер списка может быть достаточным, чтоб...

2.5кк рпс на сервис, 10-15к рпс на инстанс. Может-может)

Илья Власов
2.5кк рпс на сервис, 10-15к рпс на инстанс. Может-...

Ну там Py_ssize_t везде используется для индексов. Если последовательность с такой длиной существует, то, раз длина поместилась, с учётом того фикса переполнение должно быть невозможно получить. Да и даже без того фикса, я думаю со списком невозможно было бы добиться такого эффекта (в той issue вроде тоже об этом написано). Чтобы добиться неправильного поведения, они использовали искусственные последовательности, которые на самом деле ничего не хранят и потому могли достичь нужного размера

Илья-Власов Автор вопроса
🌿UnorderedSequence🌿 Shindov 🍀
Ну там Py_ssize_t везде используется для индексов....

Traceback (most recent call last): File "/opt/app/metadata_downloader/memory_cache/metadata_cache.py", line 82, in get_metadata_from_cache index = bisect(self.metadata_cache, metadata_id) - 1 IndexError: list index out of range Вот весь трейсбэк. Мне тоже кажется, что это херня все про переполнение, но ничего лучше я не придумал

Илья Власов
Traceback (most recent call last): File "/opt/ap...

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

Илья-Власов Автор вопроса
🌿UnorderedSequence🌿 Shindov 🍀
У питона есть прикол, что если после запуска файл ...

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

Илья Власов
Traceback (most recent call last): File "/opt/ap...

В общем мне кажется что скорее всего или размер списка уменьшился, или файл был изменён после запуска и в ошибке указана не та строка

Илья-Власов Автор вопроса
🌿UnorderedSequence🌿 Shindov 🍀
В общем мне кажется что скорее всего или размер сп...

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

Илья-Власов Автор вопроса
Tishka17
слоты

__slots__ которые?

Илья-Власов Автор вопроса
Tishka17
да

Так, это интересно, прошу, продолжай

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
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
Карта сайта