Обновить
0
Sergey Akbarov@akbarovs

Пользователь

3
Подписчики
Отправить сообщение
В Java интерфейс может содержать только константы (final variables), а не переменные. Так что никто поведение и данные не мешает.
Вы правы — я глупость написал.
Либо я чего-то не понимаю, но что мешает взять любой протокол, который использует сериализацию/десериализацию, посмотреть какие классы ходят и сделать override default constructor/readObject и там написать что надо. Только нужно чуть больше работы, чем просто взять exploit для commons-collections
А зачем вообще иметь различные вьюхи в зависимости от языка? Используйте resource bundles и показывайте лейблы и сообщения без того, чтобы клонировать разметку
Насколько я помню, вот это все:

config.addDataSourceProperty("cachePrepStmts", "true");
config.addDataSourceProperty("prepStmtCacheSize", "250");
config.addDataSourceProperty("prepStmtCacheSqlLimit", "2048");
config.addDataSourceProperty("useServerPrepStmts", "true");


для MySQL драйвера, а не для Postgres
Я так понял план неправильно считает постгре, и то как Вы написали-они поправили это дело. Mysql строит не весь план в случае prepared statements. Так что то, что preparedstatements медленные в постгре можно отнести к недальновидности разработчиков постгряшного оптимизатора.

Что касается юзкейсов — Вы почему то опустили селекты, которые в данном случае намного интереснее. Если у Вас селект в полстраницы — его разбирать уже не так быстро.
Ну у вас получается разобраный запрос во внутреннем представлении и план на основе синтаксиса запроса. Уже будет выигрыш. А если запрос большой? Интерпретация его каждый раз тоже небесплатна
Хм, очень странно такое поведение Postgres-а. Ересь какая-то. Просто очень плотно работал с oracle, для которого неиспользование PreparedStatement-ов приводит к очень грустным результатам. Может просто не надо делать оптимизацию на уровне компилирования запроса, а уж если очень хочется — строить общий план, а потом корректировать на основании полученных данных. По крайней мере мы избегаем компиляции запроса, что для сложных запросов даст припрост.
Я неверно выразился — под планом выполнения имел ввиду разобраное SQL выражения. Это еще не план. Но уже и не исходный SQL. Т.е. в случае server-side prepared statement второй раз не придется заниматься разбором sql-а, так как внутреннее представление уже есть
Откуда такая информация? Как по вашему происходит выполнения запроса в СУБД?
Запросы будут бегать быстрее, ведь не надо будет каждый раз строить план выполнения запроса
Ясно, получается, что в случае MySQL и MySQLdb мы не сможем использовать server-side prepared statements
А разве django не использует preparedStements для запросов?

Информация

В рейтинге
Не участвует
Откуда
Santa Clara, California, США
Дата рождения
Зарегистрирован
Активность