|
Регистрация | Файлы | Правила | Альбомы | Дневники | Справка | Пользователи | Календарь | Поиск | Сообщения за день | Все разделы прочитаны |
Принятые патчи Иногда выкладывают патчи, которые потом в итоге все-таки принимают в ядро.
Повод для гордости. |
|
Опции темы | Поиск в этой теме | Опции просмотра |
05.03.2011, 11:52 | #1 |
MaNGOS Dev
Регистрация: 22.06.2010
Сообщений: 78
Сказал(а) спасибо: 24
Поблагодарили 71 раз(а) в 25 сообщениях
|
[11284]Prepared statements for MySQL [part 1]
Всем трямс
Вобщем, как и обещалось некоторое время назад, поддержка для prepared statements в мангосе таки появится Для тех, кто незнает, что сие такое и зачем оно вообще надо, могут погуглить - многа букаф писать на выходных я не осилю )) На данном этапе реализована поддержка для INSERT+DELETE+UPDATE запросов. SELECTы будут реализованы позднее, дабы не коммитить патчи монструозного размера. Важный момент: нативные prepared statements реализованы только для MySQL. Пользователи PostgreSQL будут пользоваться эмуляцией этой функциональности, которая будет сводится к отправке обычных строковых запросов к БД. На данный момент переписаны все запросы, которые используются во время сохранения игрока, e.g. вызова функции Player::SaveToDB(). WARNING: СДЕЛАЙТЕ БЕКАП БАЗЫ ДО НАЧАЛА ТЕСТОВ!!! Ссылка на тему на офф форуме: http://getmangos.com/community/post/132464/ репозиторий: prepared_statements update #1: добавлена поддержка PostgreSQL. Финальная версия патча. update #2: ODBC-похожий АПИ для передачи параметров процедурам. update #3: правка ошибок компиляции под *nix update #4: правка синтаксиса некоторых запросов. update #5: переписан код всвязи с найденными критическими нюансами инициализации статических переменных функций в многопоточной среде. Спасибо Vinolentus. Ожидайте незначительного увеличения потребления CPU из-за постоянного поиска в реесте нужных хранимых процедур по строке запроса. update #6: переписан код, теперь мы корректно используем статические локальные переменные для хранения информации по процедурам. Должно вернуть потребление ЦП к норме. Последний раз редактировалось Ambal; 19.03.2011 в 22:48. |
Опции темы | Поиск в этой теме |
Опции просмотра | |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
[11284] Implement prepared statements for INSERT+DELETE+UPDATE SQL requests. Should improve player s | newsbot | CMaNGOS Commits | 0 | 25.03.2011 22:20 |
[11061] Bring 'autocommit' mode for MySQL back. This MySQL feature operates in so frustrating way so | newsbot | CMaNGOS Commits | 0 | 21.01.2011 23:52 |
ошибка mysql | lovepsone | Флудильня | 8 | 14.12.2010 22:13 |
Оптимизация Mysql {my.cnf} | lina | Прочая документация | 10 | 20.06.2010 00:12 |