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

А кстати вопрос к знатокам оду орм получается когда мы

делает search мы выполняем один простой запрос или сразу тянем все связи а это почти всегда кроме many2one подзапросы или оду lazy в момент обращения через точку делает запрос?

9 ответов

29 просмотров

Раньше было запросом отдельным. Версии с 9 внедрили кеши когда перешли на рекордсеты. Все последующие версии они оптимизируют кеши и уменьшают количество запросом в БЗ. С 14-15 версии прям большая революция была.

Артем- Автор вопроса
Anton Goroshkin
Раньше было запросом отдельным. Версии с 9 внедрил...

я не понимаю как у них кеши работают данные же меняются постоянно там кеши на секунды чтоли

Артем
я не понимаю как у них кеши работают данные же мен...

Когда ты читаешь одно поле через точку - читается весь рекордсет и когда ты потом лезешь через точку к другому полю - берется из кеша. А что касается валидации кеша - то тут так себе целостность соблюдается. Если делать финансовую систему, то ни о какой гарантии в многопользовательском режиме у тебя нет. Работает правило - последний пишуший всегда прав и переписывает поверх. Вся надежда только на транзакции в рамках одной операции. А в рамках цепочки у тебя будет кирдык. В серьезных системах поэтому и ввели понятие «проводка документа» чтобы цепочку бизнесовых операций рассматривать, как единое целое

Anton Goroshkin
Когда ты читаешь одно поле через точку - читается ...

Ну есть нюансы. Там декораторы для работы с валидацией кешей

Артем- Автор вопроса
Anton Goroshkin
Ну есть нюансы. Там декораторы для работы с валида...

ну для работы через точку какое нибудь метод встроенный переопределилил типа dict или что то такое не смотрел внутренности?я просто свою орм написал щас дот нотация частично поддерживается но без бесконечных подзапросов

Артем
ну для работы через точку какое нибудь метод встро...

Вообще в ормах есть два самых распространенных подхода: active record и data mapper.

Артем
ну для работы через точку какое нибудь метод встро...

А про точки - это же ООП. Тем более питон :)

Артем- Автор вопроса
Anton Goroshkin
А про точки - это же ООП. Тем более питон :)

да-да я и говорю ```__dict__``` какой нибудь

Артем
да-да я и говорю ```__dict__``` какой нибудь

Да не. Не обязательно так грубо :)

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

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

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